/*------------------------------------------------------------------

IMPORTANT: This file is generated by Sass. Do not modify this file directly.

-------------------------------------------------------------------- */
/* Sizes */
/* Fonts */
* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-size: 16px;
  color: #333333;
  background-color: #f9f9f9;
}

@media only screen and (min-width: 768px) {
  body:not(.redesign-2022-header) {
    padding-top: 135px;
  }
}

@media only screen and (max-width: 767px) {
  body:not(.redesign-2022-header) {
    padding-top: 60px;
  }
}

a {
  color: #2D72F7;
  text-decoration: none;
}

a:visited {
  color: #ff6631;
}

a:hover {
  color: #0000ee;
  text-decoration: underline;
}

dl dt {
  float: left;
  clear: both;
  width: 50%;
}

dl dd {
  float: right;
  width: 50%;
  margin: 0;
  text-align: right;
}

hr {
  height: 4px;
  margin: 32px 0;
  border: 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
}

img {
  max-width: 100%;
  width: auto;
  height: auto;
}

figure {
  margin: 0;
  padding: 0;
}

.clearfix, .layout, .wrapper, form .item,
.form .item, article.get-quote .get-quote-container, article.get-quote .get-quote-success, article.partner-form .partner-form-container, article.partner-form .partner-form-success {
  *zoom: 1;
}

.clearfix:before, .layout:before, .wrapper:before, form .item:before,
.form .item:before, article.get-quote .get-quote-container:before, article.get-quote .get-quote-success:before, article.partner-form .partner-form-container:before, article.partner-form .partner-form-success:before, .clearfix:after, .layout:after, .wrapper:after, form .item:after,
.form .item:after, article.get-quote .get-quote-container:after, article.get-quote .get-quote-success:after, article.partner-form .partner-form-container:after, article.partner-form .partner-form-success:after {
  display: table;
  content: '';
  line-height: 0;
}

.clearfix:after, .layout:after, .wrapper:after, form .item:after,
.form .item:after, article.get-quote .get-quote-container:after, article.get-quote .get-quote-success:after, article.partner-form .partner-form-container:after, article.partner-form .partner-form-success:after {
  clear: both;
}

.hidden {
  display: none;
}

.action {
  float: right;
}

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

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

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

[hidden] {
  display: none;
}

.pac-icon {
  display: none !important;
}

.pac-item {
  padding-left: 10px;
}

.grecaptcha-badge {
  width: auto !important;
  height: auto !important;
  margin-top: 30px;
  box-shadow: none !important;
}

.grecaptcha-badge iframe {
  width: auto !important;
}

.grecaptcha-logo {
  width: 255px;
  margin: 0 auto;
}

@media screen and (min-width: 568px) {
  .xs\:block {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .sm\:block {
    display: block;
  }
}

@media screen and (min-width: 1024px) {
  .md\:block {
    display: block;
  }
}

@media screen and (min-width: 1280px) {
  .lg\:block {
    display: block;
  }
}

@media screen and (min-width: 1360px) {
  .xl\:block {
    display: block;
  }
}

@media screen and (min-width: 568px) {
  .xs\:flex {
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 768px) {
  .sm\:flex {
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1024px) {
  .md\:flex {
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1280px) {
  .lg\:flex {
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1360px) {
  .xl\:flex {
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 568px) {
  .xs\:hidden {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .sm\:hidden {
    display: none;
  }
}

@media screen and (min-width: 1024px) {
  .md\:hidden {
    display: none;
  }
}

@media screen and (min-width: 1280px) {
  .lg\:hidden {
    display: none;
  }
}

@media screen and (min-width: 1360px) {
  .xl\:hidden {
    display: none;
  }
}

/*
 * Grid System
 *
 * This is a grid system based off of floats and CSS calc() to calculate percentage-based widths and margins. This allows the grid columns to be flexible to a responsive viewport, with fixed gaps between each column. Grids can also be nested and still maintain the consistent gap for consistent layout.
 *
 * Setup:
 *
 * Set up the grid variables to specify the total number of columns, as well as the gap size between each column.
 *
 * Usage:
 * 
 * @include grid-columns($num, $max_columns, $column_gap)
 *     This is used to set a column and specify how many columns it should span
 * 
 *   Options
 *     $num [required] -> Total number of columns to span
 *     $max_columns [optional] -> Defaults to the global variable, but can be set if you want to establish a new grid context
 *     $column_gap [optional] -> Defaults to the global variable, but can be set if you want to establish a new column gap
 *
 * @include grid-width($num, $max_columns, $column_gap)
 *     This is used to return a width based on the number of columns specified
 *
 *   Options
 *     $num [required] -> Total number of columns to span
 *     $max_columns [optional] -> Defaults to the global variable, but can be set if you want to establish a new grid context
 *     $column_gap [optional] -> Defaults to the global variable, but can be set if you want to establish a new column gap
 *
 * /

/* --- Grid variables ---*/
.row:after {
  content: "";
  display: table;
  clear: both;
}

/*
.col {
    @include col;
    margin-left: $column_gap !important;
    &:first-child {
        margin-left: 0 !important;
    }
}*/
/* Debug */
.grid-debug {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1360px;
  margin-left: -680px;
  pointer-events: none;
}

.grid-debug .col {
  width: calc((((100% - 220px) / 12) * 1) + 0px - .1px);
  box-sizing: border-box;
  float: left;
  margin-left: 20px !important;
  height: 100vh;
  background: rgba(255, 0, 0, 0.1);
}

.grid-debug .col:first-child {
  margin-left: 0 !important;
}

.flex-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -10px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.flex-grid > [class*="is-"] {
  padding: 0 10px;
  min-width: 0;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
}

.flex-grid > [class*="is-"]:last-child {
  margin-bottom: 0;
}

.flex-grid .is-full {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
}

.flex-grid .is-1\/2 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  max-width: 50%;
}

.flex-grid .is-1\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  max-width: 33.3333%;
}

.flex-grid .is-2\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 66.6666%;
      flex-basis: 66.6666%;
  max-width: 66.6666%;
}

.flex-grid .is-1\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  max-width: 25%;
}

.flex-grid .is-3\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%;
  max-width: 75%;
}

.flex-grid .is-1\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 16.66666%;
      flex-basis: 16.66666%;
  max-width: 16.66666%;
}

.flex-grid .is-5\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 83.3333%;
      flex-basis: 83.3333%;
  max-width: 83.3333%;
}

.flex-grid .is-1\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  max-width: 20%;
}

.flex-grid .is-2\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
  max-width: 40%;
}

.flex-grid .is-3\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
  max-width: 60%;
}

.flex-grid .is-4\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
  max-width: 80%;
}

@media screen and (min-width: 568px) {
  .flex-grid .xs\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .flex-grid .xs\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .flex-grid .xs\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .flex-grid .xs\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .flex-grid .xs\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .flex-grid .xs\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .flex-grid .xs\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .flex-grid .xs\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .flex-grid .xs\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .flex-grid .xs\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .flex-grid .xs\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .flex-grid .xs\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 768px) {
  .flex-grid .sm\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .flex-grid .sm\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .flex-grid .sm\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .flex-grid .sm\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .flex-grid .sm\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .flex-grid .sm\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .flex-grid .sm\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .flex-grid .sm\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .flex-grid .sm\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .flex-grid .sm\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .flex-grid .sm\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .flex-grid .sm\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1024px) {
  .flex-grid .md\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .flex-grid .md\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .flex-grid .md\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .flex-grid .md\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .flex-grid .md\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .flex-grid .md\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .flex-grid .md\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .flex-grid .md\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .flex-grid .md\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .flex-grid .md\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .flex-grid .md\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .flex-grid .md\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1280px) {
  .flex-grid .lg\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .flex-grid .lg\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .flex-grid .lg\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .flex-grid .lg\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .flex-grid .lg\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .flex-grid .lg\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .flex-grid .lg\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .flex-grid .lg\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .flex-grid .lg\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .flex-grid .lg\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .flex-grid .lg\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .flex-grid .lg\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1360px) {
  .flex-grid .xl\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .flex-grid .xl\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .flex-grid .xl\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .flex-grid .xl\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .flex-grid .xl\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .flex-grid .xl\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .flex-grid .xl\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .flex-grid .xl\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .flex-grid .xl\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .flex-grid .xl\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .flex-grid .xl\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .flex-grid .xl\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media only screen and (max-width: 1023px) {
  .flex-grid > [class*="is-"] {
    margin-bottom: 30px;
  }
}

.layout-columns {
  margin-top: 50px;
}

@media only screen and (min-width: 768px) {
  .layout-columns > section {
    width: calc((((100% - 605px) / 12) * 9) + 440px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 55px !important;
  }
  .layout-columns > section:first-child {
    margin-left: 0 !important;
  }
  .layout-columns > aside {
    width: calc((((100% - 605px) / 12) * 3) + 110px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 55px !important;
  }
  .layout-columns > aside:first-child {
    margin-left: 0 !important;
  }
}

.site-wrapper {
  max-width: 1930px;
  margin: 0 auto;
  background-color: #fff;
}

.site-wrapper.experience-editor .site-hader {
  position: relative;
  margin-top: -130px;
}

.wrapper {
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 20px;
}

.wrapper .wrapper,
.wrapper .wrapper-lg,
.wrapper .wrapper-md,
.wrapper .wrapper-sm {
  padding: 0;
}

@media only screen and (min-width: 768px) {
  .grid {
    display: table;
    width: 100%;
    border-spacing: 10px;
    margin: -10px;
  }
  .grid .col {
    display: table-cell;
    width: 50%;
    vertical-align: top;
  }
  .grid.three .col {
    width: 33.33%;
  }
  .grid.four .col {
    width: 25%;
  }
  .grid.border .col {
    border-left: 1px solid #cccccc;
    padding: 0 30px;
  }
  .grid.border .col:first-child {
    border-left: 0;
    padding-left: 0;
  }
  .grid.border .col:last-child {
    padding-right: 0;
  }
  .grid.bg .col {
    background: #f3f3f3;
    padding: 20px;
  }
}

.wrapper-lg, .wrapper-md, .wrapper-sm {
  padding: 0 20px;
}

@media only screen and (min-width: 1024px) {
  .wrapper-lg, .wrapper-md, .wrapper-sm {
    margin: 0 auto;
  }
}

.wrapper-lg .wrapper, .wrapper-md .wrapper, .wrapper-sm .wrapper {
  padding: 0;
}

@media only screen and (min-width: 1024px) {
  .wrapper-lg {
    max-width: 1280px;
  }
}

@media only screen and (min-width: 1024px) {
  .wrapper-md {
    max-width: 1024px;
  }
}

@media only screen and (min-width: 1024px) {
  .wrapper-sm {
    max-width: 768px;
  }
}

/* http://www.fontspring.com/blog/further-hardening-of-the-bulletproof-syntax */
html {
  font-family: acumin-pro, "Helvetica Neue", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

button,
input,
select,
textarea {
  font-family: acumin-pro, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 16px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: acumin-pro, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  margin: 10px 0;
  line-height: 1.25;
}

h1 {
  font-size: 48px;
  line-height: 1.15;
  letter-spacing: -0.04em;
}

h2 {
  font-size: 36px;
  line-height: 1.25;
}

h3 {
  font-size: 28px;
  line-height: 1.25;
}

h4 {
  font-size: 16px;
}

h5 {
  font-size: 16px;
}

h6 {
  font-size: 16px;
}

p {
  font-size: inherit;
  line-height: 1.5;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  h1 {
    font-size: 40px;
    line-height: 1.125em;
  }
  h2 {
    font-size: 32px;
    line-height: 1.25em;
  }
  h3 {
    font-size: 24px;
    line-height: 1.25em;
  }
  h4 {
    font-size: 21px;
    letter-spacing: 0;
  }
  h5 {
    font-size: 16px;
    letter-spacing: 0;
  }
  h6 {
    font-size: 16px;
    letter-spacing: 8px;
  }
  p {
    font-size: 16px;
    line-height: 1.375em;
  }
}

@media only screen and (max-width: 767px) {
  h1 {
    font-size: 32px;
    line-height: 1.25em;
  }
  h2 {
    font-size: 26px;
    line-height: 1.15384615em;
  }
  h3 {
    font-size: 22px;
    line-height: 1.13636364em;
  }
  h4 {
    font-size: 21px;
    letter-spacing: 0;
  }
  h5 {
    font-size: 16px;
    letter-spacing: 0;
  }
  h6 {
    font-size: 16px;
    letter-spacing: 8px;
  }
  p {
    line-height: 1.4;
  }
}

ul ul,
ul ol,
ol ul,
ol ol {
  margin: 0;
}

.text-2xs {
  font-size: 10px;
}

.text-xs {
  font-size: 12px;
}

.text-sm {
  font-size: 14px;
}

.text-base {
  font-size: 16px;
}

.text-md {
  font-size: 20px;
}

.text-lg {
  font-size: 24px;
}

.text-xl {
  font-size: 32px;
}

.text-2xl {
  font-size: 40px;
}

.text-3xl {
  font-size: 48px;
}

.text-4xl {
  font-size: 56px;
}

.text-5xl {
  font-size: 64px;
}

.text-6xl {
  font-size: 72px;
}

.text-7xl {
  font-size: 88px;
}

@media screen and (min-width: 568px) {
  .xs\:text-2xs {
    font-size: 10px;
  }
  .xs\:text-xs {
    font-size: 12px;
  }
  .xs\:text-sm {
    font-size: 14px;
  }
  .xs\:text-base {
    font-size: 16px;
  }
  .xs\:text-md {
    font-size: 20px;
  }
  .xs\:text-lg {
    font-size: 24px;
  }
  .xs\:text-xl {
    font-size: 32px;
  }
  .xs\:text-2xl {
    font-size: 40px;
  }
  .xs\:text-3xl {
    font-size: 48px;
  }
  .xs\:text-4xl {
    font-size: 56px;
  }
  .xs\:text-5xl {
    font-size: 64px;
  }
  .xs\:text-6xl {
    font-size: 72px;
  }
  .xs\:text-7xl {
    font-size: 88px;
  }
}

@media screen and (min-width: 768px) {
  .sm\:text-2xs {
    font-size: 10px;
  }
  .sm\:text-xs {
    font-size: 12px;
  }
  .sm\:text-sm {
    font-size: 14px;
  }
  .sm\:text-base {
    font-size: 16px;
  }
  .sm\:text-md {
    font-size: 20px;
  }
  .sm\:text-lg {
    font-size: 24px;
  }
  .sm\:text-xl {
    font-size: 32px;
  }
  .sm\:text-2xl {
    font-size: 40px;
  }
  .sm\:text-3xl {
    font-size: 48px;
  }
  .sm\:text-4xl {
    font-size: 56px;
  }
  .sm\:text-5xl {
    font-size: 64px;
  }
  .sm\:text-6xl {
    font-size: 72px;
  }
  .sm\:text-7xl {
    font-size: 88px;
  }
}

@media screen and (min-width: 1024px) {
  .md\:text-2xs {
    font-size: 10px;
  }
  .md\:text-xs {
    font-size: 12px;
  }
  .md\:text-sm {
    font-size: 14px;
  }
  .md\:text-base {
    font-size: 16px;
  }
  .md\:text-md {
    font-size: 20px;
  }
  .md\:text-lg {
    font-size: 24px;
  }
  .md\:text-xl {
    font-size: 32px;
  }
  .md\:text-2xl {
    font-size: 40px;
  }
  .md\:text-3xl {
    font-size: 48px;
  }
  .md\:text-4xl {
    font-size: 56px;
  }
  .md\:text-5xl {
    font-size: 64px;
  }
  .md\:text-6xl {
    font-size: 72px;
  }
  .md\:text-7xl {
    font-size: 88px;
  }
}

@media screen and (min-width: 1280px) {
  .lg\:text-2xs {
    font-size: 10px;
  }
  .lg\:text-xs {
    font-size: 12px;
  }
  .lg\:text-sm {
    font-size: 14px;
  }
  .lg\:text-base {
    font-size: 16px;
  }
  .lg\:text-md {
    font-size: 20px;
  }
  .lg\:text-lg {
    font-size: 24px;
  }
  .lg\:text-xl {
    font-size: 32px;
  }
  .lg\:text-2xl {
    font-size: 40px;
  }
  .lg\:text-3xl {
    font-size: 48px;
  }
  .lg\:text-4xl {
    font-size: 56px;
  }
  .lg\:text-5xl {
    font-size: 64px;
  }
  .lg\:text-6xl {
    font-size: 72px;
  }
  .lg\:text-7xl {
    font-size: 88px;
  }
}

@media screen and (min-width: 1360px) {
  .xl\:text-2xs {
    font-size: 10px;
  }
  .xl\:text-xs {
    font-size: 12px;
  }
  .xl\:text-sm {
    font-size: 14px;
  }
  .xl\:text-base {
    font-size: 16px;
  }
  .xl\:text-md {
    font-size: 20px;
  }
  .xl\:text-lg {
    font-size: 24px;
  }
  .xl\:text-xl {
    font-size: 32px;
  }
  .xl\:text-2xl {
    font-size: 40px;
  }
  .xl\:text-3xl {
    font-size: 48px;
  }
  .xl\:text-4xl {
    font-size: 56px;
  }
  .xl\:text-5xl {
    font-size: 64px;
  }
  .xl\:text-6xl {
    font-size: 72px;
  }
  .xl\:text-7xl {
    font-size: 88px;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}

table {
  width: 100%;
  border-collapse: collapse;
}

table th, table td {
  padding: 10px 0;
  border-bottom: 1px solid #DADADA;
}

table th {
  color: #e8825b;
  text-align: left;
}

table thead th {
  border-bottom: 2px solid #e8825b;
}

input[type="text"], input[type="password"], input[type="search"], input[type="number"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="email"], input[type="url"], input[type="tel"], input[type="color"],
textarea,
select {
  transition: border linear 0.2s, box-shadow linear 0.2s;
  display: inline-block;
  width: 250px;
  padding: 10px 15px;
  border: 1px solid #eaeaea;
  border-radius: 16px;
  background-color: #fff;
  vertical-align: middle;
  -webkit-appearance: none;
}

@media only screen and (max-width: 767px) {
  input[type="text"], input[type="password"], input[type="search"], input[type="number"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="email"], input[type="url"], input[type="tel"], input[type="color"],
  textarea,
  select {
    width: 100%;
  }
}

input[type="text"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="time"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="tel"]:focus, input[type="color"]:focus,
textarea:focus,
select:focus {
  border-color: #acacac;
  outline: none;
}

fieldset {
  border: none;
}

input[type='search'] {
  padding: 0 25px 0 5px;
}

textarea {
  width: 100%;
  height: 200px;
}

select {
  position: relative;
  padding-right: 50px;
  border-radius: 0;
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

.lt-ie10 select {
  padding: 0 0 0 5px;
  background: white;
}

button,
a.button {
  display: inline-block;
  height: auto;
  width: auto;
  padding: 15px 50px;
  border: 0;
  border-radius: 4px;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.16);
  color: #fff;
  font-family: acumin-pro-condensed, acumin-pro, 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  cursor: pointer;
}

button.secondary,
a.button.secondary {
  background: linear-gradient(10deg, #33ccff 0%, #a542ef 100%);
}

button.golden-hour,
a.button.golden-hour {
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
}

button.blue-hour,
a.button.blue-hour {
  background: linear-gradient(10deg, #333399 0%, #33ccff 100%);
}

button.aurora,
a.button.aurora {
  background: linear-gradient(10deg, #33ccff 0%, #a542ef 100%);
}

button.plen-air,
a.button.plen-air {
  background: linear-gradient(10deg, #04a5ff 0%, #6cffa9 100%);
}

button.green-shades,
a.button.green-shades {
  background: linear-gradient(10deg, #16481a 0%, #a5e226 100%);
}

button.stone-white,
a.button.stone-white {
  background: linear-gradient(201.18deg, #fff 49%, #b3b3b3 141%);
}

button:disabled,
a.button:disabled {
  opacity: 0.5;
}

[role='button'] {
  cursor: pointer;
}

.loadingSpinner {
  border: 4px solid #fff;
  border-top-color: rgba(0, 0, 0, 0);
  border-left-color: rgba(0, 0, 0, 0);
  position: absolute;
  width: 20px;
  height: 20px;
  margin-left: 10px;
  opacity: 1;
  border-radius: 50%;
  animation: loadingSpinner .7s infinite linear;
  -webkit-animation: loadingSpinner .7s infinite linear;
}

@keyframes loadingSpinner {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

form div.validationSummary,
.form div.validationSummary {
  margin-bottom: 10px;
  color: #be3438;
}

form div.validationSummary ul,
.form div.validationSummary ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

form .item,
.form .item {
  margin-bottom: 5px;
}

form .item > label,
.form .item > label {
  display: inline-block;
}

form .item > label span,
.form .item > label span {
  font-weight: normal;
}

form .item input,
.form .item input {
  vertical-align: baseline;
}

form .item > ul,
.form .item > ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

form .item.horizontal > label,
.form .item.horizontal > label {
  display: inline-block;
  margin-right: 5px;
}

form .item.fl-enabled,
.form .item.fl-enabled {
  position: relative;
}

form .item.fl-enabled > label,
form .item.fl-enabled .label,
.form .item.fl-enabled > label,
.form .item.fl-enabled .label {
  position: absolute;
  top: 20px;
  left: 1px;
  padding: 0 15px;
  color: #acacac;
  opacity: 0;
  font-size: 12px;
  line-height: 24px;
  z-index: 2;
}

form .item.fl-enabled input[type="text"], form .item.fl-enabled input[type="password"], form .item.fl-enabled input[type="search"], form .item.fl-enabled input[type="number"], form .item.fl-enabled input[type="datetime"], form .item.fl-enabled input[type="datetime-local"], form .item.fl-enabled input[type="date"], form .item.fl-enabled input[type="month"], form .item.fl-enabled input[type="time"], form .item.fl-enabled input[type="week"], form .item.fl-enabled input[type="email"], form .item.fl-enabled input[type="url"], form .item.fl-enabled input[type="tel"], form .item.fl-enabled input[type="color"],
form .item.fl-enabled textarea,
form .item.fl-enabled select,
.form .item.fl-enabled input[type="text"],
.form .item.fl-enabled input[type="password"],
.form .item.fl-enabled input[type="search"],
.form .item.fl-enabled input[type="number"],
.form .item.fl-enabled input[type="datetime"],
.form .item.fl-enabled input[type="datetime-local"],
.form .item.fl-enabled input[type="date"],
.form .item.fl-enabled input[type="month"],
.form .item.fl-enabled input[type="time"],
.form .item.fl-enabled input[type="week"],
.form .item.fl-enabled input[type="email"],
.form .item.fl-enabled input[type="url"],
.form .item.fl-enabled input[type="tel"],
.form .item.fl-enabled input[type="color"],
.form .item.fl-enabled textarea,
.form .item.fl-enabled select {
  padding-top: 17px;
  padding-bottom: 17px;
  margin-top: 5px;
}

form .item.fl-enabled.fl-active input[type="text"], form .item.fl-enabled.fl-active input[type="password"], form .item.fl-enabled.fl-active input[type="search"], form .item.fl-enabled.fl-active input[type="number"], form .item.fl-enabled.fl-active input[type="datetime"], form .item.fl-enabled.fl-active input[type="datetime-local"], form .item.fl-enabled.fl-active input[type="date"], form .item.fl-enabled.fl-active input[type="month"], form .item.fl-enabled.fl-active input[type="time"], form .item.fl-enabled.fl-active input[type="week"], form .item.fl-enabled.fl-active input[type="email"], form .item.fl-enabled.fl-active input[type="url"], form .item.fl-enabled.fl-active input[type="tel"], form .item.fl-enabled.fl-active input[type="color"],
form .item.fl-enabled.fl-active textarea,
form .item.fl-enabled.fl-active select,
.form .item.fl-enabled.fl-active input[type="text"],
.form .item.fl-enabled.fl-active input[type="password"],
.form .item.fl-enabled.fl-active input[type="search"],
.form .item.fl-enabled.fl-active input[type="number"],
.form .item.fl-enabled.fl-active input[type="datetime"],
.form .item.fl-enabled.fl-active input[type="datetime-local"],
.form .item.fl-enabled.fl-active input[type="date"],
.form .item.fl-enabled.fl-active input[type="month"],
.form .item.fl-enabled.fl-active input[type="time"],
.form .item.fl-enabled.fl-active input[type="week"],
.form .item.fl-enabled.fl-active input[type="email"],
.form .item.fl-enabled.fl-active input[type="url"],
.form .item.fl-enabled.fl-active input[type="tel"],
.form .item.fl-enabled.fl-active input[type="color"],
.form .item.fl-enabled.fl-active textarea,
.form .item.fl-enabled.fl-active select {
  padding-top: 24px;
  padding-bottom: 10px;
}

form .item.fl-enabled.fl-active > label,
form .item.fl-enabled.fl-active .label,
.form .item.fl-enabled.fl-active > label,
.form .item.fl-enabled.fl-active .label {
  top: 10px;
  opacity: 1;
}

form .item.fl-enabled.fl-animate input[type="text"], form .item.fl-enabled.fl-animate input[type="password"], form .item.fl-enabled.fl-animate input[type="search"], form .item.fl-enabled.fl-animate input[type="number"], form .item.fl-enabled.fl-animate input[type="datetime"], form .item.fl-enabled.fl-animate input[type="datetime-local"], form .item.fl-enabled.fl-animate input[type="date"], form .item.fl-enabled.fl-animate input[type="month"], form .item.fl-enabled.fl-animate input[type="time"], form .item.fl-enabled.fl-animate input[type="week"], form .item.fl-enabled.fl-animate input[type="email"], form .item.fl-enabled.fl-animate input[type="url"], form .item.fl-enabled.fl-animate input[type="tel"], form .item.fl-enabled.fl-animate input[type="color"],
form .item.fl-enabled.fl-animate textarea,
form .item.fl-enabled.fl-animate select,
form .item.fl-enabled.fl-animate > label,
form .item.fl-enabled.fl-animate .label,
.form .item.fl-enabled.fl-animate input[type="text"],
.form .item.fl-enabled.fl-animate input[type="password"],
.form .item.fl-enabled.fl-animate input[type="search"],
.form .item.fl-enabled.fl-animate input[type="number"],
.form .item.fl-enabled.fl-animate input[type="datetime"],
.form .item.fl-enabled.fl-animate input[type="datetime-local"],
.form .item.fl-enabled.fl-animate input[type="date"],
.form .item.fl-enabled.fl-animate input[type="month"],
.form .item.fl-enabled.fl-animate input[type="time"],
.form .item.fl-enabled.fl-animate input[type="week"],
.form .item.fl-enabled.fl-animate input[type="email"],
.form .item.fl-enabled.fl-animate input[type="url"],
.form .item.fl-enabled.fl-animate input[type="tel"],
.form .item.fl-enabled.fl-animate input[type="color"],
.form .item.fl-enabled.fl-animate textarea,
.form .item.fl-enabled.fl-animate select,
.form .item.fl-enabled.fl-animate > label,
.form .item.fl-enabled.fl-animate .label {
  transition: all 0.25s;
}

@media only screen and (min-width: 768px) {
  form .group,
  .form .group {
    display: -ms-flexbox;
    display: flex;
    margin: 0 -10px;
  }
  form .group .item,
  .form .group .item {
    margin: 10px;
    text-align: left;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-positive: 1;
        flex-grow: 1;
    -ms-flex-negative: 1;
        flex-shrink: 1;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
  }
  form .group .item input[type="text"], form .group .item input[type="password"], form .group .item input[type="search"], form .group .item input[type="number"], form .group .item input[type="datetime"], form .group .item input[type="datetime-local"], form .group .item input[type="date"], form .group .item input[type="month"], form .group .item input[type="time"], form .group .item input[type="week"], form .group .item input[type="email"], form .group .item input[type="url"], form .group .item input[type="tel"], form .group .item input[type="color"],
  form .group .item textarea,
  form .group .item select,
  .form .group .item input[type="text"],
  .form .group .item input[type="password"],
  .form .group .item input[type="search"],
  .form .group .item input[type="number"],
  .form .group .item input[type="datetime"],
  .form .group .item input[type="datetime-local"],
  .form .group .item input[type="date"],
  .form .group .item input[type="month"],
  .form .group .item input[type="time"],
  .form .group .item input[type="week"],
  .form .group .item input[type="email"],
  .form .group .item input[type="url"],
  .form .group .item input[type="tel"],
  .form .group .item input[type="color"],
  .form .group .item textarea,
  .form .group .item select {
    width: 100%;
  }
  form .group .item .group .item,
  .form .group .item .group .item {
    margin: 0 10px;
  }
}

form .buttons,
.form .buttons {
  text-align: center;
}

form .buttons button,
form .buttons .button,
.form .buttons button,
.form .buttons .button {
  margin: 10px 0 0 10px;
}

@media only screen and (max-width: 767px) {
  form .buttons button,
  form .buttons .button,
  .form .buttons button,
  .form .buttons .button {
    width: 100%;
    margin: 0 0 10px 0;
  }
}

form input[type='radio'],
form input[type='checkbox'],
.form input[type='radio'],
.form input[type='checkbox'] {
  margin-bottom: 0;
  margin-right: 5px;
}

form .radio-list,
form .checkbox-list,
.form .radio-list,
.form .checkbox-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

form .radio-list input,
form .radio-list label,
form .checkbox-list input,
form .checkbox-list label,
.form .radio-list input,
.form .radio-list label,
.form .checkbox-list input,
.form .checkbox-list label {
  display: inline-block;
}

form .radio-list.inline li,
form .checkbox-list.inline li,
.form .radio-list.inline li,
.form .checkbox-list.inline li {
  display: inline-block;
  margin-right: 10px;
}

form span.error,
.form span.error {
  text-align: left;
  float: left;
  color: #fff;
  font-size: 14px;
  margin-top: 4px;
  line-height: 1.25;
  background: #ef3039;
  padding: 12px;
  border-radius: 10px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
}

form span.error::before,
.form span.error::before {
  position: absolute;
  top: calc(50% - 14px);
  left: 40px;
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  pointer-events: none;
  border-color: rgba(45, 114, 247, 0);
  border-bottom-color: #ef3039;
  border-width: 14px;
}

.custom-checkbox {
  min-height: 30px;
  /*Outer box of the fake checkbox*/
  /*Checkmark of the fake checkbox*/
  /*Hide the checkmark by default*/
  /*Unhide on the checked state*/
  /*Adding focus styles on the outer-box of the fake checkbox*/
}

.custom-checkbox input[type='checkbox'],
.custom-checkbox input[type='radio'] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}

.custom-checkbox label {
  position: relative;
  display: inline-block;
  padding-left: 32px;
}

.custom-checkbox label::before,
.custom-checkbox label::after {
  position: absolute;
  content: '';
  display: inline-block;
}

.custom-checkbox label::before {
  height: 22px;
  width: 22px;
  left: 0px;
  top: 1px;
  border: 2px solid #ececec;
  background: #fff;
  border-radius: 2px;
}

.custom-checkbox input[type='radio'] + label::before {
  border-radius: 50%;
  top: 0;
}

.custom-checkbox input[type='checkbox'] + label::after {
  height: 5px;
  width: 13px;
  border-left: 3px solid #fff;
  border-bottom: 3px solid #fff;
  transform: rotate(-45deg);
  left: 5px;
  top: 8px;
}

.custom-checkbox input[type='radio'] + label::after {
  height: 16px;
  width: 16px;
  background: #2d72f7;
  border-radius: 50%;
  left: 5px;
  top: 5px;
}

.custom-checkbox input[type='checkbox'] + label::after,
.custom-checkbox input[type='radio'] + label::after {
  content: none;
}

.custom-checkbox input[type='checkbox']:checked + label::before {
  background: #2d72f7;
  border-color: #2d72f7;
}

.custom-checkbox input[type='radio']:checked + label::before {
  background: #fff;
  border-color: #fff;
}

.custom-checkbox input[type='checkbox']:checked + label::after,
.custom-checkbox input[type='radio']:checked + label::after {
  content: '';
}

.custom-checkbox input[type='checkbox']:focus + label::before,
.custom-checkbox input[type='radio']:focus + label::before {
  outline: #3b99fc auto 5px;
}

/* Custom dropdown */
.custom-dropdown {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 50px;
  background: linear-gradient(192.87deg, #FFFFFF 48.72%, #B3B3B3 141.8%);
  border: 1px solid #CFCFCF;
  box-shadow: 4px 1px 11px rgba(0, 0, 0, 0.13);
  max-width: 100%;
}

.custom-dropdown > select {
  background: transparent;
  box-sizing: border-box;
  font-weight: 600;
  color: #292929;
  font-size: inherit;
  padding: 30px 35px 12px;
  width: 350px;
  max-width: 100%;
  border: 0;
  margin: 0;
  text-indent: 0.01px;
  text-overflow: '';
  -webkit-appearance: button;
  /* hide default arrow in chrome OSX */
}

.custom-dropdown::before, .custom-dropdown::after {
  content: '';
  position: absolute;
  pointer-events: none;
}

.custom-dropdown::after {
  /*  Custom dropdown arrow */
  content: '';
  width: 18px;
  height: 11px;
  line-height: 1;
  right: 30px;
  top: 50%;
  margin-top: -5.5px;
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2218%22%20height%3D%2211%22%20viewBox%3D%220%200%2018%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M17%201L9%209L1%200.999999%22%20stroke%3D%22%232D72F7%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
}

.custom-dropdown select[disabled] {
  color: rgba(0, 0, 0, 0.3);
}

.custom-dropdown select[disabled]::after {
  color: rgba(0, 0, 0, 0.1);
}

.custom-dropdown::after {
  color: rgba(0, 0, 0, 0.4);
}

.custom-dropdown-label {
  font-size: 14px;
  position: absolute;
  z-index: 1;
  left: 35px;
  font-weight: normal;
  top: 12px;
  pointer-events: none;
}

.custom-dropdown-redirect .custom-dropdown-label {
  top: 50%;
  font-size: 16px;
  font-weight: 600;
  margin-top: -13px;
}

.custom-toggle {
  /* support Windows High Contrast Mode. Credit: Adrian Roselli https://twitter.com/aardrian/status/1021372139990134785 */
}

.custom-toggle__label {
  cursor: pointer;
}

.custom-toggle__radio {
  display: inline-block;
  width: 50%;
  height: 100%;
  opacity: 0;
  position: relative;
  z-index: 1;
  cursor: pointer;
}

.custom-toggle__radio:checked {
  width: 0;
  position: absolute;
}

.custom-toggle__radio + .custom-toggle__radio:checked ~ .custom-toggle__switcher {
  right: 0;
  left: calc(50% + 3px);
}

.custom-toggle__radio:not(:checked) {
  width: 100%;
  z-index: 3;
}

.custom-toggle__wrapper {
  font-size: var(--baseSize);
  display: inline-block;
  vertical-align: middle;
  width: 5em;
  height: 2.5em;
  border-radius: 2.5em;
  position: relative;
  margin: 0 5px;
}

.custom-toggle__switcher {
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  right: 100%;
  width: calc(50% - 6px);
  height: calc(100% - 6px);
  border-radius: 50%;
  transition: all 0.15s ease-in-out;
  z-index: 2;
  background-color: #575757;
}

.custom-toggle__background {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  border-radius: 2.5em;
  transition: all 0.2s ease-out;
  background-color: #fff;
}

@media screen and (-ms-high-contrast: active) {
  .custom-toggle__switcher {
    background-color: windowText;
  }
}

.contact-preferences-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
      align-items: baseline;
  padding: 25px 0 0;
}

.contact-preferences-container .contact-preferences-label {
  font-weight: 600;
}

.contact-preferences-container .checkbox-list {
  margin-left: 30px;
}

.contact-preferences-container .checkbox-list.contacts li {
  margin-right: 0;
}

.contact-preferences-container .checkbox-list .custom-checkbox label::before {
  height: 18px;
  width: 18px;
}

.contact-preferences-container .checkbox-list .custom-checkbox label {
  padding-right: 30px;
}

.contact-preferences-container .checkbox-list .custom-checkbox input[type='checkbox'] + label::after {
  left: 4px;
  top: 6px;
}

.contact-preferences-container .checkbox-list .form input[type='checkbox'] {
  margin-right: 0;
}

.aspect-ratio-square {
  padding-bottom: 100%;
}

.aspect-ratio-2\/1 {
  padding-bottom: 50%;
}

.aspect-ratio-3\/2 {
  padding-bottom: 66.6667%;
}

.aspect-ratio-4\/3 {
  padding-bottom: 75%;
}

.aspect-ratio-16\/9 {
  padding-bottom: 56.25%;
}

.aspect-ratio-21\/9 {
  padding-bottom: 42.86%;
}

@media screen and (min-width: 568px) {
  .xs\:aspect-ratio-square {
    padding-bottom: 100%;
  }
  .xs\:aspect-ratio-2\/1 {
    padding-bottom: 50%;
  }
  .xs\:aspect-ratio-3\/2 {
    padding-bottom: 66.6667%;
  }
  .xs\:aspect-ratio-4\/3 {
    padding-bottom: 75%;
  }
  .xs\:aspect-ratio-16\/9 {
    padding-bottom: 56.25%;
  }
  .xs\:aspect-ratio-21\/9 {
    padding-bottom: 42.86%;
  }
}

@media screen and (min-width: 768px) {
  .sm\:aspect-ratio-square {
    padding-bottom: 100%;
  }
  .sm\:aspect-ratio-2\/1 {
    padding-bottom: 50%;
  }
  .sm\:aspect-ratio-3\/2 {
    padding-bottom: 66.6667%;
  }
  .sm\:aspect-ratio-4\/3 {
    padding-bottom: 75%;
  }
  .sm\:aspect-ratio-16\/9 {
    padding-bottom: 56.25%;
  }
  .sm\:aspect-ratio-21\/9 {
    padding-bottom: 42.86%;
  }
}

@media screen and (min-width: 1024px) {
  .md\:aspect-ratio-square {
    padding-bottom: 100%;
  }
  .md\:aspect-ratio-2\/1 {
    padding-bottom: 50%;
  }
  .md\:aspect-ratio-3\/2 {
    padding-bottom: 66.6667%;
  }
  .md\:aspect-ratio-4\/3 {
    padding-bottom: 75%;
  }
  .md\:aspect-ratio-16\/9 {
    padding-bottom: 56.25%;
  }
  .md\:aspect-ratio-21\/9 {
    padding-bottom: 42.86%;
  }
}

@media screen and (min-width: 1280px) {
  .lg\:aspect-ratio-square {
    padding-bottom: 100%;
  }
  .lg\:aspect-ratio-2\/1 {
    padding-bottom: 50%;
  }
  .lg\:aspect-ratio-3\/2 {
    padding-bottom: 66.6667%;
  }
  .lg\:aspect-ratio-4\/3 {
    padding-bottom: 75%;
  }
  .lg\:aspect-ratio-16\/9 {
    padding-bottom: 56.25%;
  }
  .lg\:aspect-ratio-21\/9 {
    padding-bottom: 42.86%;
  }
}

@media screen and (min-width: 1360px) {
  .xl\:aspect-ratio-square {
    padding-bottom: 100%;
  }
  .xl\:aspect-ratio-2\/1 {
    padding-bottom: 50%;
  }
  .xl\:aspect-ratio-3\/2 {
    padding-bottom: 66.6667%;
  }
  .xl\:aspect-ratio-4\/3 {
    padding-bottom: 75%;
  }
  .xl\:aspect-ratio-16\/9 {
    padding-bottom: 56.25%;
  }
  .xl\:aspect-ratio-21\/9 {
    padding-bottom: 42.86%;
  }
}

.bg-gradient-golden-hour {
  background-image: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  color: #292929;
}

.bg-gradient-blue-hour {
  background-image: linear-gradient(10deg, #333399 0%, #33ccff 100%);
  color: #fff;
}

.bg-gradient-aurora {
  background-image: linear-gradient(10deg, #33ccff 0%, #a542ef 100%);
  color: #fff;
}

.bg-gradient-plen-air {
  background-image: linear-gradient(10deg, #04a5ff 0%, #6cffa9 100%);
  color: #292929;
}

.bg-gradient-green-shades {
  background-image: linear-gradient(10deg, #16481a 0%, #a5e226 100%);
  color: #fff;
}

.bg-gradient-stone-white {
  background-image: linear-gradient(201.18deg, #fff 49%, #b3b3b3 141%);
  color: #292929;
}

.bg-orange {
  background-color: #FF8200;
  color: #292929;
}

.bg-blue {
  background-color: #2D72F7;
  color: #fff;
}

.bg-purple {
  background-color: #9933ff;
  color: #fff;
}

.bg-light-blue {
  background-color: #33CCff;
  color: #292929;
}

.bg-green {
  background-color: #a5e226;
  color: #292929;
}

.bg-red {
  background-color: #ED3F39;
  color: #fff;
}

.bg-white {
  background-color: #fff;
  color: #292929;
}

.bg-black {
  background-color: #292929;
  color: #fff;
}

.bg-smoke {
  background-color: #767676;
  color: #fff;
}

.bg-gray {
  background-color: #f5f5f5;
  color: #292929;
}

.bg-golden-hour {
  background-color: #ff8f1f;
  color: #292929;
}

.bg-blue-hour {
  background-color: #3370c2;
  color: #fff;
}

.bg-aurora {
  background-color: #6195f9;
  color: #fff;
}

.bg-plen-air {
  background-color: #2ec9dd;
  color: #292929;
}

.bg-green-shades {
  background-color: #4f861f;
  color: #fff;
}

.bg-stone-white {
  background-color: #e1e1e1;
  color: #292929;
}

.callout-box, .product-card {
  background: #fff;
  box-shadow: 0px 6px 34px rgba(0, 0, 0, 0.08);
  border-radius: 16px;
  padding: 50px;
}

.carat, .breadcrumbs li:after {
  border: 1px solid #e8825b;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.carat.left, .breadcrumbs li.left:after {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}

.carat.up, .breadcrumbs li.up:after {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

.carat.down, .breadcrumbs li.down:after {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

.breadcrumbs {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-block;
  font-size: 14px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.breadcrumbs li {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  margin-right: 15px;
}

.breadcrumbs li:after {
  content: "";
}

.breadcrumbs li:last-child:after {
  display: none;
}

.breadcrumbs li a {
  margin-right: 15px;
  line-height: 1;
}

@media only screen and (max-width: 767px) {
  .breadcrumbs li a {
    margin-right: 8px;
  }
}

.breadcrumbs li:last-child {
  margin-right: 0;
}

.breadcrumbs li:last-child a {
  margin-right: 0;
}

.breadcrumbs .no-link {
  color: #292929;
  pointer-events: none;
}

figure.quote {
  margin: 0;
}

figure.quote blockquote {
  margin: 0;
  font-size: 24px;
  font-weight: 300;
}

figure.quote cite {
  font-weight: bold;
}

ul.pagination {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 20px;
}

ul.pagination li {
  display: inline-block;
}

ul.pagination li a {
  font-weight: bold;
  text-align: center;
  padding: 20px 20px;
  line-height: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #292929;
}

ul.pagination li.selected a {
  background: #FF8200;
  color: #fff;
  border-radius: 8px;
}

ul.pagination li .carat, ul.pagination li .breadcrumbs li:after, .breadcrumbs ul.pagination li li:after {
  border-color: #7988e9;
}

ul.carousel-nav {
  list-style: none;
  margin: 0;
  padding: 0;
  margin: 20px 0;
  text-align: center;
}

ul.carousel-nav li {
  display: inline-block;
}

ul.carousel-nav li a {
  display: inline-block;
  text-indent: -50000px;
  width: 15px;
  height: 15px;
  border: 1px solid #ccc;
  border-radius: 50%;
}

ul.carousel-nav li.active a {
  border: 0;
  background: #FF6B0B;
}

.mask-wrapper {
  -webkit-mask-image: url(../images/curve-mask.png);
          mask-image: url(../images/curve-mask.png);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 50% 100%;
          mask-position: 50% 100%;
  -webkit-mask-size: cover;
          mask-size: cover;
}

.mask-wrapper article {
  -webkit-mask-image: url(../images/curve-mask.png);
          mask-image: url(../images/curve-mask.png);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 50% 0;
          mask-position: 50% 0;
  -webkit-mask-size: cover;
          mask-size: cover;
}

.image-placeholder {
  position: relative;
  width: 100%;
}

.image-placeholder > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (min-width: 568px) {
  .xs\:image-placeholder {
    position: relative;
    width: 100%;
  }
  .xs\:image-placeholder > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (min-width: 768px) {
  .sm\:image-placeholder {
    position: relative;
    width: 100%;
  }
  .sm\:image-placeholder > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (min-width: 1024px) {
  .md\:image-placeholder {
    position: relative;
    width: 100%;
  }
  .md\:image-placeholder > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (min-width: 1280px) {
  .lg\:image-placeholder {
    position: relative;
    width: 100%;
  }
  .lg\:image-placeholder > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (min-width: 1360px) {
  .xl\:image-placeholder {
    position: relative;
    width: 100%;
  }
  .xl\:image-placeholder > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

body.is-scrolling .site-header {
  border-bottom: 1px solid #bababa;
}

.site-header.desktop {
  position: fixed;
  top: 0;
  z-index: 100;
  background: #fff;
  height: 135px;
  font-size: 14px;
  padding: 15px 0;
  max-width: 1930px;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .site-header.desktop {
    display: none;
  }
}

.site-header.desktop .utility-nav {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-bottom: 10px;
  text-align: right;
  font-size: 10px;
  font-weight: bold;
}

.site-header.desktop .utility-nav > li {
  display: inline-block;
  padding-left: 35px;
}

.site-header.desktop .utility-nav > li > a {
  padding: 5px 0;
  color: #6C6C6C;
}

.site-header.desktop .utility-nav > li > a.selected {
  position: relative;
}

.site-header.desktop .utility-nav > li > a.selected:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
}

.site-header.desktop .logo {
  float: left;
  width: 200px;
  height: 56px;
  margin-top: 4px;
  background: url(../images/sunnova-logo.png) no-repeat;
  background-size: 100%;
  text-indent: -5000px;
}

.site-header.desktop .main-nav-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.site-header.desktop .main-nav {
  text-align: right;
  margin-top: 6px;
}

.site-header.desktop .main-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  float: right;
}

.site-header.desktop .main-nav ul > li {
  display: inline-block;
  margin: 0 10px;
}

.site-header.desktop .main-nav ul > li:last-child {
  margin-right: 0;
}

.site-header.desktop .main-nav ul > li:first-child {
  margin-left: 0;
}

.site-header.desktop .main-nav ul > li > a {
  display: block;
  padding: 15px 10px;
  color: #292929;
  text-decoration: none;
}

.site-header.desktop .main-nav ul > li.get-quote a {
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  color: #fff;
  padding: 10px 30px;
}

.site-header.desktop .main-nav ul > li.is-active:not(.get-quote), .site-header.desktop .main-nav ul > li:hover:not(.get-quote) {
  position: relative;
}

.site-header.desktop .main-nav ul > li.is-active:not(.get-quote):before, .site-header.desktop .main-nav ul > li:hover:not(.get-quote):before {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: 0;
  left: 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
}

.site-header.desktop .main-nav ul > li.is-active:not(.get-quote) > a, .site-header.desktop .main-nav ul > li:hover:not(.get-quote) > a {
  color: #000;
}

.site-header.desktop .main-nav ul > li.is-active:not(.get-quote)::before, .site-header.desktop .main-nav ul > li:hover:not(.get-quote)::before {
  bottom: 10px;
}

.site-header.desktop .main-nav ul > li.has-sub-nav {
  position: relative;
  text-align: left;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-pack: center;
      justify-content: center;
}

.site-header.desktop .main-nav ul > li.has-sub-nav > a {
  padding-right: 20px;
}

.site-header.desktop .main-nav ul > li.has-sub-nav::after {
  position: absolute;
  right: 5px;
  top: calc(50% - 2px);
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  pointer-events: none;
  border-color: rgba(45, 114, 247, 0);
  border-top-color: #292929;
  border-width: 6px;
  transition: .3s ease-in-out all;
  border-left-width: 4px;
  border-right-width: 4px;
}

.site-header.desktop .main-nav ul > li.has-sub-nav:hover > ul {
  display: block;
}

.site-header.desktop .main-nav ul > li.has-sub-nav > ul {
  display: none;
  position: absolute;
  background: #FFFFFF;
  box-shadow: 0px 15px 34px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(0, 0, 0, 0.02);
  border-radius: 16px;
  padding: 10px 20px;
  min-width: 180px;
  top: 100%;
  left: 0;
}

.site-header.desktop .main-nav ul > li.has-sub-nav > ul li {
  margin: 0;
  display: block;
}

.site-header.desktop .main-nav ul > li.has-sub-nav > ul a {
  white-space: nowrap;
}

.site-header.mobile {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  padding: 10px 0;
  background: #fff;
  z-index: 100;
  overflow: auto;
}

@media only screen and (min-width: 768px) {
  .site-header.mobile {
    display: none;
  }
}

.site-header.mobile .logo {
  float: left;
  width: 144px;
  height: 40px;
  background: url(../images/sunnova-logo.png) no-repeat;
  background-size: 100%;
  text-indent: -5000px;
}

.site-header.mobile .mobile-menu {
  float: right;
  margin-top: 5px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: bold;
}

.site-header.mobile span.hamburger {
  display: inline-block;
  height: 19px;
  position: relative;
  transform: rotate(0deg);
  transition: .5s ease-in-out;
  width: 24px;
  vertical-align: middle;
  margin-right: 10px;
}

.site-header.mobile span.hamburger span {
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  height: 3px;
  left: 0;
  opacity: 1;
  position: absolute;
  transform: rotate(0deg);
  transition: .25s ease-in-out;
  width: 100%;
}

.site-header.mobile span.hamburger span:nth-child(1) {
  top: 0;
}

.site-header.mobile span.hamburger span:nth-child(2) {
  top: 8px;
}

.site-header.mobile span.hamburger span:nth-child(3) {
  top: 8px;
}

.site-header.mobile span.hamburger span:nth-child(4) {
  top: 16px;
}

.site-header.mobile span.hamburger.open span:nth-child(1) {
  top: 8px;
  left: 50%;
  width: 0;
}

.site-header.mobile span.hamburger.open span:nth-child(2) {
  transform: rotate(45deg);
}

.site-header.mobile span.hamburger.open span:nth-child(3) {
  transform: rotate(-45deg);
}

.site-header.mobile span.hamburger.open span:nth-child(4) {
  top: 8px;
  left: 50%;
  width: 0;
}

.site-header.mobile nav {
  display: none;
  clear: both;
}

.site-header.mobile nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 20px;
}

.site-header.mobile nav ul li {
  position: relative;
}

.site-header.mobile nav ul li a {
  display: block;
  padding: 15px 0;
  color: #292929;
  font-weight: bold;
}

.site-header.mobile nav ul li.get-quote a {
  margin-top: 10px;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  color: #fff;
  font-size: 20px;
  padding: 10px 0 12px;
}

.site-header.mobile nav ul li > ul {
  background: #f3f3f3;
  padding: 5px 20px;
  margin: 0 -20px;
  transition: .3s ease-in-out height;
}

.site-header.mobile nav ul li.has-sub-nav > a {
  margin-right: 25px;
}

.site-header.mobile nav ul.utility-nav {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 20px;
  font-size: 14px;
}

.site-header.mobile nav ul.utility-nav li {
  padding: 5px 0;
}

.site-header.mobile nav ul.utility-nav li a {
  display: inline-block;
  padding: 5px 0;
  color: #292929;
  font-weight: bold;
}

.site-header.mobile nav ul.utility-nav li a.selected {
  position: relative;
}

.site-header.mobile nav ul.utility-nav li a.selected:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
}

.site-header.mobile [data-accordion-trigger] {
  position: absolute;
  width: 15px;
  height: 20px;
  top: 22px;
  right: -5px;
  cursor: pointer;
  outline: 0;
  transition: .3s ease-in-out all;
}

.site-header.mobile [data-accordion-trigger]::after {
  position: absolute;
  right: 0;
  top: 0;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  pointer-events: none;
  border-color: rgba(45, 114, 247, 0);
  border-top-color: #292929;
  border-width: 10px;
  margin-top: 6px;
  transition: .3s ease-in-out transform;
  transform-origin: 5px 3px;
  border-left-width: 6px;
  border-right-width: 6px;
}

.site-header.mobile [data-accordion-trigger][aria-expanded="true"]::after {
  transform: rotateZ(-180deg);
}

.site-header.mobile.open {
  bottom: 0;
}

.site-footer {
  padding: 0 0 50px 0;
  font-size: 16px;
}

@media only screen and (min-width: 1024px) {
  .site-footer .inner {
    width: calc((((100% - 220px) / 12) * 10) + 180px - .1px);
    margin-left: calc( (((100% - 220px) / 12) * 1) + 0px + 20px) !important;
  }
  .site-footer .inner:first-child {
    margin-left: calc( (((100% - 220px) / 12) * 1) + 0px + 20px) !important;
  }
}

.site-footer h4 {
  padding-bottom: 15px;
  border-bottom: 1px solid #292929;
}

@media only screen and (min-width: 768px) {
  .site-footer div.col-1 {
    width: calc((((100% - 180px) / 10) * 3) + 40px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  .site-footer div.col-1:first-child {
    margin-left: 0 !important;
  }
}

@media only screen and (min-width: 768px) {
  .site-footer div.col-2 {
    width: calc((((100% - 180px) / 10) * 3) + 40px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  .site-footer div.col-2:first-child {
    margin-left: 0 !important;
  }
}

.site-footer div.col-3:after {
  content: "";
  display: table;
  clear: both;
}

@media only screen and (min-width: 768px) {
  .site-footer div.col-3 {
    width: calc((((100% - 180px) / 10) * 4) + 60px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  .site-footer div.col-3:first-child {
    margin-left: 0 !important;
  }
}

.site-footer div.col-3 ul {
  list-style: none;
  margin: 0;
  padding: 0;
  width: calc((((100% - 60px) / 4) * 2) + 20px - .1px);
  box-sizing: border-box;
  float: left;
  margin-left: 20px !important;
}

.site-footer div.col-3 ul:first-child {
  margin-left: 0 !important;
}

.site-footer .footnotes {
  font-size: 13px;
  margin-bottom: 40px;
  color: #8F8F8F;
}

.site-footer .footnotes p {
  font-size: 13px;
}

.site-footer .copyright {
  font-size: 16px;
}

.site-footer .copyright p {
  display: inline;
  margin-right: 15px;
}

@media only screen and (max-width: 767px) {
  .site-footer .copyright p {
    display: block;
  }
}

.site-footer .copyright ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline;
}

.site-footer .copyright ul li {
  display: inline-block;
  margin-right: 15px;
}

@media only screen and (max-width: 767px) {
  .site-footer .copyright ul li {
    display: block;
  }
}

/* This file is where the styling for modules will go. This employes the concepts of OOCSS, creating common base classes (using <article> as the base), and extending as necessary */
/*

<article class="module-name">
    <div class="wrapper">
        <header>
            <h2>Module Name</h2>
        </header>
        <!-- Content here -->
    </div>
</article>

*/
article {
  margin: 100px 0;
}

@media only screen and (max-width: 767px) {
  article {
    margin: 60px 0;
  }
}

.layout > article:first-of-type {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .mainContent > *, .extraContent > *, .sidebar > * {
    margin: 20px 0 50px 0;
    padding: 0;
  }
}

@media only screen and (max-width: 767px) {
  article.about-sunnova {
    margin-bottom: 40px;
  }
}

@media only screen and (min-width: 768px) {
  article.about-sunnova .content {
    width: calc((((100% - 220px) / 12) * 6) + 100px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  article.about-sunnova .content:first-child {
    margin-left: 0 !important;
  }
}

@media only screen and (max-width: 767px) {
  article.about-sunnova .content {
    margin-bottom: 40px;
  }
}

article.about-sunnova .content h1, article.about-sunnova .content h2, article.about-sunnova .content h3, article.about-sunnova .content h4, article.about-sunnova .content h5, article.about-sunnova .content h6 {
  display: inline-block;
  background: linear-gradient(45deg, #33ccff 0%, #a542ef 100%);
  color: #6195f9;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-top: 0;
  font-size: 48px;
}

@media only screen and (max-width: 767px) {
  article.about-sunnova .content h1, article.about-sunnova .content h2, article.about-sunnova .content h3, article.about-sunnova .content h4, article.about-sunnova .content h5, article.about-sunnova .content h6 {
    font-size: 36px;
  }
}

article.about-sunnova .content .button {
  color: #fff;
}

@media only screen and (min-width: 1024px) {
  article.about-sunnova .logos {
    width: calc((((100% - 220px) / 12) * 6) + 100px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  article.about-sunnova .logos:first-child {
    margin-left: 0 !important;
  }
}

article.about-sunnova .logos ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  font-size: 12px;
  margin: -25px 0;
}

article.about-sunnova .logos ul li {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  width: 50%;
  padding: 0 25px;
  text-align: center;
  margin: 0 0 25px 0;
}

@media only screen and (max-width: 767px) {
  article.about-sunnova .logos ul li {
    margin-top: 25px;
  }
}

article.about-sunnova .logos ul li img {
  margin: 0 auto;
}

@media only screen and (min-width: 1024px) {
  article.about-sunnova .logos ul li img {
    max-width: 200px;
  }
}

article.breadcrumbs-wrapper {
  margin: -50px 0;
}

@media only screen and (max-width: 767px) {
  article.breadcrumbs-wrapper {
    margin: -25px 0;
  }
}

article.breadcrumbs-wrapper a {
  color: #FF6B0B;
  transition: .2s linear opacity;
}

article.breadcrumbs-wrapper a:hover, article.breadcrumbs-wrapper a:focus {
  opacity: .7;
}

article.callouts {
  background: transparent;
  position: relative;
  z-index: 2;
}

@media only screen and (min-width: 768px) {
  article.callouts {
    margin: -300px 0 200px 0;
  }
}

@media only screen and (max-width: 767px) {
  article.callouts {
    margin-top: 50px;
  }
}

@media only screen and (min-width: 768px) {
  article.callouts div.row {
    display: -ms-flexbox;
    display: flex;
  }
}

@media only screen and (min-width: 768px) {
  article.callouts div.callout-box, article.callouts div.product-card {
    width: calc((((100% - 220px) / 12) * 5) + 80px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    margin-bottom: -150px;
  }
  article.callouts div.callout-box:first-child, article.callouts div.product-card:first-child {
    margin-left: 0 !important;
  }
  article.callouts div.callout-box:first-child, article.callouts div.product-card:first-child {
    margin-left: calc( (((100% - 220px) / 12) * 1) + 0px + 20px) !important;
  }
  article.callouts div.callout-box:first-child:first-child, article.callouts div.product-card:first-child:first-child {
    margin-left: calc( (((100% - 220px) / 12) * 1) + 0px + 20px) !important;
  }
}

@media only screen and (max-width: 767px) {
  article.callouts div.callout-box, article.callouts div.product-card {
    margin-bottom: 20px;
  }
}

article.callouts div.callout-box h3, article.callouts div.product-card h3 {
  font-size: 20px;
}

article.callouts div.callout-box ul, article.callouts div.product-card ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: auto;
  font-size: 12px;
}

article.callouts div.callout-box ul li, article.callouts div.product-card ul li {
  border-bottom: 1px solid #C4C4C4;
}

article.callouts div.callout-box ul li:last-child, article.callouts div.product-card ul li:last-child {
  border-bottom: 0;
}

article.callouts div.callout-box ul li a, article.callouts div.product-card ul li a {
  display: inline-block;
  background: linear-gradient(45deg, #ff6633 0%, #ffcc00 100%);
  color: #ff8f1f;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: block;
  padding: 10px 0;
  font-size: 24px;
}

article.callouts div.callout-box ul li a:after, article.callouts div.product-card ul li a:after {
  content: "";
  float: right;
  margin-top: 16px;
  border: 1px solid #e8825b;
  border-width: 0 2px 2px 0;
  display: inline-block;
  padding: 3px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.carousel-content {
  margin-bottom: 20px;
}

.carousel .tns-outer {
  position: relative;
}

.carousel .tns-controls [data-controls] {
  position: absolute;
  width: calc(25% - 30px);
  top: 0;
  bottom: 0;
  z-index: 1;
  background: transparent;
  box-shadow: none;
  outline: 0;
}

.carousel .tns-controls [data-controls="next"] {
  right: 0;
}

.carousel .tns-controls [data-controls][disabled] {
  display: none;
}

.carousel .tns-nav {
  text-align: center;
  margin-top: 20px;
}

.carousel [data-controls], .carousel [data-nav] {
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  text-transform: none;
  color: inherit;
  font-size: inherit;
  font-weight: normal;
  white-space: initial;
  border-radius: 0;
  text-align: left;
}

.carousel [data-nav] {
  display: inline-block;
  width: 15px;
  height: 15px;
  border: 1px solid #ccc;
  border-radius: 50%;
  margin: 2px;
}

.carousel [data-nav].tns-nav-active {
  border-color: #FF6B0B;
  background: #FF6B0B;
}

.carousel .tns-slider {
  padding: 0;
}

.carousel .tns-slider .tns-item {
  transition: .3s ease-in-out opacity;
  opacity: .35;
}

.carousel .tns-slider .tns-item.is-active {
  opacity: 1;
}

.carousel .tns-slider .tns-item img {
  width: 100% !important;
  height: auto !important;
  border-radius: 10px;
}

.charity-listing-header {
  margin-bottom: 50px;
  text-align: center;
}

.charity-listing img {
  margin-bottom: 45px;
}

.charity-listing-grid {
  margin-bottom: -45px;
}

.charity-listing-grid li {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 0 10px;
  min-width: 0;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
  flex-grow: 0;
  flex-shrink: 0;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  max-width: 50%;
}

.charity-listing-grid li:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 768px) {
  .charity-listing-grid li {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
}

@media screen and (min-width: 1024px) {
  .charity-listing-grid li {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
}

.comparison {
  max-width: 940px;
  margin: 0 auto;
  font: 16px/1.4 "Helvetica Neue",Helvetica,Arial,sans-serif;
  text-align: center;
}

.comparison table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
  border-bottom: 1px solid #CCC;
  border-left: 1px solid #CCC;
  border-top: 1px solid #CCC;
}

.comparison td, .comparison th {
  border-right: 1px solid #CCC;
  empty-cells: show;
  padding: 10px;
}

.compare-heading {
  font-size: 16px;
  border-bottom: 0 !important;
  padding: 10px !important;
}

.comparison .compare-row {
  background: #F5F5F5;
}

.comparison .tickblue {
  color: #0078C1;
}

.comparison .tickgreen {
  color: #009E2C;
  font-size: 20px;
  font-weight: bold;
}

.comparison th {
  font-weight: normal;
  padding: 0;
  border-bottom: 1px solid #CCC;
  text-align: center;
}

.comparison tr td:first-child {
  text-align: left;
}

.comparison .qbse, .comparison .qbo, .comparison .tl {
  color: #FFF;
  padding: 10px;
  font-size: 13px;
  border-right: 1px solid #CCC;
  border-bottom: 0;
}

.comparison .tl2 {
  border-right: 0;
}

.comparison .qbse {
  background: #636363;
  border-top-left-radius: 3px;
  border-left: 0px;
  text-align: center;
}

.comparison .platinum {
  background: #F36F21;
  border-top-left-radius: 3px;
  border-left: 0px;
  color: #fff;
}

.comparison .qbo {
  background: #009E2C;
  border-top-right-radius: 3px;
  border-right: 0px;
}

.comparison .price-info {
  padding: 5px 15px 15px 15px;
}

.comparison .price-was {
  color: #999;
  text-decoration: line-through;
}

.comparison .price-now, .comparison .price-now span {
  color: #ff5406;
}

.comparison .price-now span {
  font-size: 32px;
}

.comparison .price-small {
  font-size: 18px !important;
  position: relative;
  top: -11px;
  left: 2px;
}

.comparison .price-buy {
  background: #ff5406;
  padding: 10px 20px;
  font-size: 12px;
  display: inline-block;
  color: #FFF;
  text-decoration: none;
  border-radius: 3px;
  text-transform: uppercase;
  margin: 5px 0 10px 0;
}

.comparison .price-try {
  font-size: 12px;
}

.comparison .price-try a {
  color: #202020;
}

@media (max-width: 767px) {
  .comparison tbody tr:nth-child(odd) {
    display: table-row;
    background: #F7F7F7;
  }
  .comparison .row {
    background: #FFF;
  }
  .comparison td, .comparison th {
    border: 1px solid #CCC;
  }
  .price-info {
    border-top: 0 !important;
  }
}

@media (max-width: 639px) {
  .comparison .price-buy {
    padding: 5px 10px;
  }
  .comparison td, .comparison th {
    padding: 10px 5px;
    font-size: 11px;
  }
  .comparison .hide-mobile {
    display: none;
  }
  .comparison .price-now span {
    font-size: 16px;
  }
  .comparison .price-small {
    font-size: 16px !important;
    top: 0;
    left: 0;
  }
  .comparison .qbse, .comparison .qbo {
    font-size: 12px;
    padding: 10px 5px;
  }
  .comparison .price-buy {
    margin-top: 10px;
  }
  .compare-heading {
    font-size: 13px;
  }
}

.filter-bar-list-container {
  background: linear-gradient(230.21deg, #33CCFF 7.99%, #333399 100%);
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.14);
  border-radius: 8px;
  color: #fff;
  padding: 30px;
  text-align: left;
  position: relative;
  min-height: 350px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  text-decoration: none;
}

@media only screen and (max-width: 767px) {
  .filter-bar-list-container {
    display: block;
    padding: 30px;
  }
}

.filter-bar-heading {
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .filter-bar-heading {
    margin-bottom: 25px;
  }
}

@media screen and (min-width: 768px) {
  .filter-bar .col:not(.tns-item) {
    width: 25%;
    float: left;
    padding-right: 20px;
  }
  .filter-bar .col:not(.tns-item):nth-child(n+5) {
    display: none;
  }
}

.filter-bar-list {
  list-style: none;
  margin: 0;
  padding: 0;
  transform: translate3d(0%, 0px, 0px);
  list-style: none;
  margin: 25px 0 0;
  padding: 0;
  font-size: 20px;
}

.filter-bar-list a, .filter-bar-list a:focus, .filter-bar-list a:hover, .filter-bar-list a:active {
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .filter-bar-list {
    margin: 0;
  }
}

.filter-bar-list li {
  position: relative;
  counter-increment: reading-list-counter;
  padding-left: 25px;
  margin-bottom: 20px;
}

@media only screen and (min-width: 768px) {
  .filter-bar-list li {
    display: inline-block;
  }
}

.filter-bar-list li:last-child {
  margin-bottom: 0;
}

.filter-bar-list li.is-selected {
  font-weight: 600;
}

.filter-bar-list li::before {
  position: absolute;
  left: 0;
}

@media only screen and (max-width: 767px) {
  .filter-bar-list {
    padding: 5px 0;
    margin: 0;
  }
}

.filter-bar.is-sidebar {
  margin-top: 0;
}

.filter-bar.is-sidebar .filter-bar-list-container {
  padding: 45px 30px;
  display: block;
  box-shadow: 0px 6px 16px rgba(0, 0, 0, 0.16);
}

.filter-bar.is-sidebar .filter-bar-list-container li {
  margin-left: 0;
  margin-top: 25px;
  display: block;
}

.filter-bar.is-sidebar .filter-bar-heading {
  font-size: 28px;
}

.filter-bar .custom-dropdown {
  margin-bottom: 0;
}

.blog-listing-heading {
  text-transform: capitalize;
  margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  .blog-listing-heading {
    text-align: center;
  }
}

.blog-listing-list {
  transition: .3s ease-in-out height;
  position: relative;
}

@media screen and (min-width: 1024px) {
  .blog-listing-list {
    margin-top: -40px;
  }
}

.blog-listing li {
  position: relative;
  transition: .3s ease-in-out all;
}

@media screen and (min-width: 1024px) {
  .blog-listing li {
    display: -ms-flexbox;
    display: flex;
  }
}

.blog-listing li.is-hiding {
  opacity: 0;
}

.blog-listing li.is-hiding .info-card {
  transform: scale(0);
}

.blog-listing li.is-hidden {
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  display: none;
}

.blog-listing .info-card {
  transition: .3s ease-in-out all;
}

@media screen and (min-width: 1024px) {
  .blog-listing .info-card {
    margin-top: 40px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex: 1;
        flex: 1;
  }
}

@media screen and (min-width: 1024px) {
  .blog-listing .info-card-content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex: 1;
        flex: 1;
  }
}

@media screen and (min-width: 1024px) {
  .blog-listing .info-card-meta {
    margin-top: auto;
  }
}

.blog-listing .load-more {
  text-align: center;
}

.blog-listing .load-more button {
  margin-top: 40px;
}

.blog-listing--v2 .blog-listing-heading {
  letter-spacing: -2px;
  color: #292929;
  margin-bottom: 50px;
}

@media only screen and (min-width: 1024px) {
  .fullwidth-callout {
    margin: 100px 0;
  }
}

.fullwidth-callout-container {
  position: relative;
  border-radius: 40px;
  overflow: hidden;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.fullwidth-callout-heading {
  margin-top: 0;
  margin-bottom: 2px;
}

.fullwidth-callout-content {
  padding: 60px 53% 60px 150px;
  text-align: left;
  color: #fff;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  min-height: 440px;
  width: 100%;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fullwidth-callout-content {
    padding: 60px 80px;
  }
}

@media only screen and (max-width: 767px) {
  .fullwidth-callout-content {
    padding: 60px 40px;
  }
}

@media only screen and (max-width: 1023px) {
  .fullwidth-callout-content {
    min-height: 0;
  }
}

.fullwidth-callout-content .button {
  margin-top: 10px;
}

.fullwidth-callout-content-wrapper > *:last-child {
  margin-bottom: 0;
}

.fullwidth-callout-mask {
  background: no-repeat bottom right url(../images/services-mask.svg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.fullwidth-callout-image {
  position: absolute;
  right: 0;
  bottom: 0;
  line-height: 0;
}

@media only screen and (max-width: 1023px) {
  .fullwidth-callout-image {
    display: none;
  }
}

.fullwidth-callout.is-image-centered .fullwidth-callout-image {
  bottom: auto;
}

@media only screen and (min-width: 1024px) {
  .fullwidth-callout.is-image-left .fullwidth-callout-content {
    padding: 60px 85px 60px 59%;
  }
}

.fullwidth-callout.is-image-left .fullwidth-callout-image {
  left: 0;
  right: auto;
}

article.get-quote {
  padding: 100px 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  color: #fff;
  position: relative;
}

article.get-quote .get-quote-success, article.get-quote .error-message {
  display: none;
}

article.get-quote .get-quote-container, article.get-quote .get-quote-success {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 20px;
  padding: 60px;
  position: relative;
}

article.get-quote .get-quote-container p, article.get-quote .get-quote-success p {
  font-size: 24px;
}

article.get-quote .get-quote-container h3, article.get-quote .get-quote-success h3 {
  text-align: left;
}

@media only screen and (max-width: 767px) {
  article.get-quote .get-quote-container, article.get-quote .get-quote-success {
    padding: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.get-quote .get-quote-container, article.get-quote .get-quote-success {
    padding: 40px;
  }
}

article.get-quote .get-quote-container.two-column .checkbox-container, article.get-quote .get-quote-success.two-column .checkbox-container {
  position: relative;
}

article.get-quote .get-quote-container.two-column .checkbox-container .error, article.get-quote .get-quote-success.two-column .checkbox-container .error {
  left: calc(50% - 227px);
  position: absolute;
  z-index: 1;
}

article.get-quote .get-quote-container.two-column .checkbox-container .error:before, article.get-quote .get-quote-success.two-column .checkbox-container .error:before {
  left: calc(50% - 46px);
  top: calc(50% - 48px);
}

@media only screen and (max-width: 767px) {
  article.get-quote .get-quote-container.two-column .checkbox-container .error, article.get-quote .get-quote-success.two-column .checkbox-container .error {
    left: 0px;
  }
}

article.get-quote .get-quote-container .checkbox-container .error, article.get-quote .get-quote-success .checkbox-container .error {
  position: relative;
}

article.get-quote .get-quote-container .checkbox-container .error:before, article.get-quote .get-quote-success .checkbox-container .error:before {
  left: 40px;
  top: -27px;
}

@media only screen and (min-width: 768px) {
  article.get-quote .get-quote-container.one-column form, article.get-quote .get-quote-success.one-column form {
    width: calc((((100% - 220px) / 12) * 8) + 140px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
    margin-left: calc( (((100% - 220px) / 12) * 2) + 20px + 20px) !important;
  }
  article.get-quote .get-quote-container.one-column form:first-child, article.get-quote .get-quote-success.one-column form:first-child {
    margin-left: 0 !important;
  }
  article.get-quote .get-quote-container.one-column form:first-child, article.get-quote .get-quote-success.one-column form:first-child {
    margin-left: calc( (((100% - 220px) / 12) * 2) + 20px + 20px) !important;
  }
}

article.get-quote .get-quote-container.two-column h2, article.get-quote .get-quote-success.two-column h2 {
  margin-bottom: 30px;
  padding-bottom: 60px;
  border-bottom: 2px solid rgba(255, 255, 255, 0.5);
}

article.get-quote .get-quote-container.two-column .first-column, article.get-quote .get-quote-success.two-column .first-column {
  text-align: left;
  padding: 0 30px 0 10px;
}

@media only screen and (min-width: 768px) {
  article.get-quote .get-quote-container.two-column .first-column, article.get-quote .get-quote-success.two-column .first-column {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
  }
}

article.get-quote .get-quote-container.two-column .second-column, article.get-quote .get-quote-success.two-column .second-column {
  padding: 0 10px 0 30px;
}

article.get-quote h2 {
  text-align: center;
}

article.get-quote .get-quote-about {
  margin: 30px 0;
}

article.get-quote p.get-quote-required {
  font-size: 14px;
}

article.get-quote form p.intro {
  margin-bottom: 50px;
}

article.get-quote form .item.city {
  -ms-flex-positive: 1.5;
      flex-grow: 1.5;
}

article.get-quote form select {
  border-radius: 16px;
}

article.get-quote form .buttons {
  margin-top: 30px;
}

article.get-quote form .disclaimer-checkbox {
  font-size: 14px;
  text-align: left;
}

article.get-quote form .disclaimer-checkbox a {
  color: #fff;
  text-decoration: underline;
}

article.get-quote form .disclaimer-checkbox input {
  margin-right: 10px;
}

article.get-quote form p.legal {
  font-size: 14px;
  text-align: center;
}

article.get-quote form p.legal a {
  color: #fff;
  text-decoration: underline;
}

@media only screen and (max-width: 767px) {
  article.get-quote .checkbox-list {
    text-align: left;
  }
}

.center-quote .get-quote .get-quote-container .checkbox-container .error {
  left: calc(50% - 227px);
  z-index: 1;
  position: absolute;
}

@media only screen and (max-width: 767px) {
  .center-quote .get-quote .get-quote-container .checkbox-container .error {
    left: 20px;
  }
}

.center-quote .get-quote .get-quote-container .checkbox-container .error:before {
  left: calc(50% - 46px);
  top: calc(50% - 48px);
}

div.overlay {
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 100;
  left: 0;
  top: 0;
  background-color: black;
  background-color: rgba(0, 0, 0, 0.7);
  overflow-x: hidden;
  transition: 0.5s;
}

div.overlay .overlay-content {
  background-color: white;
  position: absolute;
  height: 180px;
  width: 360px;
  left: calc(50% - 180px);
  top: calc(50% - 90px);
  margin: 0px auto;
  border-radius: 5px;
  padding: 35px;
}

div.overlay .overlay-content .overlay-spinner {
  width: 40px;
  height: 40px;
  margin: 0 auto;
  border: 5px solid;
  border-radius: 50%;
  border-color: transparent black black;
  animation: loadingSpinner .7s infinite linear;
  -o-animation: loadingSpinner .7s infinite linear;
  -ms-animation: loadingSpinner .7s infinite linear;
  -webkit-animation: loadingSpinner .7s infinite linear;
  -moz-animation: loadingSpinner .7s infinite linear;
}

div.overlay .overlay-content .overlay-text {
  text-align: center;
}

div.overlay .overlay-content .overlay-text h4 {
  font-size: 24px;
  margin: 20px 0 0 0;
}

div.overlay .overlay-content .overlay-text p {
  font-size: 20px;
  margin: 0;
}

@keyframes loadingSpinner {
  100% {
    transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.hero {
  position: relative;
}

.hero .mask-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.hero .mask-wrapper.top-curve {
  -webkit-mask-image: url(../images/curve-mask.png);
          mask-image: url(../images/curve-mask.png);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 50% 100%;
          mask-position: 50% 100%;
  -webkit-mask-size: cover;
          mask-size: cover;
}

.hero .mask-wrapper.top-curve .bg {
  -webkit-mask-image: url(../images/curve-mask.png);
          mask-image: url(../images/curve-mask.png);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 50% 0;
          mask-position: 50% 0;
  -webkit-mask-size: cover;
          mask-size: cover;
}

.hero .bg {
  position: relative;
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: cover;
  height: 465px;
}

@media only screen and (max-width: 767px) {
  .hero .bg {
    height: 240px;
  }
}

.hero.center-bg .bg {
  background-position: 0 50%;
}

.hero .video-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.hero .title {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  color: #fff;
  min-height: 465px;
}

@media only screen and (max-width: 767px) {
  .hero .title {
    min-height: 240px;
  }
}

.hero:not(.hero--columns) h1:not(.clear-title) {
  color: #fff;
  text-align: center;
}

.hero:not(.hero--columns) h1:not(.clear-title) > span {
  padding: 5px 0;
  background: #FF8200;
}

.hero:not(.hero--columns) h1:not(.clear-title) > span > span {
  display: inline;
  padding: 5px 20px;
  line-height: 1.35;
  color: #fff;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

@media only screen and (min-width: 768px) {
  .hero:not(.hero--columns) h1:not(.clear-title) > span > span {
    background: linear-gradient(to right top, #F15523 20%, #FFBE01 80%);
    background-attachment: fixed;
  }
}

@media only screen and (max-width: 767px) {
  .hero:not(.hero--columns) h1:not(.clear-title) > span > span {
    line-height: 1.55;
  }
}

.hero.is-small .title {
  min-height: 365px;
}

@media only screen and (max-width: 767px) {
  .hero.is-small .title {
    min-height: 165px;
  }
}

.hero.top .title {
  -ms-flex-align: start;
      align-items: flex-start;
  margin-top: 20px;
}

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

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

@media only screen and (max-width: 767px) {
  .hero.bottom .title {
    top: 10px;
  }
}

.hero.left .title {
  -ms-flex-pack: start;
      justify-content: flex-start;
}

.hero.center .title {
  -ms-flex-pack: center;
      justify-content: center;
}

.hero.right .title {
  -ms-flex-pack: end;
      justify-content: flex-end;
}

.hero--columns .bg {
  height: 100%;
}

.hero--columns .title {
  padding: 40px 0;
  box-sizing: content-box;
}

@media screen and (min-width: 1024px) {
  .hero--columns .title {
    padding: 40px 0 60px 0;
  }
}

@media screen and (min-width: 1024px) {
  .hero--columns .title .flex-grid {
    -ms-flex-align: center;
        align-items: center;
    width: 100%;
  }
}

.hero--columns .hero-heading > *:first-child, .hero--columns .hero-content > *:first-child {
  margin-top: 0;
}

.hero--columns .hero-heading > *:last-child, .hero--columns .hero-content > *:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
  .hero--columns.right .flex-grid {
    text-align: right;
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
  }
  .hero--columns.right .faq-autocomplete-form {
    margin-left: auto;
  }
}

@media screen and (min-width: 1024px) {
  .hero--columns.center .flex-grid {
    text-align: center;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .hero--columns.center .faq-autocomplete-form {
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (min-width: 768px) {
  .hero--columns.bottom {
    padding-bottom: 57px;
  }
}

.hero-content {
  margin-top: 15px;
}

.hero .faq-autocomplete-form {
  margin-top: 40px;
  max-width: 515px;
}

article.homepage-hero {
  position: relative;
  margin-top: 110px;
}

article.homepage-hero .mask-wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

article.homepage-hero .mask-wrapper.top-curve {
  -webkit-mask-image: url(../images/curve-mask.png);
          mask-image: url(../images/curve-mask.png);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 50% 100%;
          mask-position: 50% 100%;
  -webkit-mask-size: cover;
          mask-size: cover;
}

article.homepage-hero .mask-wrapper.top-curve .bg {
  -webkit-mask-image: url(../images/curve-mask.png);
          mask-image: url(../images/curve-mask.png);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 50% 0;
          mask-position: 50% 0;
  -webkit-mask-size: cover;
          mask-size: cover;
}

article.homepage-hero .bg {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

article.homepage-hero .wrapper {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  vertical-align: middle;
  -ms-flex-direction: column;
      flex-direction: column;
  padding: 150px 0px;
}

article.homepage-hero .wrapper.has-video-bg {
  visibility: hidden;
}

article.homepage-hero .mask-wrapper ~ .wrapper {
  padding: 125px 0px;
}

article.homepage-hero div.header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}

article.homepage-hero div.cta .button {
  margin: 5px 30px;
}

@media only screen and (max-width: 767px) {
  article.homepage-hero div.cta {
    margin-top: 72px;
  }
}

article.homepage-hero h1 {
  color: #fff;
  text-align: center;
}

article.homepage-hero h1 > span {
  padding: 5px 0;
  background: #FF8200;
}

article.homepage-hero h1 > span > span {
  display: inline;
  padding: 5px 20px;
  line-height: 1.35;
  color: #fff;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

@media only screen and (min-width: 768px) {
  article.homepage-hero h1 > span > span {
    background: linear-gradient(to right top, #F15523 20%, #FFBE01 80%);
    background-attachment: fixed;
  }
}

@media only screen and (max-width: 767px) {
  article.homepage-hero h1 > span > span {
    line-height: 1.55;
  }
}

article.homepage-hero .video-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

article.homepage-hero .mobile, article.homepage-hero .tablet, article.homepage-hero .desktop {
  display: none;
}

@media only screen and (max-width: 767px) {
  article.homepage-hero .mobile {
    display: initial;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.homepage-hero .tablet {
    display: initial;
  }
}

@media only screen and (min-width: 1024px) {
  article.homepage-hero .desktop {
    display: initial;
  }
}

@media only screen and (min-width: 768px) {
  article.homepage-hero.top .header {
    -ms-flex-align: start;
        align-items: flex-start;
  }
  article.homepage-hero.middle .header {
    -ms-flex-align: center;
        align-items: center;
  }
  article.homepage-hero.bottom .header {
    -ms-flex-align: end;
        align-items: flex-end;
  }
  article.homepage-hero.left .header {
    -ms-flex-pack: start;
        justify-content: flex-start;
  }
  article.homepage-hero.center .header {
    -ms-flex-pack: center;
        justify-content: center;
  }
  article.homepage-hero.right .header {
    -ms-flex-pack: end;
        justify-content: flex-end;
  }
}

article.homepage-hero.homepage {
  margin-top: 110px;
}

@media only screen and (max-width: 767px) {
  article.homepage-hero.homepage {
    margin-top: 0px;
  }
}

article.hr {
  margin: 0 0 50px 0;
  padding: 0;
}

@media only screen and (max-width: 767px) {
  article.hr {
    margin-bottom: 25px;
  }
}

@media only screen and (min-width: 1024px) {
  article.image {
    margin: 100px 0;
  }
}

.image {
  text-align: center;
}

.image-content {
  margin-bottom: 50px;
}

.image img {
  border-radius: 10px;
  overflow: hidden;
}

.image-collage-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.image-collage-grid > [class*="is-"] {
  min-width: 0;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

.image-collage-grid > [class*="is-"]:last-child {
  margin-bottom: 0;
}

.image-collage-grid .is-full {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
}

.image-collage-grid .is-1\/2 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  max-width: 50%;
}

.image-collage-grid .is-1\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  max-width: 33.3333%;
}

.image-collage-grid .is-2\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 66.6666%;
      flex-basis: 66.6666%;
  max-width: 66.6666%;
}

.image-collage-grid .is-1\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  max-width: 25%;
}

.image-collage-grid .is-3\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%;
  max-width: 75%;
}

.image-collage-grid .is-1\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 16.66666%;
      flex-basis: 16.66666%;
  max-width: 16.66666%;
}

.image-collage-grid .is-5\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 83.3333%;
      flex-basis: 83.3333%;
  max-width: 83.3333%;
}

.image-collage-grid .is-1\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  max-width: 20%;
}

.image-collage-grid .is-2\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
  max-width: 40%;
}

.image-collage-grid .is-3\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
  max-width: 60%;
}

.image-collage-grid .is-4\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
  max-width: 80%;
}

.image-collage {
  overflow: hidden;
}

.image-collage-wrapper {
  margin: 0 -10px;
}

.image-collage img {
  border-radius: 10px;
  padding: 5px;
}

@media only screen and (max-width: 767px) {
  .image-collage img {
    border-radius: 5px;
    padding: 3px;
  }
}

.image-collage .aspect-ratio-3\/4 {
  padding-bottom: 133.333%;
}

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

.info-card-media {
  line-height: 0;
  overflow: hidden;
  margin-bottom: 10px;
}

.info-card-title {
  color: #2D72F7;
  margin-top: 0;
}

.info-card-meta {
  font-size: 14px;
  margin-bottom: 10px;
  margin: 0 -5px;
}

.info-card-meta > span {
  margin: 0 5px;
}

.info-card-description {
  padding: 0 25px;
  margin-top: 0;
}

.info-card-description > *:last-child {
  margin-bottom: 0;
}

.info-card-description.fade {
  position: relative;
  height: 130px;
  overflow: hidden;
}

.info-card-description.fade:after {
  content: "";
  text-align: right;
  position: absolute;
  bottom: 0;
  right: 0;
  width: 70%;
  height: 1.5em;
  background: linear-gradient(to right, rgba(255, 255, 255, 0), white 50%);
}

.info-card-content > *:last-child {
  margin-bottom: 0;
}

.info-card-tags {
  list-style: none;
  margin: 0;
  padding: 0;
  margin: 0 -5px;
  text-transform: uppercase;
}

.info-card-tags li {
  display: inline-block;
  margin: 0 5px;
}

.info-card-tags a {
  text-decoration: underline;
  color: #2D72F7;
  font-size: 14px;
}

.info-card.is-opposite {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}

@media only screen and (min-width: 1024px) {
  .info-card.is-horizontal {
    text-align: left;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
  }
  .info-card.is-horizontal .info-card-media {
    margin-bottom: 0;
  }
  .info-card.is-horizontal .info-card-description {
    padding: 0;
  }
  .info-card.is-horizontal .info-card-header {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
  .info-card.is-horizontal .info-card-content {
    padding: 10px;
  }
  .info-card.is-horizontal .info-card-header + .info-card-content {
    padding: 10px 20px;
  }
  .info-card.is-horizontal.is-padded .info-card-header + .info-card-content {
    padding: 10px 0 10px 40px;
  }
  .info-card.is-padded {
    padding: 10px;
  }
}

.info-card.has-shadow {
  box-shadow: 0 10px 15px rgba(0, 0, 0, 0.25);
}

.info-card.is-rounded .info-card-media {
  border-radius: 10px;
}

.info-card--v2.is-horizontal .info-card-header + .info-card-content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  width: 100%;
}

.info-card--v2.is-horizontal .info-card-title {
  margin-bottom: 20px;
}

.info-card--v2.is-horizontal .info-card-content {
  background: linear-gradient(201.18deg, #FFFFFF 48.72%, #B3B3B3 141.8%);
}

@media screen and (min-width: 1024px) {
  .info-card--v2.is-horizontal .info-card-media {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .info-card--v2.is-horizontal .info-card-media img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

@media screen and (min-width: 1024px) {
  .info-card--v2.is-horizontal.is-small .info-card-header + .info-card-content {
    padding: 35px;
  }
}

.info-card--v2:not(.is-horizontal) {
  position: relative;
}

.info-card--v2:not(.is-horizontal):after {
  content: '';
  position: absolute;
  top: 20px;
  left: 40px;
  bottom: 0;
  right: 40px;
  background: #000000;
  opacity: 0.3;
  filter: blur(30px);
  z-index: 0;
}

.info-card--v2 .info-card-header + .info-card-content {
  text-align: left;
}

@media screen and (min-width: 1024px) {
  .info-card--v2 .info-card-header + .info-card-content {
    padding: 50px 55px;
  }
}

.info-card--v2 .info-card-description {
  padding: 0;
}

.info-card--v2 .info-card-content {
  background: linear-gradient(226.39deg, #FFFFFF 48.72%, #B3B3B3 141.8%);
  padding: 35px 30px;
}

.info-card--v2 .info-card-content > a:hover, .info-card--v2 .info-card-content > a:focus, .info-card--v2 .info-card-content > a:active {
  text-decoration: none;
}

.info-card--v2 .info-card-media {
  margin-bottom: 0;
  z-index: 1;
  background: #fff;
}

.info-card--v2 .info-card-media img {
  -o-object-position: top;
     object-position: top;
  -o-object-fit: cover;
     object-fit: cover;
}

.info-card--v2 .info-card-media, .info-card--v2 .info-card-content {
  position: relative;
  z-index: 1;
}

.info-card--v2 .info-card-header {
  position: relative;
}

.info-card--v2 .info-card-title {
  color: #292929;
  letter-spacing: -0.03em;
  line-height: 1.15;
  margin-bottom: 25px;
}

.info-card--v2 .info-card-tags {
  margin-bottom: 10px;
}

.info-card--v2 .info-card-tags a {
  text-decoration: none;
}

.info-card--v2 .info-card-meta {
  font-weight: normal;
}

.infographic {
  /*margin: 75px 0;
    @include breakpoint(small) {
      margin: 35px 0;
    }*/
}

.infographic-tabs {
  text-align: center;
  margin-top: -25px;
}

@media only screen and (max-width: 767px) {
  .infographic-tabs {
    margin-bottom: 40px;
  }
}

.infographic-tabs [role="tablist"] {
  position: relative;
  overflow: visible;
  z-index: 1;
}

.infographic-tabs [role="tab"] {
  position: relative;
  margin: 0;
  padding: 25px;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  font-weight: bold;
  text-transform: none;
  color: inherit;
  transition: .2s ease-in-out all;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .infographic-tabs [role="tab"] {
    padding: 25px 10px;
  }
}

.infographic-tabs [role="tab"]:last-child::after {
  display: none;
}

.infographic-tabs [role="tab"]::after {
  position: absolute;
  bottom: 25px;
  top: 25px;
  width: 1px;
  right: -2px;
  border-right: 2px solid #C4C4C4;
  content: '';
}

.infographic-tabs [role="tab"][aria-selected="true"] {
  display: inline-block;
  background: linear-gradient(45deg, #ff6633 0%, #ffcc00 100%);
  color: #ff8f1f;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.infographic-tabs [role="tab"]:hover,
.infographic-tabs [role="tab"]:focus,
.infographic-tabs [role="tab"]:active {
  outline: 0;
  border-radius: 0;
}

.infographic-tabs [role="tabpanel"] {
  padding: .5em .5em .7em;
}

.infographic-tabs [role="tabpanel"]:focus {
  outline: 0;
}

.infographic-tabs [role="tabpanel"] p {
  margin: 0;
}

.infographic-tabs [role="tabpanel"] * + p {
  margin-top: 1em;
}

.infographic-wrapper {
  position: relative;
}

.infographic-content {
  position: relative;
  z-index: 1;
  text-align: center;
  margin-top: 75px;
}

@media only screen and (max-width: 767px) {
  .infographic-content {
    margin-top: 35px;
  }
}

.infographic .wrapper-md {
  position: relative;
}

.infographic-background,
.infographic .mask-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.infographic-background {
  background: linear-gradient(180deg, #FFFFFF 43.17%, #90C5FF 100%);
}

.infographic-background.is-night {
  background: linear-gradient(180deg, #1C1C1C 53.17%, #2B276B 84.99%);
}

.infographic-toggle {
  margin-bottom: 60px;
}

.infographic [role="tabpanel"] [data-toggle-transition] .infographic-background {
  transition: .3s ease-in-out all;
}

.infographic [role="tabpanel"].day [data-toggle-transition="night"] .infographic-background {
  opacity: 0;
}

.infographic [role="tabpanel"].day [data-toggle-transition="day"] .infographic-background {
  opacity: 1;
}

.infographic [role="tabpanel"].night {
  color: #fff;
}

.infographic [role="tabpanel"].night [data-toggle-transition="night"] .infographic-background {
  opacity: 1;
}

.infographic [role="tabpanel"].night [data-toggle-transition="day"] .infographic-background {
  opacity: 0;
}

.infographic [role="tablist"].night {
  color: #fff;
}

.infographic .custom-toggle {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
}

.infographic .custom-toggle__label {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  font-size: 16px;
  min-width: 120px;
}

@media only screen and (max-width: 767px) {
  .infographic .custom-toggle__label {
    min-width: 90px;
  }
}

.infographic .custom-toggle__label img {
  margin-bottom: 8px;
}

.infographic .is-off:checked ~ .custom-toggle__switcher {
  background-color: #fff;
}

.infographic .is-off:checked ~ .custom-toggle__background {
  background-color: #575757;
}

.infographic .is-on:checked ~ .custom-toggle__switcher {
  background-color: #16481a;
}

.infographic .is-on:checked ~ .custom-toggle__background {
  background-color: #E8E8E8;
}

.news-press-heading {
  margin-bottom: 30px;
  font-weight: 400;
}

.news-press-videos-container {
  margin-bottom: 50px;
}

.news-press-videos-container .tns-nav {
  text-align: center;
}

.news-press-videos-container .tns-controls {
  position: absolute;
}

.news-press-videos-container [data-controls], .news-press-videos-container [data-nav] {
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  text-transform: none;
  color: inherit;
  font-size: inherit;
  font-weight: normal;
  white-space: initial;
  border-radius: 0;
  text-align: left;
}

.news-press-videos-container [data-nav] {
  display: inline-block;
  width: 15px;
  height: 15px;
  border: 1px solid #ccc;
  border-radius: 50%;
  margin: 2px;
}

.news-press-videos-container [data-nav].tns-nav-active {
  border: 0;
  background: #FF6B0B;
}

.news-press-videos .video {
  background-color: #f1f1f1;
  position: relative;
  height: 0;
}

@media only screen and (min-width: 768px) {
  .news-press-container {
    position: relative;
  }
  .news-press-container:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    border-left: 1px solid #ccc;
  }
}

@media only screen and (min-width: 768px) {
  .news-press div.news {
    width: calc((((100% - 220px) / 12) * 4) + 60px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
    margin-left: calc( (((100% - 220px) / 12) * 1) + 0px + 20px) !important;
  }
  .news-press div.news:first-child {
    margin-left: 0 !important;
  }
  .news-press div.news:first-child {
    margin-left: calc( (((100% - 220px) / 12) * 1) + 0px + 20px) !important;
  }
}

.news-press div.news h1, .news-press div.news h2, .news-press div.news h3, .news-press div.news h4, .news-press div.news h5, .news-press div.news h6 {
  font-size: 24px;
  background: linear-gradient(10deg, #33ccff 10%, #333399 100%);
  color: #fff;
  padding: 10px 20px;
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .news-press div.news h1, .news-press div.news h2, .news-press div.news h3, .news-press div.news h4, .news-press div.news h5, .news-press div.news h6 {
    font-size: 28px;
  }
}

@media only screen and (min-width: 768px) {
  .news-press div.press {
    width: calc((((100% - 220px) / 12) * 4) + 60px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
    margin-left: calc( (((100% - 220px) / 12) * 2) + 20px + 40px) !important;
  }
  .news-press div.press:first-child {
    margin-left: 0 !important;
  }
  .news-press div.press:first-child {
    margin-left: calc( (((100% - 220px) / 12) * 2) + 20px + 40px) !important;
  }
}

.news-press div.press h1, .news-press div.press h2, .news-press div.press h3, .news-press div.press h4, .news-press div.press h5, .news-press div.press h6 {
  font-size: 24px;
  background: linear-gradient(10deg, #333399 10%, #33ccff 100%);
  color: #fff;
  padding: 10px 20px;
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .news-press div.press h1, .news-press div.press h2, .news-press div.press h3, .news-press div.press h4, .news-press div.press h5, .news-press div.press h6 {
    font-size: 28px;
  }
}

.news-press ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.news-press ul li {
  margin-bottom: 20px;
}

.news-press ul li div.source {
  font-size: 14px;
  text-transform: uppercase;
}

.news-press ul li a {
  font-size: 16px;
  line-height: 1.5;
}

.news-press ul li div.date {
  font-size: 14px;
}

.news-press .load-more {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .news-press .load-more {
    margin-top: 30px;
    margin-bottom: 40px;
  }
}

.news-press .load-more .button {
  margin-top: 40px;
  color: #fff;
}

.news-press [data-load-more-list] {
  transition: .3s ease-in-out height;
}

.page-intro-heading {
  margin: 0 0 30px;
  display: inline-block;
  background: linear-gradient(45deg, #ff6633 0%, #ffcc00 100%);
  color: #ff8f1f;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.page-intro-heading.text-center {
  display: block;
}

.page-intro-heading h1, .page-intro-heading h2, .page-intro-heading h3, .page-intro-heading h4, .page-intro-heading h5, .page-intro-heading h6 {
  margin: 0;
}

.page-intro-heading p {
  margin: 0;
}

.page-intro-subheading {
  margin: 0 0 30px;
}

.page-intro .wrapper > *:last-child {
  margin-bottom: 0;
}

article.partner-form {
  padding: 100px 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  color: #fff;
  text-align: center;
  position: relative;
}

article.partner-form .partner-form-success, article.partner-form .error-message {
  display: none;
}

article.partner-form .partner-form-container, article.partner-form .partner-form-success {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 20px;
  padding: 60px;
  position: relative;
}

article.partner-form .partner-form-container p, article.partner-form .partner-form-success p {
  font-size: 24px;
}

@media only screen and (max-width: 767px) {
  article.partner-form .partner-form-container, article.partner-form .partner-form-success {
    padding: 20px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  article.partner-form .partner-form-container, article.partner-form .partner-form-success {
    padding: 40px;
  }
}

article.partner-form h2 {
  text-align: center;
}

article.partner-form .partner-form-about {
  margin: 30px 0;
}

article.partner-form p.partner-form-required {
  font-size: 14px;
}

@media only screen and (min-width: 768px) {
  article.partner-form form {
    width: calc((((100% - 220px) / 12) * 8) + 140px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
    margin-left: calc( (((100% - 220px) / 12) * 2) + 20px + 20px) !important;
  }
  article.partner-form form:first-child {
    margin-left: 0 !important;
  }
  article.partner-form form:first-child {
    margin-left: calc( (((100% - 220px) / 12) * 2) + 20px + 20px) !important;
  }
}

article.partner-form form p.intro {
  margin-bottom: 50px;
}

article.partner-form form .item.city {
  -ms-flex-positive: 1.5;
      flex-grow: 1.5;
}

article.partner-form form button {
  background: #fff;
  color: #ff8f1f;
}

article.partner-form form .buttons {
  margin-top: 30px;
}

article.partner-form form p.legal {
  margin-top: -20px;
  font-size: 14px;
  text-align: center;
}

article.partner-form form p.legal a {
  color: #fff;
  text-decoration: underline;
}

article.partner-form form select {
  border-radius: 16px;
  padding: 17px 15px;
  height: 58.5px;
}

article.partner-form form input {
  border: 1px solid #eaeaea;
  border-radius: 16px;
  background-color: #fff;
  transition: all 0.25s;
}

article.partner-form form input:focus, article.partner-form form input:active {
  box-shadow: 0 0 0px 1px #555;
  border-color: #eaeaea;
  outline: 0;
}

article.partner-form .combobox {
  display: inline-block;
  position: relative;
  margin-bottom: 2em;
  margin-top: 1em;
  width: 100%;
}

article.partner-form .combobox.active-markets {
  margin-bottom: 5px;
}

article.partner-form .combobox.active-markets ul {
  z-index: 1;
}

article.partner-form .markets-label {
  top: 10px !important;
  opacity: 1 !important;
}

article.partner-form .combo-input-display {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  min-height: 58.5px;
  padding: 35px 15px 10px;
  border: 1px solid #eaeaea;
  border-radius: 16px;
  background-color: #fff;
  transition: all 0.25s;
}

article.partner-form .combo-input-display:focus, article.partner-form .combo-input-display:active {
  box-shadow: 0 0 0px 1px #555;
  border-color: #eaeaea;
  outline: 0;
}

article.partner-form .combobox-input-tag {
  display: inline-block;
  border-radius: 8px;
  padding: 6px 15px;
  margin: 2px;
  font-size: 14px;
  background: #2d72f7;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.3px;
}

article.partner-form .combobox button {
  background: transparent;
  padding: 0;
  margin: 0;
  border: 0;
  position: absolute;
  right: 0;
  top: 0;
}

article.partner-form .combobox input {
  color: #757575;
  font-size: 16px;
  width: 100%;
  outline: none;
  padding: 17px 15px;
  margin: 0;
  border: 1px solid #fff;
  border-radius: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  overflow-y: scroll;
  max-height: 18em;
}

article.partner-form .combobox .toggle {
  position: absolute;
  right: 15px;
  top: 50%;
  height: 18px;
  transform: translateY(-50%);
  pointer-events: none;
}

article.partner-form .combobox .toggle svg {
  height: 18px;
  color: #555;
}

article.partner-form .toggle-list {
  position: absolute;
  right: 15px;
  top: 45%;
  height: 18px;
  pointer-events: none;
  z-index: 1;
}

article.partner-form .toggle-list svg {
  height: 18px;
  color: #555;
}

article.partner-form .toggle-arrow-fix {
  top: 25px !important;
}

article.partner-form .combobox ul {
  display: none;
  list-style: none;
  text-align: left;
  background-color: #fff;
  color: #202020;
  font-size: 16px;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 1px solid #999;
  border-radius: 5px;
  max-height: 300px;
  overflow-y: auto;
  position: absolute;
  top: calc(100% + 5px);
}

article.partner-form .combobox ul:focus {
  box-shadow: 0 0 0px 2px #555;
  border-color: #555;
  outline: 0;
}

article.partner-form .combobox li {
  color: #757575;
  font-size: 16px;
  padding: 15px 0 15px 15px;
  position: relative;
}

article.partner-form .combobox [aria-selected="true"] {
  background-color: #eaeaea;
  color: #333;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

article.partner-form .combobox [aria-selected="true"]:after {
  display: inline-block;
  position: absolute;
  right: 10px;
  width: 20px;
  height: 20px;
  content: url("data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'><path fill='%23a5e226' d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'></path></svg>");
}

article.partner-form .combobox .activedescendant {
  background: #2d72f7;
  color: #fff;
}

article.partner-form .text-box {
  padding: 14px 15px 15px 15px;
  border: 1px solid #eaeaea;
  border-radius: 16px;
  background-color: #fff;
  margin-top: 1em;
}

article.partner-form .text-box.fl-active {
  padding: 24px 15px 5px 15px;
}

article.partner-form .text-box.fl-active textarea {
  padding-top: 0px;
}

article.partner-form .text-box textarea {
  border: none;
  padding: 0px;
  border-radius: 0px;
  max-height: 80px;
}

article.partner-form .combobox-options {
  margin-bottom: 0;
  display: inline-block;
  position: relative;
  margin-top: 1em;
  width: 100%;
}

article.partner-form .combobox-options ul {
  z-index: 9999;
}

article.partner-form .combobox-options button {
  background: transparent;
  padding: 0;
  margin: 0;
  border: 0;
  position: absolute;
  right: 0;
  top: 0;
}

article.partner-form .combobox-options input {
  color: #757575;
  font-size: 16px;
  width: 100%;
  outline: none;
  padding: 17px 15px;
  margin: 0;
  border: 1px solid #fff;
  border-radius: 16px;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
  overflow-y: scroll;
  max-height: 18em;
}

article.partner-form .combobox-options .toggle {
  position: absolute;
  right: 15px;
  top: 50%;
  height: 18px;
  transform: translateY(-50%);
  pointer-events: none;
}

article.partner-form .combobox-options .toggle svg {
  height: 18px;
  color: #555;
}

article.partner-form .combobox-options ul {
  display: none;
  list-style: none;
  text-align: left;
  background-color: #fff;
  color: #202020;
  font-size: 16px;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 1px solid #999;
  border-radius: 5px;
  max-height: 300px;
  overflow-y: auto;
  position: absolute;
  top: calc(100% + 5px);
}

article.partner-form .combobox-options ul:focus {
  box-shadow: 0 0 0px 2px #555;
  border-color: #555;
  outline: 0;
}

article.partner-form .combobox-options li {
  color: #757575;
  font-size: 16px;
  padding: 15px 0 15px 15px;
  position: relative;
}

article.partner-form .combobox-options [aria-selected="true"] {
  background-color: #eaeaea;
  color: #333;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

article.partner-form .combobox-options [aria-selected="true"]:after {
  display: inline-block;
  position: absolute;
  right: 10px;
  width: 20px;
  height: 20px;
  content: url("data:image/svg+xml; utf8, <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'><path fill='%23a5e226' d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'></path></svg>");
}

article.partner-form .combobox-options .activedescendant {
  background: #2d72f7;
  color: #fff;
}

article.partner-form .selections + span.error {
  display: none;
}

article.partner-form .not-required + span.error {
  display: none !important;
}

article.partner-form span#businessfocus-error + .toggle {
  top: 29.25px !important;
}

@media only screen and (min-width: 1024px) {
  .product-cards {
    margin: 100px 0;
  }
}

.product-cards-header {
  margin-bottom: 65px;
}

@media only screen and (max-width: 767px) {
  .product-cards-header {
    margin-bottom: 20px;
  }
}

@media only screen and (min-width: 1024px) {
  .product-cards-header .col {
    width: calc((((100% - 220px) / 12) * 5) + 80px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  .product-cards-header .col:first-child {
    margin-left: 0 !important;
  }
  .product-cards-header .col + .col {
    width: calc((((100% - 220px) / 12) * 7) + 120px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  .product-cards-header .col + .col:first-child {
    margin-left: 0 !important;
  }
  .product-cards-header .row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
}

.product-cards-filters {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  -ms-flex-direction: row;
      flex-direction: row;
}

.product-cards-filters-form {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.product-cards-filters-form > * {
  padding: 10px 20px 10px 0;
}

@media only screen and (min-width: 1024px) {
  .product-cards-filters-form {
    max-width: 80%;
  }
  .product-cards-filters-form > * {
    padding: 10px;
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
}

.product-cards-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0px 6px 16px rgba(0, 0, 0, 0.16);
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.product-cards-list > [class*="is-"] {
  min-width: 0;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

.product-cards-list > [class*="is-"]:last-child {
  margin-bottom: 0;
}

.product-cards-list .is-full {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
}

.product-cards-list .is-1\/2 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  max-width: 50%;
}

.product-cards-list .is-1\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  max-width: 33.3333%;
}

.product-cards-list .is-2\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 66.6666%;
      flex-basis: 66.6666%;
  max-width: 66.6666%;
}

.product-cards-list .is-1\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  max-width: 25%;
}

.product-cards-list .is-3\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%;
  max-width: 75%;
}

.product-cards-list .is-1\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 16.66666%;
      flex-basis: 16.66666%;
  max-width: 16.66666%;
}

.product-cards-list .is-5\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 83.3333%;
      flex-basis: 83.3333%;
  max-width: 83.3333%;
}

.product-cards-list .is-1\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  max-width: 20%;
}

.product-cards-list .is-2\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
  max-width: 40%;
}

.product-cards-list .is-3\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
  max-width: 60%;
}

.product-cards-list .is-4\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
  max-width: 80%;
}

@media screen and (min-width: 568px) {
  .product-cards-list .xs\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-cards-list .xs\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-cards-list .xs\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-cards-list .xs\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-cards-list .xs\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-cards-list .xs\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-cards-list .xs\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-cards-list .xs\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-cards-list .xs\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-cards-list .xs\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-cards-list .xs\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-cards-list .xs\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 768px) {
  .product-cards-list .sm\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-cards-list .sm\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-cards-list .sm\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-cards-list .sm\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-cards-list .sm\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-cards-list .sm\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-cards-list .sm\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-cards-list .sm\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-cards-list .sm\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-cards-list .sm\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-cards-list .sm\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-cards-list .sm\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1024px) {
  .product-cards-list .md\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-cards-list .md\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-cards-list .md\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-cards-list .md\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-cards-list .md\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-cards-list .md\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-cards-list .md\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-cards-list .md\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-cards-list .md\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-cards-list .md\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-cards-list .md\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-cards-list .md\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1280px) {
  .product-cards-list .lg\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-cards-list .lg\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-cards-list .lg\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-cards-list .lg\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-cards-list .lg\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-cards-list .lg\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-cards-list .lg\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-cards-list .lg\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-cards-list .lg\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-cards-list .lg\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-cards-list .lg\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-cards-list .lg\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1360px) {
  .product-cards-list .xl\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-cards-list .xl\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-cards-list .xl\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-cards-list .xl\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-cards-list .xl\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-cards-list .xl\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-cards-list .xl\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-cards-list .xl\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-cards-list .xl\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-cards-list .xl\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-cards-list .xl\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-cards-list .xl\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media only screen and (min-width: 1024px) {
  .product-cards-list.single-card {
    width: 50%;
  }
}

.product-card {
  position: relative;
  padding: 40px;
  border-radius: 0;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

@media only screen and (max-width: 767px) {
  .product-card {
    padding: 30px;
  }
}

@media only screen and (min-width: 1024px) {
  .product-card.is-1\/2 .product-card-header {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
  .product-card.is-1\/2 .product-card-header img {
    margin-right: 15px;
  }
}

.product-card-header h1, .product-card-header h2, .product-card-header h3, .product-card-header h4, .product-card-header h5, .product-card-header h6 {
  margin-top: 0;
}

.product-card-tag {
  position: absolute;
  top: 0;
  right: 0;
  background: #2D72F7;
  color: #fff;
  font-size: 10px;
  padding: 5px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.product-card-content ul, .product-card-content ol {
  list-style-type: initial;
}

.product-card-button {
  margin-top: auto;
}

.product-card-button .button {
  white-space: normal;
  margin-top: 10px;
}

@media only screen and (min-width: 1024px) {
  .product-highlights {
    margin: 100px 0;
  }
  .product-highlights .col {
    width: calc((((100% - 220px) / 12) * 5) + 80px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  .product-highlights .col:first-child {
    margin-left: 0 !important;
  }
  .product-highlights .col + .col {
    width: calc((((100% - 220px) / 12) * 7) + 120px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  .product-highlights .col + .col:first-child {
    margin-left: 0 !important;
  }
}

.product-highlights-heading {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .product-highlights-heading {
    margin-bottom: 20px;
  }
}

.product-highlights-heading.title-top {
  text-align: center;
}

.product-highlights-intro {
  padding-top: 40px;
  margin-bottom: 40px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

@media only screen and (max-width: 767px) {
  .product-highlights-intro {
    padding-top: 20px;
  }
}

.product-highlights-intro::after {
  content: '';
  line-height: 0;
  border-top: 2px solid black;
  -ms-flex: 1;
      flex: 1;
  margin-left: 10px;
}

.product-highlights-list {
  list-style: none;
  margin: 0;
  padding: 0;
  list-style: none;
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -25px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.product-highlights-list > [class*="is-"] {
  padding: 0 25px;
  min-width: 0;
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
}

.product-highlights-list > [class*="is-"]:last-child {
  margin-bottom: 0;
}

.product-highlights-list .is-full {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
  max-width: 100%;
}

.product-highlights-list .is-1\/2 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  max-width: 50%;
}

.product-highlights-list .is-1\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 33.3333%;
      flex-basis: 33.3333%;
  max-width: 33.3333%;
}

.product-highlights-list .is-2\/3 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 66.6666%;
      flex-basis: 66.6666%;
  max-width: 66.6666%;
}

.product-highlights-list .is-1\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  max-width: 25%;
}

.product-highlights-list .is-3\/4 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 75%;
      flex-basis: 75%;
  max-width: 75%;
}

.product-highlights-list .is-1\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 16.66666%;
      flex-basis: 16.66666%;
  max-width: 16.66666%;
}

.product-highlights-list .is-5\/6 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 83.3333%;
      flex-basis: 83.3333%;
  max-width: 83.3333%;
}

.product-highlights-list .is-1\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  max-width: 20%;
}

.product-highlights-list .is-2\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
  max-width: 40%;
}

.product-highlights-list .is-3\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 60%;
      flex-basis: 60%;
  max-width: 60%;
}

.product-highlights-list .is-4\/5 {
  -ms-flex-positive: 0;
      flex-grow: 0;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
  max-width: 80%;
}

@media screen and (min-width: 568px) {
  .product-highlights-list .xs\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-highlights-list .xs\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-highlights-list .xs\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-highlights-list .xs\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-highlights-list .xs\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-highlights-list .xs\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-highlights-list .xs\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-highlights-list .xs\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-highlights-list .xs\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-highlights-list .xs\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-highlights-list .xs\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-highlights-list .xs\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 768px) {
  .product-highlights-list .sm\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-highlights-list .sm\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-highlights-list .sm\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-highlights-list .sm\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-highlights-list .sm\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-highlights-list .sm\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-highlights-list .sm\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-highlights-list .sm\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-highlights-list .sm\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-highlights-list .sm\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-highlights-list .sm\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-highlights-list .sm\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1024px) {
  .product-highlights-list .md\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-highlights-list .md\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-highlights-list .md\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-highlights-list .md\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-highlights-list .md\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-highlights-list .md\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-highlights-list .md\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-highlights-list .md\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-highlights-list .md\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-highlights-list .md\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-highlights-list .md\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-highlights-list .md\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1280px) {
  .product-highlights-list .lg\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-highlights-list .lg\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-highlights-list .lg\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-highlights-list .lg\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-highlights-list .lg\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-highlights-list .lg\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-highlights-list .lg\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-highlights-list .lg\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-highlights-list .lg\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-highlights-list .lg\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-highlights-list .lg\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-highlights-list .lg\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1360px) {
  .product-highlights-list .xl\:is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .product-highlights-list .xl\:is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .product-highlights-list .xl\:is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .product-highlights-list .xl\:is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .product-highlights-list .xl\:is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .product-highlights-list .xl\:is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .product-highlights-list .xl\:is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .product-highlights-list .xl\:is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .product-highlights-list .xl\:is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .product-highlights-list .xl\:is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .product-highlights-list .xl\:is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .product-highlights-list .xl\:is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media only screen and (max-width: 767px) {
  .product-highlights-list .product-highlight {
    margin-bottom: 30px;
  }
}

.product-highlights-list p {
  font-size: 16px;
}

.product-highlights-disclaimer {
  margin-top: 50px;
}

@media only screen and (min-width: 1024px) {
  .product-highlights-disclaimer {
    margin-top: 100px;
  }
}

.product-highlights-alt .product-highlights-heading {
  text-align: center;
  margin-bottom: 80px;
}

@media only screen and (max-width: 767px) {
  .product-highlights-alt .product-highlights-heading {
    margin-bottom: 20px;
    text-align: left;
  }
}

@media only screen and (min-width: 1024px) {
  .services-availability {
    margin: 100px 0;
  }
}

.services-availability .services {
  position: relative;
  border-radius: 40px;
}

.services-availability .services-content {
  padding: 60px 120px;
  text-align: center;
  color: #fff;
  position: relative;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .services-availability .services-content {
    padding: 60px 80px;
  }
}

@media only screen and (max-width: 767px) {
  .services-availability .services-content {
    padding: 40px 30px;
  }
}

.services-availability .services-mask {
  background: no-repeat bottom right url(../images/services-mask.svg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.services-availability .services-heading {
  margin-bottom: 45px;
}

.services-availability .services form {
  margin: 0 auto;
}

.services-availability .services form .item {
  position: relative;
}

.services-availability .services form .item + .item {
  -ms-flex: 0;
      flex: 0;
}

@media only screen and (max-width: 767px) {
  .services-availability .services form .item + .item {
    margin-top: 20px;
  }
}

.services-availability .services form label {
  position: absolute;
  top: -22px;
  font-size: 14px;
}

.services-availability .services form input[type="text"] {
  border-radius: 5px;
}

.services-availability .services form button {
  background: linear-gradient(10deg, #33ccff 0%, #a542ef 100%);
  color: #fff;
}

@media only screen and (min-width: 1024px) {
  .services-availability .services form {
    width: 750px;
  }
}

@media only screen and (min-width: 1024px) {
  .setup-steps {
    margin: 100px 0;
  }
}

.setup-steps-header {
  text-align: center;
  margin-bottom: 60px;
}

@media only screen and (max-width: 767px) {
  .setup-steps-header {
    margin-bottom: 30px;
  }
}

.setup-steps ol {
  list-style: none;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: setup-steps-counter;
}

.setup-steps ol > li {
  position: relative;
  counter-increment: setup-steps-counter;
  margin-bottom: 40px;
  margin-left: 20%;
}

@media only screen and (max-width: 767px) {
  .setup-steps ol > li {
    margin-bottom: 20px;
  }
}

.setup-steps ol > li:last-child {
  margin-bottom: 0;
}

.setup-steps ol > li::before {
  content: counter(setup-steps-counter);
  display: inline-block;
  background: linear-gradient(45deg, #ff6633 0%, #ffcc00 100%);
  color: #ff8f1f;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
  font-size: 46px;
  position: absolute;
  left: -10%;
  top: -12px;
}

@media only screen and (max-width: 767px) {
  .setup-steps ol > li::before {
    left: -56px;
  }
}

article.sidebar-nav {
  margin-top: 0;
}

article.sidebar-nav nav {
  background: #FFFFFF;
  box-shadow: 0px 15px 34px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(0, 0, 0, 0.02);
  border-radius: 16px;
  padding: 20px 40px;
}

article.sidebar-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

article.sidebar-nav ul > li {
  position: relative;
}

article.sidebar-nav ul > li a {
  display: block;
  position: relative;
  padding: 20px 0;
}

article.sidebar-nav ul > li > a:hover {
  font-weight: bold;
  color: #000;
}

article.sidebar-nav ul > li:first-child {
  padding-top: 0;
}

article.sidebar-nav ul > li:last-child {
  padding-bottom: 0;
}

article.sidebar-nav ul > li:not(.has-sub-nav) > a {
  position: relative;
}

article.sidebar-nav ul > li:not(.has-sub-nav) > a:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: 0;
  left: 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
}

article.sidebar-nav ul > li:not(.has-sub-nav) > a:before {
  opacity: 0;
}

article.sidebar-nav ul > li:not(.has-sub-nav) > a:hover > a, article.sidebar-nav ul > li:not(.has-sub-nav) > a.selected > a {
  font-weight: bold;
  color: #000;
}

article.sidebar-nav ul > li:not(.has-sub-nav) > a:hover::before, article.sidebar-nav ul > li:not(.has-sub-nav) > a.selected::before {
  bottom: 14px;
  opacity: 1;
}

article.sidebar-nav ul > li.has-sub-nav > a, article.sidebar-nav ul > li.has-sub-nav.selected > a {
  position: relative;
}

article.sidebar-nav ul > li.has-sub-nav > a:before, article.sidebar-nav ul > li.has-sub-nav.selected > a:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: 0;
  left: 0;
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
}

article.sidebar-nav ul > li.has-sub-nav > a::before, article.sidebar-nav ul > li.has-sub-nav.selected > a::before {
  opacity: 0;
  bottom: 11px;
}

article.sidebar-nav ul > li.has-sub-nav > a:hover::before, article.sidebar-nav ul > li.has-sub-nav.selected > a:hover::before {
  bottom: 11px;
  opacity: 1;
}

article.sidebar-nav ul ul {
  margin-left: 22px;
}

article.sidebar-nav ul.is-divided > li.has-sub-nav > a:hover::before {
  bottom: -2px;
}

article.sidebar-nav ul.is-divided > li.has-sub-nav.selected > a::before {
  opacity: 1;
}

article.sidebar-nav ul.is-divided > li > a:hover::before {
  bottom: -2px;
}

article.sidebar-nav ul.has-description:not(.is-divided) > li > a:hover::before {
  bottom: 14px;
}

article.sidebar-nav ul.has-description.is-divided > li:hover > a {
  position: static;
  font-weight: bold;
  color: #000;
}

article.sidebar-nav ul.has-description.is-divided > li:hover > a::before {
  bottom: -2px;
  opacity: 1;
}

article.sidebar-nav .sidebar-nav-list {
  transition: .3s ease-in-out all;
}

article.sidebar-nav .sidebar-nav-list.is-divided > li {
  border-bottom: 1px solid #ccc;
}

article.sidebar-nav .sidebar-nav-list.is-divided > li:last-child {
  border-bottom-color: transparent;
}

article.sidebar-nav .sidebar-nav-list.is-divided > li > a {
  font-weight: 600;
}

article.sidebar-nav .sidebar-nav-list.is-divided > li.selected::before, article.sidebar-nav .sidebar-nav-list.is-divided > li:not(.has-sub-nav):hover::before {
  bottom: -2px;
}

article.sidebar-nav .sidebar-nav-list .has-sub-nav > a {
  font-weight: 600;
}

article.sidebar-nav .sidebar-nav-list .has-sub-nav > span:not([aria-expanded="false"]) + a,
article.sidebar-nav .sidebar-nav-list .has-sub-nav > span:not([aria-expanded="false"]) + a:hover {
  padding-bottom: 10px;
}

article.sidebar-nav .sidebar-nav-list .has-sub-nav > span:not([aria-expanded="false"]) + a::before,
article.sidebar-nav .sidebar-nav-list .has-sub-nav > span:not([aria-expanded="false"]) + a:hover::before {
  bottom: 4px;
  opacity: 1;
}

article.sidebar-nav .sidebar-nav-list .has-sub-nav:hover > .sidebar-accordion-toggle::after {
  border-left-color: #000;
}

article.sidebar-nav .sidebar-accordion-toggle {
  position: absolute;
  width: 15px;
  height: 20px;
  top: 22px;
  left: -20px;
  cursor: pointer;
  outline: 0;
}

article.sidebar-nav [data-accordion-trigger] {
  transition: .3s ease-in-out all;
}

article.sidebar-nav [data-accordion-trigger]::after {
  position: absolute;
  left: 0;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  pointer-events: none;
  border-color: rgba(45, 114, 247, 0);
  border-left-color: #2D72F7;
  border-width: 10px;
  margin-top: -6px;
  transition: .3s ease-in-out transform;
  transform-origin: 4px 5px;
  border-top-width: 6px;
  border-bottom-width: 6px;
}

article.sidebar-nav [data-accordion-trigger][aria-expanded="true"]::after {
  transform: rotateZ(90deg);
}

article.sidebar-nav .sidebar-nav-link-description {
  font-size: 14px;
  margin-bottom: 25px;
  margin-top: -10px;
}

.state-listing .state-listing-header {
  margin: 0 auto 50px;
  max-width: 815px;
  text-align: center;
}

.state-listing .title {
  color: #fff;
  text-align: center;
  margin-bottom: 25px;
  font-size: 48px;
  display: inline-block;
  background: linear-gradient(45deg, #ff6633 0%, #ffcc00 100%);
  color: #ff8f1f;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media only screen and (max-width: 767px) {
  .state-listing .title {
    font-size: 20px;
  }
}

.state-listing .sub-title {
  font-size: 16px;
}

@media only screen and (max-width: 767px) {
  .state-listing .sub-title {
    font-size: 18px;
  }
}

.state-listing .state-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

@media only screen and (min-width: 768px) {
  .state-listing .state-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.state-listing .state-item {
  -ms-flex: 0 0 33.3333%;
      flex: 0 0 33.3333%;
  margin-bottom: 20px;
  text-align: center;
}

.state-listing .state {
  padding: 15px;
}

.state-listing .state-media {
  border-radius: 10px;
  -o-object-fit: cover;
     object-fit: cover;
  line-height: 0;
  overflow: hidden;
}

.state-listing .state-image {
  width: 100%;
}

.state-listing .state-title {
  font-size: 24px;
  color: #2D72F7;
}

.state-listing .state-description {
  padding: 0 30px;
}

@media only screen and (max-width: 767px) {
  .state-listing .state-map {
    margin-bottom: 20px;
  }
}

@media all and (-ms-high-contrast: none) {
  .state-listing #map {
    max-width: 100%;
    width: 1158px;
    height: 643px;
  }
}

.state-listing .state {
  fill: #D3D3D3;
  transition: .2s ease-in-out all;
  transform-origin: center;
  transform-box: fill-box;
}

.state-listing .state.is-active {
  fill: #FF8200;
  cursor: pointer;
}

.state-listing .state.is-active.is-hover {
  fill: #292929;
  transform: scale(1.15);
  stroke: #fff;
  stroke-width: .75;
}

.state-listing .state-tooltip {
  position: absolute;
  display: block;
  font-size: 14px;
  color: #fff;
  padding: 5px 20px;
  line-height: 1.25;
  background: linear-gradient(45deg, #ff6633 20%, #ffcc00 80%);
}

@media only screen and (max-width: 767px) {
  .state-listing .state-tooltip {
    line-height: 1.5;
  }
}

@media only screen and (max-width: 767px) {
  .state-listing a {
    pointer-events: none;
  }
}

.state-item .info-card-title {
  font-size: 24px;
}

@media only screen and (min-width: 768px) {
  article.testimonial {
    margin: 100px 0;
  }
}

@media only screen and (min-width: 768px) {
  article.testimonial .title {
    width: calc((((100% - 220px) / 12) * 6) + 100px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  article.testimonial .title:first-child {
    margin-left: 0 !important;
  }
}

article.testimonial .title h1, article.testimonial .title h2, article.testimonial .title h3, article.testimonial .title h4, article.testimonial .title h5, article.testimonial .title h6 {
  font-size: 56px;
  line-height: 72px;
  display: inline-block;
  background: linear-gradient(45deg, #33ccff 0%, #a542ef 100%);
  color: #6195f9;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media only screen and (max-width: 767px) {
  article.testimonial .title h1, article.testimonial .title h2, article.testimonial .title h3, article.testimonial .title h4, article.testimonial .title h5, article.testimonial .title h6 {
    font-size: 32px;
    line-height: 1.25em;
  }
}

article.testimonial .content {
  position: relative;
  z-index: 0;
}

@media only screen and (min-width: 768px) {
  article.testimonial .content {
    width: calc((((100% - 220px) / 12) * 6) + 100px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 20px !important;
  }
  article.testimonial .content:first-child {
    margin-left: 0 !important;
  }
}

article.testimonial .content img {
  border-radius: 50%;
  max-width: 200px;
  max-height: 200px;
}

article.testimonial .content figure.quote {
  padding: 40px 0 60px 0;
}

@media only screen and (max-width: 767px) {
  article.testimonial .content figure.quote {
    padding: 20px 0 40px;
  }
}

article.testimonial .content figure.quote p {
  font-size: 16px;
  margin-top: 0;
}

article.testimonial .tns-nav button, article.testimonial .tns-controls button {
  background: none;
  padding: 0;
  color: #333;
  box-shadow: none;
}

article.testimonial .tns-slider.is-transitioning .tns-item {
  transition: 1s ease-in-out opacity;
}

article.testimonial .tns-nav {
  counter-reset: testimonial-nav-counter;
}

article.testimonial .tns-nav button {
  counter-increment: testimonial-nav-counter;
  min-width: 32px;
  min-height: 32px;
  border-radius: 50%;
  color: rgba(0, 0, 0, 0.4);
  font-weight: bold;
  text-align: center;
}

article.testimonial .tns-nav button:before {
  content: counter(testimonial-nav-counter);
}

article.testimonial .tns-nav .tns-nav-active {
  background: linear-gradient(10deg, #33ccff 0%, #a542ef 100%);
  color: #fff;
}

article.testimonial .tns-nav-controls-container {
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  padding-left: 32px;
  padding-right: 32px;
}

article.testimonial .tns-nav-controls-container.first-selected {
  padding-left: 0;
}

article.testimonial .tns-controls {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

article.testimonial .tns-controls [data-controls="prev"],
article.testimonial .tns-controls [data-controls="next"] {
  position: absolute;
  min-width: 32px;
  min-height: 32px;
}

article.testimonial .tns-controls [data-controls="prev"] {
  left: 0;
}

article.testimonial .tns-controls [data-controls="next"] {
  right: 0;
}

article.testimonial .tns-controls button[disabled] {
  display: none;
}

article.testimonial .tns-item {
  opacity: 0;
}

article.testimonial .tns-slide-active {
  opacity: 1;
}

article.testimonial .tns-outer {
  position: relative;
}

article.text-columns h4 {
  font-size: 20px;
}

@media only screen and (min-width: 768px) {
  article.text-columns .col {
    width: calc((((100% - 105%) / 8) * 4) + 45% - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 15% !important;
  }
  article.text-columns .col:first-child {
    margin-left: 0 !important;
  }
}

article.text-columns[class*="bg-"] {
  padding: 40px 0;
}

@media screen and (min-width: 1024px) {
  article.text-columns[class*="bg-"] {
    padding: 60px 0;
  }
}

@media screen and (min-width: 1024px) {
  article.text-columns.align-middle .wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
  }
}

article.text-columns.get-in-touch {
  text-align: center;
}

@media screen and (min-width: 1024px) {
  article.text-columns.get-in-touch {
    text-align: left;
  }
}

@media screen and (min-width: 768px) {
  article.text {
    margin-top: 80px;
  }
}

article.text .sidebar {
  margin-top: 60px;
}

@media screen and (min-width: 1024px) {
  article.text .sidebar {
    margin-top: 0;
  }
}

article.text .text-header h1 {
  margin-bottom: 15px;
  margin-top: 0;
  display: inline-block;
  background: linear-gradient(45deg, #ff6633 0%, #ffcc00 100%);
  color: #ff8f1f;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 48px;
  line-height: 1.15;
  padding-bottom: 3px;
}

@media only screen and (max-width: 767px) {
  article.text .text-header h1 {
    font-size: 36px;
  }
}

article.text .text-header-description {
  margin-top: 10px;
}

article.text .text-content h2 {
  font-size: 36px;
  margin-top: 60px;
}

@media only screen and (max-width: 767px) {
  article.text .text-content h2 {
    font-size: 30px;
  }
}

article.text .text-content h3 {
  font-size: 28px;
}

@media only screen and (max-width: 767px) {
  article.text .text-content h3 {
    font-size: 24px;
  }
}

article.text .text-content h4 {
  font-size: 24px;
}

@media only screen and (max-width: 767px) {
  article.text .text-content h4 {
    font-size: 20px;
  }
}

article.text .text-content img + p {
  margin-top: 0;
}

article.text .text-content a {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: none;
}

article.text .text-content ul {
  font-size: 16px;
  line-height: 1.5em;
}

article.text .text-content li {
  margin-bottom: 8px;
}

article.text .text-content .box,
article.text .text-content .blockquote,
article.text .text-content .blockquote-blue {
  display: block;
  padding: 30px;
  margin: 50px 0;
  border-radius: 10px;
  box-shadow: 5px 10px 25px rgba(0, 0, 0, 0.15);
}

@media screen and (min-width: 1024px) {
  article.text .text-content .box,
  article.text .text-content .blockquote,
  article.text .text-content .blockquote-blue {
    padding: 50px;
    box-shadow: 10px 15px 25px rgba(0, 0, 0, 0.15);
  }
}

article.text .text-content .box-golden-hour,
article.text .text-content .blockquote-golden-hour {
  background: linear-gradient(10deg, #ff6633 0%, #ffcc00 100%);
  color: #292929;
}

article.text .text-content .box-blue-hour,
article.text .text-content .blockquote-blue-hour,
article.text .text-content .blockquote-blue {
  background: linear-gradient(10deg, #333399 0%, #33ccff 100%);
  color: #fff;
}

article.text .text-content .box-aurora,
article.text .text-content .blockquote-aurora {
  background: linear-gradient(10deg, #33ccff 0%, #a542ef 100%);
  color: #fff;
}

article.text .text-content .box-plen-air,
article.text .text-content .blockquote-plen-air {
  background: linear-gradient(10deg, #04a5ff 0%, #6cffa9 100%);
  color: #292929;
}

article.text .text-content .box-green-shades,
article.text .text-content .blockquote-green-shades {
  background: linear-gradient(10deg, #16481a 0%, #a5e226 100%);
  color: #fff;
}

article.text .text-content .box-stone-white,
article.text .text-content .blockquote-stone-white {
  background: linear-gradient(201.18deg, #fff 49%, #b3b3b3 141%);
  color: #292929;
}

article.text .text-content .image-left {
  float: left;
  margin: 10px 30px 20px 0;
}

article.text .text-content .image-right {
  float: right;
  margin: 10px 0 20px 30px;
}

article.text .text-content .image-full {
  width: 100%;
  margin: 0 0 30px;
}

article.text .text-content > *:last-child {
  margin-bottom: 0;
}

article.text .text-meta {
  list-style: none;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
  display: -ms-flexbox;
  display: flex;
  color: #767676;
  font-size: 12px;
  margin-bottom: 25px;
  letter-spacing: 0.1em;
}

@media only screen and (max-width: 767px) {
  article.text .text-meta {
    display: block;
    margin-bottom: 0;
  }
}

article.text .text-meta li {
  margin-right: 34px;
}

@media only screen and (max-width: 767px) {
  article.text .text-meta li {
    margin-bottom: 5px;
  }
}

@media screen and (min-width: 768px) {
  article.text .addthis_inline_share_toolbox {
    margin-bottom: 30px;
  }
}

article.text .text-image {
  margin-bottom: 30px;
  border-radius: 10px;
}

article.text .text-image p:last-child {
  margin-bottom: 0;
}

article.text .text-disclaimer {
  font-size: 13px;
}

article.text .text-disclaimer.black {
  color: #292929;
}

article.text .text-disclaimer.grey {
  color: #8f8f8f;
}

article.text .wrapper > *:first-child {
  margin-top: 0;
}

@media only screen and (min-width: 768px) {
  article.text.has-sidebar .text-header {
    width: calc((((100% - 605px) / 12) * 9) + 440px - .1px);
    box-sizing: border-box;
    float: left;
    margin-left: 55px !important;
  }
  article.text.has-sidebar .text-header:first-child {
    margin-left: 0 !important;
  }
}

@media screen and (min-width: 768px) {
  article.text.is-blog-article {
    font-size: 20px;
  }
}

article.text.is-faq-article header {
  margin-top: 0;
  margin-bottom: 40px;
}

@media screen and (min-width: 1024px) {
  article.text.is-faq-article header {
    margin-bottom: 60px;
  }
}

article.text.is-faq-article h2 {
  margin-bottom: 30px;
}

article.text.is-faq-article .popular-faqs-list {
  margin-bottom: 80px;
}

article.text.is-faq-article .mainContent *:last-child, article.text.is-faq-article .sidebar *:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
  article.text.is-faq-article .mainContent {
    padding-right: 50px;
  }
}

article.text.is-faq-search header {
  margin-bottom: 20px;
}

@media screen and (min-width: 1024px) {
  article.text.is-faq-search header {
    margin-bottom: 30px;
  }
}

article.text.is-faq-search .faq-listing {
  margin-top: 60px;
}

@media only screen and (min-width: 1024px) {
  article.video {
    margin: 100px 0;
  }
}

.video {
  text-align: center;
}

.video-content {
  margin-bottom: 50px;
}

.video-container {
  position: relative;
  width: 100%;
  height: 0;
}

.video-container.is-16x9 {
  padding-bottom: 56.25%;
}

.video-container > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.at-only:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

[data-modal-open][hidden] {
  display: none;
}

body.modal-open {
  overflow: hidden;
}

.js [data-modal],
.a11y-modal {
  -webkit-overflow-scrolling: touch;
  background: #fff;
  left: 20px;
  right: 20px;
  top: 20px;
  box-shadow: 0 0 1800px 18000px rgba(0, 0, 0, 0.4);
  margin: auto;
  max-height: 100%;
  max-width: 660px;
  opacity: 1;
  overflow: auto;
  padding: 40px;
  position: fixed;
  transform: translateY(0%);
  visibility: visible;
  z-index: 1000;
  border-radius: 20px;
}

@media only screen and (min-width: 768px) {
  .js [data-modal],
  .a11y-modal {
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    transition: opacity .2s ease-in-out, transform .2s ease-in-out;
    bottom: auto;
    left: 0;
    right: 0;
    width: 100%;
  }
}

.js [data-modal][hidden] .a11y-modal[hidden] {
  display: block;
  opacity: 0;
  pointer-events: none;
  transform: translateY(15vh);
  visibility: hidden;
}

.a11y-modal__close-btn {
  border: none;
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  text-transform: none;
  color: inherit;
  font-size: inherit;
  font-weight: normal;
  white-space: initial;
  border-radius: 0;
  text-align: left;
}

.is-icon-btn {
  background: none;
  border: none;
  height: 2em;
  padding: 0;
  position: absolute;
  right: .75em;
  top: .75em;
  width: 2em;
}

[data-modal-x] {
  border-right: 2px solid;
  bottom: 0;
  display: block;
  height: 2em;
  left: 0;
  margin: auto;
  pointer-events: none;
  position: relative;
  right: 0;
  top: 0;
  transform: rotate(45deg);
  width: 2px;
}

[data-modal-x]:after {
  border-right: 2px solid;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: rotate(-90deg);
  width: 100%;
}

.blog-featured-heading {
  margin-top: 0;
  margin-bottom: 35px;
}

@media screen and (min-width: 768px) {
  .blog-featured-heading {
    margin-bottom: 55px;
  }
}

.blog-featured-cards {
  margin-bottom: -30px;
}

.blog-featured-cards .flex-grid > * > * {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .blog-featured-cards .flex-grid > * {
    display: -ms-flexbox;
    display: flex;
  }
  .blog-featured-cards .flex-grid > * .info-card {
    -ms-flex: 1;
        flex: 1;
  }
}

.blog-featured.is-large {
  margin-top: -25px;
}

@media screen and (min-width: 768px) {
  .blog-featured.is-large {
    margin-top: -45px;
  }
}

.blog-featured.is-large .blog-featured-cards .flex-grid > * > * {
  margin-bottom: 30px;
}

@media screen and (min-width: 768px) {
  .blog-featured.is-large .blog-featured-cards .flex-grid > * > * {
    margin-bottom: 55px;
  }
}

@media screen and (min-width: 768px) {
  .blog-featured.is-large .blog-featured-cards .info-card-content {
    min-height: 350px;
    padding: 60px 100px;
  }
}

.reading-list {
  background: #F5F5F5;
  padding: 60px 0;
}

.reading-list-title {
  letter-spacing: -2px;
  color: #292929;
  margin-bottom: 50px;
}

.reading-list-list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  transform: translate3d(0%, 0px, 0px);
}

@media screen and (min-width: 768px) {
  .reading-list .col:not(.tns-item) {
    width: 25%;
    float: left;
    padding-right: 20px;
  }
  .reading-list .col:not(.tns-item):nth-child(n+5) {
    display: none;
  }
}

.reading-list-card {
  background: linear-gradient(230.21deg, #33CCFF 7.99%, #333399 100%);
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.14);
  border-radius: 8px;
  color: #fff;
  padding: 30px;
  text-align: left;
  position: relative;
  min-height: 350px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  text-decoration: none;
}

.reading-list-card:hover, .reading-list-card:focus, .reading-list-card:active, .reading-list-card:visited {
  text-decoration: none;
  color: #fff;
}

.reading-list-card .info-card-header img {
  display: block;
  margin: 0 auto;
}

.reading-list-card .info-card-title {
  color: #fff;
  text-align: center;
  margin-top: 15px;
}

.reading-list-card .info-card-description {
  padding: 0;
  margin-bottom: 10px;
}

.reading-list-card .info-card-content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

.reading-list-card .info-card-meta {
  background-color: white;
  padding: 10px 30px;
  border: 0;
  border-radius: 15px;
}

.reading-list-card .info-card-meta-count {
  color: black;
}

.reading-list-card:after {
  content: '';
  position: absolute;
  top: 9px;
  left: 9px;
  bottom: -9px;
  right: -9px;
  z-index: -1;
  background: linear-gradient(230.21deg, #33CCFF 7.99%, #333399 100%);
  border-radius: 8px;
}

.reading-list-card-listing {
  list-style: none;
  margin: 25px 0 0;
  padding: 0;
  counter-reset: reading-list-counter;
}

.reading-list-card-listing a, .reading-list-card-listing a:focus, .reading-list-card-listing a:hover, .reading-list-card-listing a:active {
  color: #fff;
}

.reading-list-card-listing li {
  position: relative;
  counter-increment: reading-list-counter;
  padding-left: 25px;
  margin-bottom: 20px;
}

.reading-list-card-listing li:last-child {
  margin-bottom: 0;
}

.reading-list-card-listing li.is-current {
  font-weight: 600;
}

.reading-list-card-listing li::before {
  position: absolute;
  left: 0;
  content: counter(reading-list-counter) ".";
}

.reading-list .tns-ovh {
  padding-bottom: 9px;
  padding-right: 9px;
  overflow-y: visible;
  box-shadow: 0 0 44px rgba(95, 95, 95, 0.57);
  background: rgba(0, 0, 0, 0.166);
  border-radius: 8px 20px;
}

.reading-list .tns-controls {
  text-align: center;
  margin: 35px -5px 0;
  outline: 0;
}

.reading-list [data-controls] {
  background: #FFFFFF;
  border-radius: 8px;
  color: #595858;
  box-shadow: none;
  padding: 11px 20px;
  line-height: 0;
  margin: 0 5px;
}

.reading-list [data-controls]:disabled {
  cursor: default;
}

.faq {
  margin-left: 85px;
}

@media only screen and (max-width: 1023px) {
  .faq {
    margin-left: 40px;
  }
}

.faq-heading {
  margin-bottom: 50px;
}

.faq-list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-bottom: 100px;
}

@media only screen and (max-width: 1023px) {
  .faq-list {
    margin-bottom: 50px;
  }
}

.faq-list-item {
  margin-bottom: 50px;
}

.faq-list-item:last-child {
  margin-bottom: 0;
}

button.faq-trigger {
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  text-transform: none;
  color: inherit;
  font-size: inherit;
  font-weight: normal;
  white-space: initial;
  border-radius: 0;
  text-align: left;
  outline: 0;
}

.faq-trigger {
  position: relative;
  display: block;
  margin: 0;
  font-weight: 600;
  font-family: acumin-pro-condensed, acumin-pro, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.faq-trigger[data-accordion-trigger] {
  margin-left: -85px;
  padding-left: 85px;
  cursor: pointer;
}

@media only screen and (max-width: 1023px) {
  .faq-trigger[data-accordion-trigger] {
    margin-left: -40px;
    padding-left: 40px;
  }
}

.faq-trigger[data-accordion-trigger]::after {
  position: absolute;
  left: 0;
  top: 12px;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  pointer-events: none;
  border-color: rgba(45, 114, 247, 0);
  border-left-color: #2D72F7;
  border-width: 10px;
  margin-top: -6px;
  transition: .3s ease-in-out all;
  transform-origin: 4px 5px;
  border-top-width: 6px;
  border-bottom-width: 6px;
}

.faq-trigger[data-accordion-trigger][aria-expanded="true"]::after {
  transform: rotateZ(90deg);
}

.faq-panel {
  color: #767676;
  margin-top: 5px;
  transition: .3s ease-in-out all;
}

.faq-panel > *:first-child {
  margin-top: 0;
}

.faq-panel > *:last-child {
  margin-bottom: 0;
}

.faq > *:last-child {
  margin-bottom: 0;
}

.faq.has-no-padding {
  margin-left: 0;
}

@media only screen and (max-width: 1023px) {
  .faq.has-no-padding {
    margin-left: 0;
  }
}

.faq-categories {
  background: #F5F5F5;
  padding: 45px 0;
}

@media screen and (min-width: 1024px) {
  .faq-categories {
    padding: 60px 0;
  }
}

.faq-categories-container {
  margin-top: -10px;
}

.faq-categories-title {
  letter-spacing: -2px;
  color: #292929;
  margin-top: 0;
  margin-bottom: 45px;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .faq-categories-title {
    margin-bottom: 60px;
  }
}

.faq-categories-list {
  list-style: none;
  margin: 0;
  padding: 0;
  transform: translate3d(0%, 0px, 0px);
}

@media screen and (min-width: 768px) {
  .faq-categories {
    padding-bottom: 100px;
  }
  .faq-categories .col:not(.tns-item) {
    width: 25%;
    float: left;
    padding-right: 20px;
  }
  .faq-categories .col:not(.tns-item):nth-child(n+5) {
    margin-top: 20px;
  }
}

.faq-categories-card {
  background: #fff;
  color: #292929;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.14);
  border-radius: 8px;
  padding: 45px 30px;
  position: relative;
  min-height: 350px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  text-decoration: none;
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1) transform;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  margin: 15px 15px 30px;
}

@media screen and (min-width: 1024px) {
  .faq-categories-card {
    margin: 0;
  }
  .faq-categories-card:hover, .faq-categories-card:focus {
    transform: scale3d(1.048, 1.048, 1) translateZ(0);
  }
  .faq-categories-card:hover .info-card-actions, .faq-categories-card:focus .info-card-actions {
    opacity: 1;
  }
}

.faq-categories-card:hover, .faq-categories-card:focus, .faq-categories-card:active, .faq-categories-card:visited {
  text-decoration: none;
  color: #292929;
}

.faq-categories-card .info-card-title {
  color: #292929;
}

.faq-categories-card .info-card-content {
  padding: 0;
  position: relative;
}

.faq-categories-card .info-card-content:before {
  content: '';
  position: absolute;
  width: 46px;
  margin-left: -23px;
  height: 0px;
  left: 50%;
  top: -15px;
  border: 1px solid #CFCFCF;
}

.faq-categories-card .info-card-actions {
  transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1) opacity;
  opacity: 0;
  font-size: 15px;
  color: #2D72F7;
  font-weight: 600;
}

.faq-categories-card-listing {
  list-style: none;
  margin: 25px 0 0;
  padding: 0;
  counter-reset: reading-list-counter;
}

.faq-categories-card-listing a, .faq-categories-card-listing a:focus, .faq-categories-card-listing a:hover, .faq-categories-card-listing a:active {
  color: #fff;
}

.faq-categories-card-listing li {
  position: relative;
  counter-increment: reading-list-counter;
  padding-left: 25px;
  margin-bottom: 20px;
}

.faq-categories-card-listing li:last-child {
  margin-bottom: 0;
}

.faq-categories-card-listing li.is-current {
  font-weight: 600;
}

.faq-categories-card-listing li::before {
  position: absolute;
  left: 0;
  content: counter(reading-list-counter) ".";
}

.faq-categories .tns-controls {
  text-align: center;
  margin: 0;
  outline: 0;
}

.faq-categories [data-controls] {
  background: #FFFFFF;
  border-radius: 8px;
  color: #595858;
  box-shadow: none;
  padding: 11px 20px;
  line-height: 0;
  margin: 0 5px;
}

.faq-categories [data-controls]:disabled {
  cursor: default;
}

.popular-faqs {
  margin-top: -25px;
}

@media screen and (min-width: 1024px) {
  .popular-faqs {
    margin-top: -45px;
  }
}

.popular-faqs-heading {
  margin-top: 0;
  margin-bottom: 45px;
}

@media screen and (min-width: 1024px) {
  .popular-faqs-heading {
    margin-bottom: 60px;
  }
}

.popular-faqs .faq-listing {
  margin: 0;
}

.faq-autocomplete {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

.faq-autocomplete-form {
  position: relative;
}

.faq-autocomplete-submit {
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  text-transform: none;
  color: inherit;
  font-size: inherit;
  font-weight: normal;
  white-space: initial;
  border-radius: 0;
  text-align: left;
  position: absolute;
  right: 0;
  top: 22px;
}

.faq-autocomplete-submit:after {
  content: '';
  position: absolute;
  right: 25px;
  width: 38px;
  height: 36px;
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2238%22%20height%3D%2236%22%20viewBox%3D%220%200%2038%2036%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M24.3503%2022.9495L36%2034M27.75%2015.2121C27.75%2021.9567%2022.2095%2027.4242%2015.375%2027.4242C8.54048%2027.4242%203%2021.9567%203%2015.2121C3%208.46755%208.54048%203%2015.375%203C22.2095%203%2027.75%208.46755%2027.75%2015.2121Z%22%20stroke%3D%22%238F8F8F%22%20stroke-width%3D%225%22%2F%3E%3C%2Fsvg%3E");
}

.faq-autocomplete-submit.is-loading:after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2238%22%20height%3D%2238%22%20viewBox%3D%220%200%2038%2038%22%20stroke%3D%22%232D72F7%22%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Cg%20transform%3D%22translate%281%201%29%22%20stroke-width%3D%224%22%3E%3Ccircle%20stroke-opacity%3D%22.5%22%20cx%3D%2218%22%20cy%3D%2218%22%20r%3D%2216%22%2F%3E%3Cpath%20d%3D%22M34%2018c0-9.94-8.06-16-18-16%22%3E%3CanimateTransform%20attributeName%3D%22transform%22%20type%3D%22rotate%22%20from%3D%220%2018%2018%22%20to%3D%22360%2018%2018%22%20dur%3D%221s%22%20repeatCount%3D%22indefinite%22%2F%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

.faq-autocomplete-input {
  border: none;
  margin: 0px;
  height: 80px;
  width: 100%;
  border-radius: 15px;
  font-size: 24px;
  padding: 25px 65px 25px 25px;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(0, 0, 0, 0.15);
}

.autocomplete {
  position: absolute;
  transition: all 0.5s ease 0s;
  max-height: 0;
  transition-duration: 0.3s;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 1, 0.5, 1);
  border-radius: 10px;
  opacity: 0;
  margin-top: 2px;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  text-align: left;
}

.autocomplete:active, .autocomplete:focus, .autocomplete:hover {
  background-color: #fafafa;
  transition: all 0.5s ease 0s;
}

.autocomplete:empty {
  display: none;
}

.autocomplete > ul {
  list-style-type: none;
  margin: 0;
  padding: 10px;
  color: #292929;
}

.autocomplete > ul a,
.autocomplete > ul a:hover,
.autocomplete > ul a:focus {
  color: #292929;
}

.autocomplete > ul a {
  display: block;
  line-height: 1.35;
}

.autocomplete > ul > li {
  cursor: pointer;
  padding: 12px 15px;
  font-size: 20px;
  border-radius: 10px;
}

.autocomplete > ul > li.active, .autocomplete > ul > li:active, .autocomplete > ul > li:focus, .autocomplete > ul > li:hover {
  background-color: #eeeeee;
  transition: all 0.5s ease 0s;
}

.autocomplete > ul > li.active a:active,
.autocomplete > ul > li:active a:active,
.autocomplete > ul > li:focus a:active,
.autocomplete > ul > li:hover a:active,
.autocomplete > ul > li.active a:focus,
.autocomplete > ul > li:active a:focus,
.autocomplete > ul > li:focus a:focus,
.autocomplete > ul > li:hover a:focus,
.autocomplete > ul > li.active a:hover,
.autocomplete > ul > li:active a:hover,
.autocomplete > ul > li:focus a:hover,
.autocomplete > ul > li:hover a:hover {
  text-decoration: none;
}

.autocomplete > ul > li.locked {
  cursor: inherit;
}

.autocomplete > ul > li span {
  display: block;
  text-transform: uppercase;
  font-size: 14px;
  color: #8F8F8F;
  margin-top: 4px;
}

.autocomplete.open {
  display: block;
  transition: all 0.5s ease 0s;
  background-color: #fafafa;
  max-height: 1000px;
  overflow: hidden;
  transition-duration: 0.5s;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 1, 0.5, 1);
  z-index: 100;
  opacity: 1;
}

.autocomplete.open:empty {
  display: none;
}

.autocomplete-show-all {
  position: relative;
  margin-top: 6px;
  padding: 0 !important;
}

.autocomplete-show-all button {
  background: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  text-transform: none;
  color: inherit;
  font-size: inherit;
  font-weight: normal;
  white-space: initial;
  border-radius: 0;
  text-align: left;
  font-family: acumin-pro, 'Helvetica Neue', Helvetica, Arial, sans-serif;
  width: 100%;
  padding: 12px 15px;
}

.autocomplete-show-all:before {
  content: '';
  border-top: 1px solid #ccc;
  position: absolute;
  top: -3px;
  left: 15px;
  right: 15px;
}

.autocomplete-show-all:after {
  content: '';
  position: absolute;
  width: 41px;
  height: 33px;
  right: 15px;
  top: 11px;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg%20width%3D%2241%22%20height%3D%2233%22%20viewBox%3D%220%200%2041%2033%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M0.5%2016H38.3536M38.3536%2016L23.6464%202M38.3536%2016L23.3536%2031%22%20stroke%3D%22%23B2B2B2%22%20stroke-width%3D%223%22%2F%3E%3C%2Fsvg%3E");
}

.faq-listing {
  margin-top: 60px;
}

@media screen and (min-width: 1024px) {
  .faq-listing {
    margin-top: 80px;
  }
}

.faq-listing-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

@media screen and (min-width: 1024px) {
  .faq-listing-list.has-columns {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -50px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .faq-listing-list.has-columns > [class*="is-"] {
    padding: 0 50px;
    min-width: 0;
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .faq-listing-list.has-columns > [class*="is-"]:last-child {
    margin-bottom: 0;
  }
  .faq-listing-list.has-columns .is-full {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    max-width: 100%;
  }
  .faq-listing-list.has-columns .is-1\/2 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
    max-width: 50%;
  }
  .faq-listing-list.has-columns .is-1\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 33.3333%;
        flex-basis: 33.3333%;
    max-width: 33.3333%;
  }
  .faq-listing-list.has-columns .is-2\/3 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 66.6666%;
        flex-basis: 66.6666%;
    max-width: 66.6666%;
  }
  .faq-listing-list.has-columns .is-1\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 25%;
        flex-basis: 25%;
    max-width: 25%;
  }
  .faq-listing-list.has-columns .is-3\/4 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 75%;
        flex-basis: 75%;
    max-width: 75%;
  }
  .faq-listing-list.has-columns .is-1\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 16.66666%;
        flex-basis: 16.66666%;
    max-width: 16.66666%;
  }
  .faq-listing-list.has-columns .is-5\/6 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 83.3333%;
        flex-basis: 83.3333%;
    max-width: 83.3333%;
  }
  .faq-listing-list.has-columns .is-1\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
    max-width: 20%;
  }
  .faq-listing-list.has-columns .is-2\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 40%;
        flex-basis: 40%;
    max-width: 40%;
  }
  .faq-listing-list.has-columns .is-3\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    max-width: 60%;
  }
  .faq-listing-list.has-columns .is-4\/5 {
    -ms-flex-positive: 0;
        flex-grow: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -ms-flex-preferred-size: 80%;
        flex-basis: 80%;
    max-width: 80%;
  }
}

@media screen and (min-width: 1024px) {
  .faq-listing-list.has-columns .faq-listing-list-item:after {
    right: 50px;
  }
}

.faq-listing-heading {
  margin: 0 0 60px;
}

@media screen and (min-width: 1024px) {
  .faq-listing-heading {
    margin-bottom: 70px;
    margin-top: -30px;
  }
}

.faq-listing-list-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
}

.faq-listing-card {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  position: relative;
  padding: 35px 0;
}

.faq-listing-card:before, .faq-listing-card:after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  border-top: 1px solid #CFCFCF;
}

.faq-listing-card:after {
  top: auto;
  bottom: -1px;
}

@media screen and (min-width: 1024px) {
  .faq-listing-card {
    height: 100%;
    width: 100%;
  }
}

.faq-listing-card a {
  text-decoration: none;
  -ms-flex: 1;
      flex: 1;
}

.faq-listing-card a + ul {
  margin-top: 10px;
}

.faq-listing-card-title {
  letter-spacing: -.05px;
  color: #292929;
  margin: 0;
  transition: .2s ease-in-out color;
  font-family: acumin-pro-condensed, acumin-pro, 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.faq-listing-card-title:hover, .faq-listing-card-title:focus {
  color: #2D72F7;
}

.experience-editor {
  padding-top: 0;
}

.experience-editor .site-header {
  position: relative;
}

.experience-editor article.about-sunnova .content h2 {
  -webkit-text-fill-color: inherit;
}

.experience-editor article.text h1 {
  -webkit-text-fill-color: inherit;
}

.experience-editor article.news-press h3 {
  -webkit-text-fill-color: inherit;
}

.experience-editor .page-intro-heading {
  -webkit-text-fill-color: inherit;
}

.experience-editor .state-listing .title {
  -webkit-text-fill-color: inherit;
}

.experience-editor article.testimonial .title h1 {
  -webkit-text-fill-color: inherit;
}

.experience-editor .image-placeholder > * {
  position: relative;
  width: auto;
  height: auto;
}

.experience-editor .fullwidth-callout-image {
  z-index: 1;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInBhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsInBhcnRpYWxzL19nbG9iYWwuc2NzcyIsInBhcnRpYWxzL19taXhpbnMuc2NzcyIsIm1haW4uY3NzIiwicGFydGlhbHMvX2dyaWQuc2NzcyIsInBhcnRpYWxzL19mbGV4LWdyaWQuc2NzcyIsInBhcnRpYWxzL19sYXlvdXQuc2NzcyIsInBhcnRpYWxzL190eXBvZ3JhcGh5LnNjc3MiLCJwYXJ0aWFscy9fdGFibGVzLnNjc3MiLCJwYXJ0aWFscy9fZm9ybXMuc2NzcyIsInBhcnRpYWxzL19mdW5jdGlvbnMuc2NzcyIsInBhcnRpYWxzL191aS5zY3NzIiwicGFydGlhbHMvX2hlYWRlci5zY3NzIiwicGFydGlhbHMvX2Zvb3Rlci5zY3NzIiwicGFydGlhbHMvX21vZHVsZXMuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2Fib3V0LXN1bm5vdmEuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2JyZWFkY3J1bWJzLXdyYXBwZXIuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2NhbGxvdXRzLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19jYXJvdXNlbC5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fY2hhcml0eS1saXN0aW5nLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19jb21wYXJpc29uLXRhYmxlLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19ibG9nLWxpc3Rpbmcuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2Z1bGx3aWR0aC1jYWxsb3V0LnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19nZXQtcXVvdGUuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2hlcm8uc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2hvbWVwYWdlLWhlcm8uc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2hyLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19pbWFnZS5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9faW1hZ2UtY29sbGFnZS5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9faW5mby1jYXJkLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19pbmZvZ3JhcGhpYy5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fbmV3cy1wcmVzcy5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fcGFnZS1pbnRyby5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fcGFydG5lci1mb3JtLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19wcm9kdWN0LWNhcmRzLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19wcm9kdWN0LWhpZ2hsaWdodHMuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX3NlcnZpY2VzLWF2YWlsYWJpbGl0eS5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fc2V0dXAtc3RlcHMuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX3NpZGViYXItbmF2LnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19zdGF0ZS1saXN0aW5nLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL190ZXN0aW1vbmlhbC5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fdGV4dC1jb2x1bW5zLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL190ZXh0LnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL192aWRlby5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fbW9kYWwuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2Jsb2ctZmVhdHVyZWQtY2FyZHMuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX3JlYWRpbmctbGlzdC5zY3NzIiwicGFydGlhbHMvbW9kdWxlcy9fZmFxLnNjc3MiLCJwYXJ0aWFscy9tb2R1bGVzL19hdXRvY29tcGxldGUuc2NzcyIsInBhcnRpYWxzL21vZHVsZXMvX2ZhcS1saXN0aW5nLnNjc3MiLCJwYXJ0aWFscy9fZXhwZXJpZW5jZS1lZGl0b3Iuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQTs7Ozt1RUFJdUU7QUNQdkUsV0FBVztBQWtHWCxXQUFXO0FDbEdYO0VBQ0ksdUJBQXNC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Z0JGMUlJO0dFMklQO0VBRkQ7SUFDSSxnQkZ6SU07R0UwSVQ7RUFGRDtJQUNJLGdCRnhJSTtHRXlJUDtFQUZEO0lBQ0ksZ0JGdklJO0dFd0lQO0VBRkQ7SUFDSSxnQkZ0SUk7R0V1SVA7RUFGRDtJQUNJLGdCRnJJSztHRXNJUjtFQUZEO0lBQ0ksZ0JGcElLO0dFcUlSO0VBRkQ7SUFDSSxnQkZuSUs7R0VvSVI7RUFGRDtJQUNJLGdCRmxJSztHRW1JUjtFQUZEO0lBQ0ksZ0JGaklLO0dFa0lSO0VBRkQ7SUFDSSxnQkZoSUs7R0VpSVI7Q0MyNkJKOztBRGo4Qkc7RUFvQkE7SUFDSSxnQkY1SUs7R0U2SVI7RUFGRDtJQUNJLGdCRjNJSTtHRTRJUDtFQUZEO0lBQ0ksZ0JGMUlJO0dFMklQO0VBRkQ7SUFDSSxnQkZ6SU07R0UwSVQ7RUFGRDtJQUNJLGdCRnhJSTtHRXlJUDtFQUZEO0lBQ0ksZ0JGdklJO0dFd0lQO0VBRkQ7SUFDSSxnQkZ0SUk7R0V1SVA7RUFGRDtJQUNJLGdCRnJJSztHRXNJUjtFQUZEO0lBQ0ksZ0JGcElLO0dFcUlSO0VBRkQ7SUFDSSxnQkZuSUs7R0VvSVI7RUFGRDtJQUNJLGdCRmxJSztHRW1JUjtFQUZEO0lBQ0ksZ0JGaklLO0dFa0lSO0VBRkQ7SUFDSSxnQkZoSUs7R0VpSVI7Q0NxOUJKOztBRDMrQkc7RUFvQkE7SUFDSSxnQkY1SUs7R0U2SVI7RUFGRDtJQUNJLGdCRjNJSTtHRTRJUDtFQUZEO0lBQ0ksZ0JGMUlJO0dFMklQO0VBRkQ7SUFDSSxnQkZ6SU07R0UwSVQ7RUFGRDtJQUNJLGdCRnhJSTtHRXlJUDtFQUZEO0lBQ0ksZ0JGdklJO0dFd0lQO0VBRkQ7SUFDSSxnQkZ0SUk7R0V1SVA7RUFGRDtJQUNJLGdCRnJJSztHRXNJUjtFQUZEO0lBQ0ksZ0JGcElLO0dFcUlSO0VBRkQ7SUFDSSxnQkZuSUs7R0VvSVI7RUFGRDtJQUNJLGdCRmxJSztHRW1JUjtFQUZEO0lBQ0ksZ0JGaklLO0dFa0lSO0VBRkQ7SUFDSSxnQkZoSUs7R0VpSVI7Q0MrL0JKOztBRHJoQ0c7RUFvQkE7SUFDSSxn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cUJGcEhKO0dFcUhDO0VBRkQ7SUFDSSxvQkZuSEo7R0VvSEM7RUFGRDtJQUNJLHlCRmxIQztHRW1ISjtFQUZEO0lBQ0ksb0JGakhKO0dFa0hDO0VBRkQ7SUFDSSx1QkZoSEE7R0VpSEg7RUFGRDtJQUNJLHVCRi9HQTtHRWdISDtDQ3M0RGhCOztBRDM2REc7RUFtQ1k7SUFDSSxxQkZwSEo7R0VxSEM7RUFGRDtJQUNJLG9CRm5ISjtHRW9IQztFQUZEO0lBQ0kseUJGbEhDO0dFbUhKO0VBRkQ7SUFDSSxvQkZqSEo7R0VrSEM7RUFGRDtJQUNJLHVCRmhIQTtHRWlISDtFQUZEO0lBQ0ksdUJGL0dBO0dFZ0hIO0NDMjVEaEI7O0FEaDhERztFQW1DWTtJQUNJLHFCRnBISjtHRXFIQztFQUZEO0lBQ0ksb0JGbkhKO0dFb0hDO0VBRkQ7SUFDSSx5QkZsSEM7R0VtSEo7RUFGRDtJQUNJLG9CRmpISjtHRWtIQztFQUZEO0lBQ0ksdUJGaEhBO0dFaUhIO0VBRkQ7SUFDSSx1QkYvR0E7R0VnSEg7Q0NnN0RoQjs7QUQ3NURPO0VBQ0ksbUVGekxnSTtFRTBMaEksZUZ0TU07Q0V1TVQ7O0FBSEQ7RUFDSSxtRUZ4TDBIO0VFeUwxSCxZRnZNRztDRXdNTjs7QUFIRDtFQUNJLG1FRnZMaUg7RUV3TGpILFlGdk1HO0NFd01OOztBQUhEO0VBQ0ksbUVGdEx1SDtFRXVMdkgsZUZ0TU07Q0V1TVQ7O0FBSEQ7RUFDSSxtRUZyTG1JO0VFc0xuSSxZRnZNRztDRXdNTjs7QUFIRDtFQUNJLHFFRnBMc0k7RUVxTHRJLGVGdE1NO0NFdU1UOztBQWREO0VBQ0ksMEJGak1PO0VFa01QLGVGM0xNO0NFNExUOztBQUhEO0VBQ0ksMEJGaE1LO0VFaU1MLFlGNUxHO0NFNkxOOztBQUhEO0VBQ0ksMEJGL0xPO0VFZ01QLFlGNUxHO0NFNkxOOztBQUhEO0VBQ0ksMEJGOUxXO0VFK0xYLGVGM0xNO0NFNExUOztBQUhEO0VBQ0ksMEJGN0xNO0VFOExOLGVGM0xNO0NFNExUOztBQUhEO0VBQ0ksMEJGNUxJO0VFNkxKLFlGNUxHO0NFNkxOOztBQUhEO0VBQ0ksdUJGM0xHO0VFNExILGVGM0xNO0NFNExUOztBQUhEO0VBQ0ksMEJGMUxNO0VFMkxOLFlGNUxHO0NFNkxOOztBQUhEO0VBQ0ksMEJGekxNO0VFMExOLFlGNUxHO0NFNkxOOztBQUhEO0VBQ0ksMEJGeExLO0VFeUxMLGVGM0xNO0NFNExUOztBQUhEO0VBQ0ksMEJRMUxzRztFUjJMdEcsZUYzTE07Q0U0TFQ7O0FBSEQ7RUFDSSwwQlExTHNHO0VSMkx0RyxZRjVMRztDRTZMTjs7QUFIRDtFQUNJLDBCUTFMc0c7RVIyTHRHLFlGNUxHO0NFNkxOOztBQUhEO0VBQ0ksMEJRMUxzRztFUjJMdEcsZUYzTE07Q0U0TFQ7O0FBSEQ7RUFDSSwwQlExTHNHO0VSMkx0RyxZRjVMRztDRTZMTjs7QUFIRDtFQUNJLDBCUTFMc0c7RVIyTHRHLGVGM0xNO0NFNExUOztBUzlNVDtFQUNJLGlCQUFnQjtFQUNoQiw2Q0FBNEM7RUFDNUMsb0JBQW1CO0VBQ25CLGNBQWE7Q0FDaEI7O0FBRUQ7RUFDSSwwQkFBeUI7RUFDekIsMEJBQXlCO0VBQ3pCLHNCQUFxQjtFQUNyQixhQUFZO0VBR1osMEJBQXlCO0VBQ3pCLGtDQUFpQztDQWdCcEM7O0FBeEJEO0VBV1EsMEJBQXlCO0VBQ3pCLGtDQUFpQztDQUNwQzs7QUFiTDtFQWdCUSwyQkFBMEI7RUFDMUIsbUNBQWtDO0NBQ3JDOztBQWxCTDtFQXFCUSx5QkFBd0I7RUFDeEIsaUNBQWdDO0NBQ25DOztBQUdMO0VUNkZJLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFUzdGVixzQkFBcUI7RUFDckIsZ0JBQWU7RUFDZixxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBbUI7TUFBbkIsb0JBQW1CO0VBQ25CLG9CQUFlO01BQWYsZ0JBQWU7Q0FzQ2xCOztBQTVDRDtFQVNRLDRCQUFvQjtFQUFwQixxQkFBb0I7RUFDcEIsdUJBQW1CO01BQW5CLG9CQUFtQjtFQUNuQixtQkFBa0I7Q0EyQnJCOztBQXRDTDtFQWVZLFlBQVc7Q0FDZDs7QUFoQlQ7RUFtQlksY0FBYTtDQUNoQjs7QUFwQlQ7RUF1QlksbUJBQWtCO0VBQ2xCLGVBQWM7Q0FLakI7O0FUN0NEO0VTZ0JSO0lBMkJnQixrQkFBaUI7R0FFeEI7Q1JzdUVSOztBUW53RUQ7RUFnQ1ksZ0JBQWU7Q0FLbEI7O0FBckNUO0VBbUNnQixnQkFBZTtDQUNsQjs7QUFwQ2I7RUF5Q1EsZVh4RFU7RVd5RFYscUJBQW9CO0NBQ3ZCOztBQUdMO0VBQ0ksVUFBUztDQVVaOztBQVhEO0VBR1EsVUFBUztFQUNULGdCQUFlO0VBQ2YsaUJBQWdCO0NBQ25COztBQU5MO0VBU1Esa0JBQWlCO0NBQ3BCOztBQUdMO0VUa0NJLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFU2xDVixpQkFBZ0I7Q0F5Qm5COztBQTNCRDtFQUtRLHNCQUFxQjtDQXFCeEI7O0FBMUJMO0VBUVksa0JBQWlCO0VBQ2pCLG1CQUFrQjtFQUNsQixtQkFBa0I7RUFDbEIsZUFBYztFQUNkLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHVCQUFtQjtNQUFuQixvQkFBbUI7RUFDbkIsZVh4Rk07Q1d5RlQ7O0FBZlQ7RUFrQlksb0JYbkdPO0VXb0dQLFlBQVc7RUFDWCxtQkFBa0I7Q0FDckI7O0FBckJUO0VBd0JZLHNCQUFxQjtDQUN4Qjs7QUFJVDtFVEtJLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFU0xWLGVBQWM7RUFDZCxtQkFBa0I7Q0FtQnJCOztBQXRCRDtFQU1RLHNCQUFxQjtDQWV4Qjs7QUFyQkw7RUFTWSxzQkFBcUI7RUFDckIsc0JBQXFCO0VBQ3JCLFlBQVc7RUFDWCxhQUFZO0VBQ1osdUJBQXNCO0VBQ3RCLG1CQUFrQjtDQUNyQjs7QUFmVDtFQWtCWSxVQUFTO0VBQ1Qsb0JBQW1CO0NBQ3RCOztBQUlUO0VUdEVRLGtEQUF5QztVQUF6QywwQ0FBeUM7RUFDekMsK0JBQXNCO1VBQXRCLHVCQUFzQjtFQUN0QixnQ0FBdUI7VUFBdkIsd0JBQXVCO0VBQ3ZCLHlCQUFnQjtVQUFoQixpQkFBZ0I7Q1NxRXZCOztBVGxGTztFQUNJLGtEQUF5QztVQUF6QywwQ0FBeUM7RUFDekMsK0JBQXNCO1VBQXRCLHVCQUFzQjtFQUN0Qiw2QkFBb0I7VUFBcEIscUJBQW9CO0VBQ3BCLHlCQUFnQjtVQUFoQixpQkFBZ0I7Q0FDbkI7O0FTK0VUO0VBQ0ksbUJBQWtCO0VBQ2xCLFlBQVc7Q0FVZDs7QUFaRDtFQUtRLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sUUFBTztFQUNQLFlBQVc7RUFDWCxhQUFZO0VBQ1oscUJBQWlCO0tBQWpCLGtCQUFpQjtDQUNwQjs7QVRGRDtFU09JO0lBQ0ksbUJBQWtCO0lBQ2xCLFlBQVc7R0FVZDtFQVpEO0lBS1EsbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixRQUFPO0lBQ1AsWUFBVztJQUNYLGFBQVk7SUFDWixxQkFBaUI7T0FBakIsa0JBQWlCO0dBQ3BCO0NSbXZFWjs7QURyd0VHO0VTT0k7SUFDSSxtQkFBa0I7SUFDbEIsWUFBVztHQVVkO0VBWkQ7SUFLUSxtQkFBa0I7SUFDbEIsT0FBTTtJQUNOLFFBQU87SUFDUCxZQUFXO0lBQ1gsYUFBWTtJQUNaLHFCQUFpQjtPQUFqQixrQkFBaUI7R0FDcEI7Q1Jrd0VaOztBRHB4RUc7RVNPSTtJQUNJLG1CQUFrQjtJQUNsQixZQUFXO0dBVWQ7RUFaRDtJQUtRLG1CQUFrQjtJQUNsQixPQUFNO0lBQ04sUUFBTztJQUNQLFlBQVc7SUFDWCxhQUFZO0lBQ1oscUJBQWlCO09BQWpCLGtCQUFpQjtHQUNwQjtDUml4RVo7O0FEbnlFRztFU09JO0lBQ0ksbUJBQWtCO0lBQ2xCLFlBQVc7R0FVZDtFQVpEO0lBS1EsbUJBQWtCO0lBQ2xCLE9BQU07SUFDTixRQUFPO0lBQ1AsWUFBVztJQUNYLGFBQVk7SUFDWixxQkFBaUI7T0FBakIsa0JBQWlCO0dBQ3BCO0NSZ3lFWjs7QURsekVHO0VTT0k7SUFDSSxtQkFBa0I7SUFDbEIsWUFBVztHQVVkO0VBWkQ7SUFLUSxtQkFBa0I7SUFDbEIsT0FBTTtJQUNOLFFBQU87SUFDUCxZQUFXO0lBQ1gsYUFBWTtJQUNaLHFCQUFpQjtPQUFqQixrQkFBaUI7R0FDcEI7Q1IreUVaOztBU2orRUQ7RUFDSSxpQ0FBZ0M7Q0FDbkM7O0FBRUQ7RUFLSSxnQkFBZTtFQUNmLE9BQU07RUFDTixhQUFZO0VBQ1osaUJBQWdCO0VBQ2hCLGNBQWE7RUFDYixnQkFBZTtFQUNmLGdCQUFlO0VBQ2Ysa0JaZm9CO0VZZ0JwQixZQUFXO0NBK0lkOztBVjdJTztFVWZSO0lBRVEsY0FBYTtHQTBKcEI7Q1R1MUVBOztBU24vRUQ7RVY0SEksaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VVN0dOLG9CQUFtQjtFQUNuQixrQkFBaUI7RUFDakIsZ0JBQWU7RUFDZixrQkFBaUI7Q0FlcEI7O0FBbkNMO0VBdUJZLHNCQUFxQjtFQUNyQixtQkFBa0I7Q0FVckI7O0FBbENUO0VBMkJnQixlQUFjO0VBQ2QsZUFBYztDQUtqQjs7QUFqQ2I7RVZpRkksbUJBQWtCO0NVakRMOztBVmtEYjtFQUNJLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLFlVdkR3RDtFVndEeEQsVUFBUztFQUNULFFBQU87RUFDUCw2REY3RG9JO0NFOER2STs7QVUxRkw7RUFzQ1EsWUFBVztFQUNYLGFBQVk7RUFDWixhQUFZO0VBQ1osZ0JBQWU7RUFDZixzREFBcUQ7RUFDckQsc0JBQXFCO0VBQ3JCLHFCQUFvQjtDQUN2Qjs7QUE3Q0w7RUFnRFEscUJBQWE7RUFBYixjQUFhO0VBQ2IsdUJBQThCO01BQTlCLCtCQUE4QjtDQUNqQzs7QUFsREw7RUFxRFEsa0JBQWlCO0VBQ2pCLGdCQUFlO0NBcUdsQjs7QUEzSkw7RVY0SEksaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VVcEVGLGFBQVk7Q0FnR2Y7O0FBMUpUO0VBNkRnQixzQkFBcUI7RUFDckIsZUFBYztDQTJGakI7O0FBekpiO0VBaUVvQixnQkFBZTtDQUNsQjs7QUFsRWpCO0VBcUVvQixlQUFjO0NBQ2pCOztBQXRFakI7RUF5RW9CLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsZVozREY7RVk0REUsc0JBQXFCO0NBQ3hCOztBQTdFakI7RUFnRm9CLDZEWnBEd0g7RVlxRHhILFlBQVc7RUFDWCxtQkFBa0I7Q0FDckI7O0FBbkZqQjtFVmlGSSxtQkFBa0I7Q1VlTDs7QVZkYjtFQUNJLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLFlBTjZDO0VBTzdDLFVBQVM7RUFDVCxRQUFPO0VBQ1AsNkRGN0RvSTtDRThEdkk7O0FVMUZMO0VBMEZ3QixZQUFXO0NBQ2Q7O0FBM0ZyQjtFQThGd0IsYUFBWTtDQUNmOztBQS9GckI7RUFtR29CLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsNEJBQW9CO0VBQXBCLHFCQUFvQjtFQUNwQixzQkFBdUI7TUFBdkIsd0JBQXVCO0NBa0QxQjs7QUF4SmpCO0VBeUd3QixvQkFBbUI7Q0FDdEI7O0FBMUdyQjtFQTZHd0IsbUJBQWtCO0VBQ2xCLFdBQVU7RUFDVixxQkFBb0I7RUFDcEIsMEJBQXlCO0VBQ3pCLFlBQVc7RUFDWCxVQUFTO0VBQ1QsU0FBUTtFQUNSLHFCQUFvQjtFQUNwQixvQ0FBbUM7RUFDbkMsMEJadEdOO0VZdUdNLGtCQUFpQjtFQUNqQixnQ0FBK0I7RUFDL0IsdUJBQXNCO0VBQ3RCLHdCQUF1QjtDQUMxQjs7QUEzSHJCO0VBK0g0QixlQUFjO0NBQ2pCOztBQWhJekI7RUFvSXdCLGNBQWE7RUFDYixtQkFBa0I7RUFDbEIsb0JBQW1CO0VBQ25CLDhDQUE2QztFQUM3QyxzQ0FBcUM7RUFDckMsb0JBQW1CO0VBQ25CLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFFBQU87Q0FVVjs7QUF2SnJCO0VBZ0o0QixVQUFTO0VBQ1QsZUFBYztDQUNqQjs7QUFsSnpCO0VBcUo0QixvQkFBbUI7Q0FDdEI7O0FBV3pCO0VBSUksZ0JBQWU7RUFDZixPQUFNO0VBQ04sUUFBTztFQUNQLFNBQVE7RUFDUixnQkFBZTtFQUNmLGlCQUFnQjtFQUNoQixhQUFZO0VBQ1osZUFBYztDQXVMakI7O0FWaFdPO0VVOEpSO0lBRVEsY0FBYTtHQWdNcEI7Q1RvMEVBOztBU3RnRkQ7RUFjUSxZQUFXO0VBQ1gsYUFBWTtFQUNaLGFBQVk7RUFDWixzREFBcUQ7RUFDckQsc0JBQXFCO0VBQ3JCLHFCQUFvQjtDQUN2Qjs7QUFwQkw7RUF1QlEsYUFBWTtFQUNaLGdCQUFlO0VBQ2YsZ0JBQWU7RUFDZiwwQkFBeUI7RUFDekIsa0JBQWlCO0NBQ3BCOztBQTVCTDtFQW1DUSxzQkFBcUI7RUFDckIsYUFBb0Q7RUFDcEQsbUJBQWtCO0VBQ2xCLHdCQUF1QjtFQUN2Qiw0QkFBMkI7RUFDM0IsWUFSa0I7RUFTbEIsdUJBQXNCO0VBQ3RCLG1CQUFrQjtDQWtEckI7O0FBNUZMO0VBNkNZLDZEWmxMZ0k7RVltTGhJLFlBZnFCO0VBZ0JyQixRQUFPO0VBQ1AsV0FBVTtFQUNWLG1CQUFrQjtFQUNsQix3QkFBdUI7RUFDdkIsNkJBQTRCO0VBQzVCLFlBQVc7Q0FpQmQ7O0FBckVUO0VBdURnQixPQUFNO0NBQ1Q7O0FBeERiO0VBMkRnQixTQUEwQjtDQUM3Qjs7QUE1RGI7RUErRGdCLFNBQTBCO0NBQzdCOztBQWhFYjtFQW1FZ0IsVUFyQ1c7Q0FzQ2Q7O0FBcEViO0VBeUVnQixTQUEwQjtFQUMxQixVQUFTO0VBQ1QsU0FBUTtDQUNYOztBQTVFYjtFQStFZ0IseUJBQXdCO0NBQzNCOztBQWhGYjtFQW1GZ0IsMEJBQXlCO0NBQzVCOztBQXBGYjtFQXVGZ0IsU0FBMEI7RUFDMUIsVUFBUztFQUNULFNBQVE7Q0FDWDs7QUExRmI7RUErRlEsY0FBYTtFQUNiLFlBQVc7Q0F5RGQ7O0FBekpMO0VWckNJLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFVXVJRixnQkFBZTtDQStCbEI7O0FBbklUO0VBdUdnQixtQkFBa0I7Q0EyQnJCOztBQWxJYjtFQTBHb0IsZUFBYztFQUNkLGdCQUFlO0VBQ2YsZVo3UEY7RVk4UEUsa0JBQWlCO0NBQ3BCOztBQTlHakI7RUFpSG9CLGlCQUFnQjtFQUNoQiw2RFp2UHdIO0VZd1B4SCxZQUFXO0VBQ1gsZ0JBQWU7RUFDZixxQkFBb0I7Q0FDdkI7O0FBdEhqQjtFQXlIb0Isb0JBQW1CO0VBQ25CLGtCQUFpQjtFQUNqQixnQkFBZTtFQUNmLG1DQUFrQztDQUNyQzs7QUE3SGpCO0VBZ0lvQixtQkFBa0I7Q0FDckI7O0FBaklqQjtFVnJDSSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RVUwS0YsaUJBQWdCO0VBQ2hCLGdCQUFlO0NBZ0JsQjs7QUF4SlQ7RUEySWdCLGVBQWM7Q0FZakI7O0FBdkpiO0VBOElvQixzQkFBcUI7RUFDckIsZUFBYztFQUNkLGVaalNGO0VZa1NFLGtCQUFpQjtDQUtwQjs7QUF0SmpCO0VWaEZJLG1CQUFrQjtDVXFPRDs7QVZwT2pCO0VBQ0ksWUFBVztFQUNYLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsWVUrTjREO0VWOU41RCxVQUFTO0VBQ1QsUUFBTztFQUNQLDZERjdEb0k7Q0U4RHZJOztBVXVFTDtFQTRKUSxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLGFBQVk7RUFDWixVQUFTO0VBQ1QsWUFBVztFQUNYLGdCQUFlO0VBQ2YsV0FBVTtFQUNWLGdDQUErQjtDQTBCbEM7O0FBN0xMO0VBc0tZLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsT0FBTTtFQUNOLDBCQUF5QjtFQUN6QixhQUFZO0VBQ1osVUFBUztFQUNULFNBQVE7RUFDUixxQkFBb0I7RUFDcEIsb0NBQW1DO0VBQ25DLDBCWmhVTTtFWWlVTixtQkFBa0I7RUFDbEIsZ0JBQWU7RUFDZixzQ0FBcUM7RUFDckMsMEJBQXlCO0VBQ3pCLHVCQUFzQjtFQUN0Qix3QkFBdUI7Q0FDMUI7O0FBdExUO0VBMExnQiw0QkFBMkI7Q0FDOUI7O0FBM0xiO0VBZ01RLFVBQVM7Q0FDWjs7QUN4V0w7RUFDSSxvQkFBbUI7RUFDbkIsZ0JBQWU7Q0E4RGxCOztBWDNETztFV0xSO0lUbUNJLHlEQUFrSTtJQVFsSSx3RUFBaU07R1NuQzVMO0VUcUNMO0lBQ0ksd0VBQWlNO0dBQ3BNO0NEeTBGSjs7QVV4M0ZEO0VBWVEscUJBQW9CO0VBQ3BCLGlDQUFnQztDQUNuQzs7QVhMRztFV1RSO0lUbUNJLHVEQUFrSTtJQXFDbEksdUJBQXNCO0lBQ3RCLFlBQVc7SUFDWCw2QkFBbUM7R1N2RGxDO0VUd0REO0lBQ0ksMEJBQXlCO0dBQzVCO0NENHpGSjs7QURoNEZPO0VXVFI7SVRtQ0ksdURBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztHU2xEbEM7RVRtREQ7SUFDSSwwQkFBeUI7R0FDNUI7Q0R3MEZKOztBQ3QxRkc7RUFDSSxZQUFXO0VBQ1gsZUFBYztFQUNkLFlBQVc7Q0FDZDs7QUYxREc7RVdUUjtJVG1DSSx1REFBa0k7SUFxQ2xJLHVCQUFzQjtJQUN0QixZQUFXO0lBQ1gsNkJBQW1DO0dTeENsQztFVHlDRDtJQUNJLDBCQUF5QjtHQUM1QjtDRDAxRko7O0FVdjZGRDtFWGtJSSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RUVqR1YscURBQWtJO0VBcUNsSSx1QkFBc0I7RUFDdEIsWUFBVztFQUNYLDZCQUFtQztDU3pDOUI7O0FUMENMO0VBQ0ksMEJBQXlCO0NBQzVCOztBUzdFTDtFQW9DUSxnQkFBZTtFQUNmLG9CQUFtQjtFQUNuQixlQUFjO0NBSWpCOztBQTFDTDtFQXdDWSxnQkFBZTtDQUNsQjs7QUF6Q1Q7RUE0Q1EsZ0JBQWU7Q0FtQmxCOztBQS9ETDtFQThDWSxnQkFBZTtFQUNmLG1CQUFrQjtDQUlyQjs7QVg5QkQ7RVdyQlI7SUFpRGdCLGVBQWM7R0FFckI7Q1YyNUZSOztBVTk4RkQ7RVhrSUksaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VXOUVGLGdCQUFlO0NBUWxCOztBQTlEVDtFQXdEZ0Isc0JBQXFCO0VBQ3JCLG1CQUFrQjtDQUlyQjs7QVh4Q0w7RVdyQlI7SUEyRG9CLGVBQWM7R0FFckI7Q1ZtNkZaOztBV2grRkQscUxBQXFMO0FBRXJMOzs7Ozs7Ozs7OztFQVdFO0FBRUY7RUFFSSxnQkFBZTtDQU1sQjs7QVpGTztFWU5SO0lBS1EsZUFBYztHQUdyQjtDWGcrRkE7O0FXOTlGRDtFQUVRLGNBQWE7Q0FDaEI7O0FaUEc7RVlVUjtJQUdZLHNCQUFxQjtJQUNyQixXQUFVO0dBQ2I7Q1g4OUZSOztBRDcrRk87RWFyQlI7SUFFTSxvQkFBbUI7R0EwRHhCO0NaNDhGQTs7QUQvL0ZPO0VhVFI7SVhtQ0ksd0RBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztHV2pEbEM7RVhrREQ7SUFDSSwwQkFBeUI7R0FDNUI7Q0R1OEZKOztBRC8vRk87RWFyQlI7SUFVWSxvQkFBbUI7R0FlMUI7Q1ppZ0dKOztBWTFoR0Q7RWI0Qkksc0JBQXFCO0VBQ3JCLDZEQUlDO0VBQ0QsZVFaOEc7RVJhOUcsOEJBQTZCO0VBQzdCLHFDQUFvQztFYXJCNUIsY0FBYTtFQUNiLGdCQUFlO0NBSWxCOztBYkNEO0VhckJSO0lBa0JnQixnQkFBZTtHQUV0QjtDWnNoR1I7O0FZMWlHRDtFQXVCWSxZQUFXO0NBQ2Q7O0FibkJEO0VhTFI7SVhtQ0ksd0RBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztHV2ZsQztFWGdCRDtJQUNJLDBCQUF5QjtHQUM1QjtDRDYrRko7O0FZMWpHRDtFYmtJSSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RWFsR0YscUJBQWE7RUFBYixjQUFhO0VBQ2Isb0JBQWU7TUFBZixnQkFBZTtFQUNmLGdCQUFlO0VBQ2YsZ0JBQWU7Q0FxQmxCOztBQTFEVDtFQXdDZ0IscUJBQWE7RUFBYixjQUFhO0VBQ2IsMkJBQXNCO01BQXRCLHVCQUFzQjtFQUN0QixXQUFVO0VBQ1YsZ0JBQWU7RUFDZixtQkFBa0I7RUFDbEIsbUJBQWtCO0NBWXJCOztBYnBDTDtFYXJCUjtJQStDa0IsaUJBQWdCO0dBVXJCO0NaMGhHWjs7QVlubEdEO0VBbURvQixlQUFjO0NBS2pCOztBYm5EVDtFYUxSO0lBc0R3QixpQkFBZ0I7R0FFdkI7Q1pxaUdoQjs7QWE3bEdEO0VBQ0ksZ0JBQWU7Q0FhbEI7O0FkT087RWNyQlI7SUFHTSxnQkFBZTtHQVdwQjtDYnlsR0E7O0Fhdm1HRDtFQU9RLGVBQWM7RUFDZCwrQkFBOEI7Q0FLakM7O0FBYkw7RUFXWSxZQUFXO0NBQ2Q7O0FDWlQ7RUFDSSx3QkFBdUI7RUFDdkIsbUJBQWtCO0VBQ2xCLFdBQVU7Q0FtRWI7O0FmN0RPO0VlVFI7SUFNUSx5QkFBd0I7R0FnRS9CO0Nkc2pHQTs7QUR2bUdPO0VlckJSO0lBVVEsaUJBQWdCO0dBNER2QjtDZDRqR0E7O0FEem5HTztFZVRSO0lBZVkscUJBQWE7SUFBYixjQUFhO0dBQ2hCO0Nkd25HUjs7QUQvbkdPO0VlVFI7SWJtQ0ksdURBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztJYXBEM0IscUJBQWE7SUFBYixjQUFhO0lBQ2IsMkJBQXNCO1FBQXRCLHVCQUFzQjtJQUN0QixzQkFBcUI7R0E2QzVCO0ViTUQ7SUFDSSwwQkFBeUI7R0FDNUI7RUFGRDtJQWhDQSx3RUFBaU07R2FmeEw7RWJpQlQ7SUFDSSx3RUFBaU07R0FDcE07Q0Q4bUdKOztBRHhvR087RWVyQlI7SUFnQ1ksb0JBQW1CO0dBcUMxQjtDZDhsR0o7O0FjbnFHRDtFQW9DWSxnQkFBZTtDQUNsQjs7QUFyQ1Q7RWZrSUksaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VlM0ZGLGlCQUFnQjtFQUNoQixnQkFBZTtDQTBCbEI7O0FBcEVUO0VBNkNnQixpQ0FBZ0M7Q0FzQm5DOztBQW5FYjtFQStDb0IsaUJBQWdCO0NBQ25COztBQWhEakI7RWY0Qkksc0JBQXFCO0VBQ3JCLDZEQUlDO0VBQ0QsZVFaOEc7RVJhOUcsOEJBQTZCO0VBQzdCLHFDQUFvQztFZWdCcEIsZUFBYztFQUNkLGdCQUFlO0VBQ2YsZ0JBQWU7Q0FZbEI7O0FBbEVqQjtFQXdEc0IsWUFBVztFQUNYLGFBQVk7RUFDWixpQkFBZ0I7RUFDaEIsMEJBQXlCO0VBQ3pCLDBCQUF5QjtFQUN6QixzQkFBcUI7RUFDckIsYUFBWTtFQUNaLDBCQUF5QjtFQUN6QixrQ0FBaUM7Q0FDbEM7O0FDaEVqQjtFQUNJLG9CQUFtQjtDQUN0Qjs7QUFITDtFQU1RLG1CQUFrQjtDQUNyQjs7QUFQTDtFQVdZLG1CQUFrQjtFQUNsQix3QkFBdUI7RUFDdkIsT0FBTTtFQUNOLFVBQVM7RUFDVCxXQUFVO0VBQ1Ysd0JBQXVCO0VBQ3ZCLGlCQUFnQjtFQUNoQixXQUFVO0NBQ2I7O0FBbkJUO0VBc0JZLFNBQVE7Q0FDWDs7QUF2QlQ7RUEwQlksY0FBYTtDQUNoQjs7QUEzQlQ7RUErQlEsbUJBQWtCO0VBQ2xCLGlCQUFnQjtDQUNuQjs7QUFqQ0w7RWhCd0lJLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFQUNWLGlCQUFnQjtFQUNoQixxQkFBb0I7RUFDcEIsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixpQkFBZ0I7Q2dCN0dmOztBQXJDTDtFQXdDUSxzQkFBcUI7RUFDckIsWUFBVztFQUNYLGFBQVk7RUFDWix1QkFBc0I7RUFDdEIsbUJBQWtCO0VBQ2xCLFlBQVc7Q0FNZDs7QUFuREw7RUFnRFksc0JBQXFCO0VBQ3JCLG9CQUFtQjtDQUN0Qjs7QUFsRFQ7RUFzRFEsV0FBVTtDQWdCYjs7QUF0RUw7RUF5RFksb0NBQW1DO0VBQ25DLGFBQVk7Q0FXZjs7QUFyRVQ7RUE2RGdCLFdBQVU7Q0FDYjs7QUE5RGI7RUFpRWdCLHVCQUFzQjtFQUN0Qix3QkFBdUI7RUFDdkIsb0JBQW1CO0NBQ3RCOztBQ25FVDtFQUNJLG9CQUFtQjtFQUNuQixtQkFBa0I7Q0FDckI7O0FBSkw7RUFPUSxvQkFBbUI7Q0FDdEI7O0FBRUQ7RUFDSSxxQkFBb0I7Q0FvQnZCOztBQXJCQTtFQUlPLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHVCQUFtQjtNQUFuQixvQkFBbUI7RWR3Q3ZCLGdCQUF3QjtFQUc1QixhQUFZO0VBQ1oscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBS1YsOEJBQWdCO01BQWhCLGlCQUFnQjtFQUNoQixnQkFBZTtFQTFCbkIsYUFBWTtFQUNaLGVBQWM7RUFNViw2QkxxQlE7TUtyQlIsZ0JMcUJRO0VLcEJSLGVMb0JRO0NtQmxEUDs7QWRtREw7RUFDSSxpQkFBZ0I7Q0FDbkI7O0FIMkZEO0VpQnhKQztJZDhCRCxxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0xzQmE7UUt0QmIscUJMc0JhO0lLckJiLG9CTHFCYTtHbUI5Q1I7Q2hCK3lHWjs7QURwcUdHO0VpQnhKQztJZDhCRCxxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixtQ0wwQmM7UUsxQmQsc0JMMEJjO0lLekJkLHFCTHlCYztHbUI1Q1Q7Q2hCa3pHWjs7QWlCLzBHRDtFQUNFLGlCQUFnQjtFQUNoQixlQUFjO0VBQ2QsMkRBQTBEO0VBQzFELG1CQUFrQjtDQUNuQjs7QUFFRDtFQUNFLFlBQVc7RUFDWCwwQkFBeUI7RUFDekIsa0JBQWlCO0VBQ2pCLG9CQUFtQjtFQUNuQiw4QkFBNkI7RUFDN0IsNEJBQTJCO0VBQzNCLDJCQUEwQjtDQUMzQjs7QUFFRDtFQUNFLDZCQUE0QjtFQUM1QixrQkFBaUI7RUFDakIsY0FBYTtDQUNkOztBQUVEO0VBQ0UsZ0JBQWU7RUFDZiw0QkFBMkI7RUFDM0IseUJBQXdCO0NBQ3pCOztBQUVEO0VBQ0Usb0JBQW1CO0NBQ3BCOztBQUVEO0VBQ0UsZUFBYztDQUNmOztBQUVEO0VBQ0UsZUFBYztFQUNkLGdCQUFlO0VBQ2Ysa0JBQWlCO0NBQ2xCOztBQUVEO0VBQ0Usb0JBQW1CO0VBQ25CLFdBQVU7RUFDViw4QkFBNkI7RUFDN0IsbUJBQWtCO0NBQ25COztBQUVEO0VBQ0UsaUJBQWdCO0NBQ2pCOztBQUVEO0VBQ0UsWUFBVztFQUNYLGNBQWE7RUFDYixnQkFBZTtFQUNmLDZCQUE0QjtFQUM1QixpQkFBZ0I7Q0FDakI7O0FBRUQ7RUFDRSxnQkFBZTtDQUNoQjs7QUFFRDtFQUNFLG9CQUFtQjtFQUNuQiw0QkFBMkI7RUFDM0IsaUJBQWdCO0VBQ2hCLG1CQUFrQjtDQUNuQjs7QUFFRDtFQUNFLG9CQUFtQjtFQUNuQiw0QkFBMkI7RUFDM0IsaUJBQWdCO0VBQ2hCLFlBQVc7Q0FDWjs7QUFFRDtFQUNFLG9CQUFtQjtFQUNuQiw2QkFBNEI7RUFDNUIsa0JBQWlCO0NBQ2xCOztBQUVEO0VBQ0UsNEJBQTJCO0NBQzVCOztBQUVEO0VBQ0UsWUFBVztFQUNYLDhCQUE2QjtDQUM5Qjs7QUFFRDtFQUNFLGVBQWM7Q0FDZjs7QUFFRDtFQUNFLGdCQUFlO0NBQ2hCOztBQUVEO0VBQ0UsMkJBQTBCO0VBQzFCLG1CQUFrQjtFQUNsQixXQUFVO0VBQ1YsVUFBUztDQUNWOztBQUVEO0VBQ0Usb0JBQW1CO0VBQ25CLG1CQUFrQjtFQUNsQixnQkFBZTtFQUNmLHNCQUFxQjtFQUNyQixZQUFXO0VBQ1gsc0JBQXFCO0VBQ3JCLG1CQUFrQjtFQUNsQiwwQkFBeUI7RUFDekIscUJBQW9CO0NBQ3JCOztBQUVEO0VBQ0UsZ0JBQWU7Q0FDaEI7O0FBRUQ7RUFDRSxlQUFjO0NBQ2Y7O0FBRUQ7RUFLRTtJQUNFLG1CQUFrQjtJQUNsQixvQkFBbUI7R0FDcEI7RUFFRDtJQUNFLGlCQUFnQjtHQUNqQjtFQTdISDtJQWdJSSx1QkFBc0I7R0FDdkI7RUFFRDtJQUNFLHlCQUF3QjtHQUN6QjtDakIyMEdGOztBaUJ4MEdEO0VBM0NBO0lBNkNJLGtCQUFpQjtHQUNsQjtFQTNJSDtJQThJSSxrQkFBaUI7SUFDakIsZ0JBQWU7R0FDaEI7RUFFRDtJQUNFLGNBQWE7R0FDZDtFQWxFSDtJQXFFSSxnQkFBZTtHQUNoQjtFQWxFSDtJQXFFSSwyQkFBMEI7SUFDMUIsT0FBTTtJQUNOLFFBQU87R0FDUjtFQUVEO0lBQ0UsZ0JBQWU7SUFDZixrQkFBaUI7R0FDbEI7RUF0RUg7SUF5RUksaUJBQWdCO0dBQ2pCO0VBaktIO0lBb0tJLGdCQUFlO0dBQ2hCO0NqQm8wR0Y7O0FrQi8vR0c7RUFDSSxvRUFBbUU7RUFDbkUsNENBQTJDO0VBQzNDLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsY0FBYTtFQUNiLGlCQUFnQjtFQUNoQixtQkFBa0I7RUFDbEIsa0JBQWlCO0VBQ2pCLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDJCQUFzQjtNQUF0Qix1QkFBc0I7RUFDdEIsdUJBQThCO01BQTlCLCtCQUE4QjtFQUM5QixzQkFBcUI7Q0FLeEI7O0FuQkdHO0VtQnBCSjtJQWNRLGVBQWM7SUFDZCxjQUFhO0dBRXBCO0NsQm9nSEo7O0FrQmxnSEc7RUFDSSxVQUFTO0NBS1o7O0FuQkxHO0VtQkRKO0lBSVEsb0JBQW1CO0dBRTFCO0NsQnNnSEo7O0FEOTNHRztFbUJsS0o7SUE4QlksV0FBVTtJQUNWLFlBQVc7SUFDWCxvQkFBbUI7R0FLdEI7RUFyQ1Q7SUFtQ2dCLGNBQWE7R0FDaEI7Q2xCdWdIWjs7QWtCbmdIRztFbkIwRkEsaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VtQjFGUCxxQ0FBb0M7RUFDcEMsaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixXQUFVO0VBQ1YsZ0JBQWU7Q0FvQ2pCOztBQTFDQTtFQVNNLFlBQVc7Q0FDZDs7QW5CN0JBO0VtQm1CSjtJQVlLLFVBQVM7R0E4QmI7Q2xCOCtHSjs7QWtCeGhISTtFQWdCTyxtQkFBa0I7RUFDbEIsd0NBQXVDO0VBQ3ZDLG1CQUFrQjtFQUNsQixvQkFBbUI7Q0FZdEI7O0FuQjlERDtFbUIrQkg7SUFxQlcsc0JBQXFCO0dBVTVCO0NsQnNnSFI7O0FrQnJpSEk7RUF5QlcsaUJBQWdCO0NBQ25COztBQTFCUjtFQTZCVyxpQkFBZ0I7Q0FDbkI7O0FBOUJSO0VBa0NPLG1CQUFrQjtFQUNsQixRQUFPO0NBQ1Y7O0FuQnZERDtFbUJtQko7SUF1Q1EsZUFBYztJQUNkLFVBQVM7R0FFaEI7Q2xCK2dISjs7QWtCam1IRDtFQXFGUSxjQUFhO0NBaUJoQjs7QUF0R0w7RUF3RlksbUJBQWtCO0VBQ2xCLGVBQWM7RUFDZCw2Q0FBNEM7Q0FPL0M7O0FBakdUO0VBNkZnQixlQUFjO0VBQ2QsaUJBQWdCO0VBQ2hCLGVBQWM7Q0FDakI7O0FBaEdiO0VBb0dZLGdCQUFlO0NBQ2xCOztBQXJHVDtFQXlHUSxpQkFBZ0I7Q0FDbkI7O0FBTUQ7RUFDSSwyQkFBMEI7RUFDMUIsb0JBQW1CO0NBS3RCOztBbkJsR0c7RW1CMkZKO0lBS1EsbUJBQWtCO0dBRXpCO0NsQjZnSEo7O0FrQjNnSEc7RUFDSSxtQ0FBa0M7RUFDbEMsbUJBQWtCO0NBS3JCOztBbkJrQ0Q7RW1CekNBO0lBS1Esa0JBQWlCO0dBRXhCO0NsQitnSEo7O0FrQmxpSEQ7RUFzQlEsbUJBQWtCO0VBQ2xCLGdDQUErQjtDQWtCbEM7O0FuQllEO0VtQnJESjtJQTBCWSxxQkFBYTtJQUFiLGNBQWE7R0FlcEI7Q2xCb2dISjs7QWtCN2lIRDtFQThCWSxXQUFVO0NBS2I7O0FBbkNUO0VBaUNnQixvQkFBbUI7Q0FDdEI7O0FBbENiO0VBc0NZLDJCQUFhO01BQWIsY0FBYTtFQUNiLGNBQWE7Q0FDaEI7O0FBeENUO0VBNENRLGdDQUErQjtDQVFsQzs7QW5CQ0Q7RW1CckRKO0lBK0NZLGlCQUFnQjtJQUNoQixxQkFBYTtJQUFiLGNBQWE7SUFDYiwyQkFBc0I7UUFBdEIsdUJBQXNCO0lBQ3RCLFlBQU87UUFBUCxRQUFPO0dBRWQ7Q2xCbWhISjs7QURsaEhHO0VtQnJESjtJQXdEWSxxQkFBYTtJQUFiLGNBQWE7SUFDYiwyQkFBc0I7UUFBdEIsdUJBQXNCO0lBQ3RCLFlBQU87UUFBUCxRQUFPO0dBRWQ7Q2xCbWhISjs7QUQxaEhHO0VtQnJESjtJQWdFWSxpQkFBZ0I7R0FFdkI7Q2xCbWhISjs7QWtCcmxIRDtFQXFFUSxtQkFBa0I7Q0FLckI7O0FBMUVMO0VBd0VZLGlCQUFnQjtDQUNuQjs7QUFHSjtFQUVPLHFCQUFvQjtFQUNwQixlckJ0S007RXFCdUtOLG9CQUFtQjtDQUN0Qjs7QW5CekxEO0VvQkxSO0lBSVEsZ0JBQWU7R0F1RnRCO0NuQjJuSEE7O0FtQi9zSEc7RUFDSSxtQkFBa0I7RUFDbEIsb0JBQW1CO0VBQ25CLGlCQUFnQjtFQUNoQixxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBbUI7TUFBbkIsb0JBQW1CO0NBQ3RCOztBQUVEO0VBQ0ksY0FBYTtFQUNiLG1CQUFrQjtDQUNyQjs7QUFFRDtFQUNJLDZCQUE0QjtFQUM1QixpQkFBZ0I7RUFDaEIsWUFBVztFQUNYLG1CQUFrQjtFQUNsQixxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBbUI7TUFBbkIsb0JBQW1CO0VBQ25CLGtCQUFpQjtFQUNqQixZQUFXO0NBaUJkOztBcEJoQ0c7RW9CT0o7SUFXUSxtQkFBa0I7R0FjekI7Q25CdXNISjs7QUQvdEhPO0VvQkRKO0lBZVEsbUJBQWtCO0dBVXpCO0NuQjZzSEo7O0FEenVITztFb0JHSjtJQW1CUSxjQUFhO0dBTXBCO0NuQm10SEo7O0FtQjV1SEk7RUF1Qk8saUJBQWdCO0NBQ25COztBQUdKO0VBRU8saUJBQWdCO0NBQ25COztBQUdMO0VBQ0ksb0VBQW1FO0VBQ25FLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sU0FBUTtFQUNSLFVBQVM7RUFDVCxRQUFPO0NBQ1Y7O0FBRUQ7RUFDSSxtQkFBa0I7RUFDbEIsU0FBUTtFQUNSLFVBQVM7RUFDVCxlQUFjO0NBS2pCOztBcEJ0REc7RW9CNkNKO0lBT1EsY0FBYTtHQUVwQjtDbkJ1dEhKOztBbUI5eEhEO0VBMkVZLGFBQVk7Q0FDZjs7QXBCdkVEO0VvQkxSO0lBa0ZnQiw0QkFBMkI7R0FDOUI7Q25CcXRIWjs7QW1CeHlIRDtFQXVGWSxRQUFPO0VBQ1AsWUFBVztDQUNkOztBQ3pGVDtFQUNJLGlCQUFnQjtFQUNoQiw2RHZCZ0N3STtFdUIvQnhJLFlBQVc7RUFDWCxtQkFBa0I7Q0E2SXJCOztBQWpKRDtFQU9RLGNBQWE7Q0FDaEI7O0FBUkw7RUFZUSxnQ0FBOEI7RUFDOUIsb0JBQW1CO0VBQ25CLGNBQWE7RUFDYixtQkFBa0I7Q0FxRXJCOztBQXBGTDtFQWtCVSxnQkFBZTtDQUNoQjs7QUFuQlQ7RUFzQlksaUJBQWdCO0NBQ25COztBckJGRDtFcUJyQlI7SUEwQlksY0FBYTtHQTBEcEI7Q3BCeXZISjs7QURoMEhPO0VxQmJSO0lBOEJZLGNBQWE7R0FzRHBCO0NwQit2SEo7O0FvQm4xSEQ7RUFrQ2dCLG1CQUFrQjtDQWFyQjs7QUEvQ2I7RUFvQ29CLHdCQUF1QjtFQUN2QixtQkFBa0I7RUFDbEIsV0FBVTtDQVFiOztBQTlDakI7RUF3Q3dCLHVCQUFzQjtFQUN0QixzQkFBcUI7Q0FDeEI7O0FyQnJCYjtFcUJyQlI7SUE0Q3dCLFVBQVM7R0FFaEI7Q3BCMHpIaEI7O0FvQngySEQ7RUFtRGdCLG1CQUFrQjtDQUtyQjs7QUF4RGI7RUFxRG9CLFdBQVU7RUFDVixXQUFVO0NBQ2I7O0FyQjlDVDtFcUJUUjtJbkJtQ0ksd0RBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztJQS9CbkMseUVBQWlNO0dtQnFCeEw7RW5CV1Q7SUFDSSwwQkFBeUI7R0FDNUI7RUFGRDtJQTdCSSx5RUFBaU07R0FDcE07Q0RrMUhKOztBb0JqNEhEO0VBcUVnQixvQkFBbUI7RUFDbkIscUJBQW9CO0VBQ3BCLGtEQUFrRDtDQUNyRDs7QUF4RWI7RUEwRWdCLGlCQUFnQjtFQUNoQix1QkFBc0I7Q0FJekI7O0FyQnRFTDtFcUJUUjtJQTZFb0IsaURBQWlEO0dBRXhEO0NwQm0wSFo7O0FvQmw1SEQ7RUFpRmdCLHVCQUFzQjtDQUN6Qjs7QUFsRmI7RUF1RlEsbUJBQWtCO0NBQ3JCOztBQXhGTDtFQTJGUSxlQUFjO0NBQ2pCOztBQTVGTDtFQStGUSxnQnZCbERJO0N1Qm1EUDs7QUFoR0w7RUFxR2dCLG9CQUFtQjtDQUN0Qjs7QUF0R2I7RUEwR1ksdUJBQWM7TUFBZCxlQUFjO0NBQ2pCOztBQTNHVDtFQThHWSxvQkFBbUI7Q0FDdEI7O0FBL0dUO0VBa0hZLGlCQUFnQjtDQUNuQjs7QUFuSFQ7RUFzSFksZ0JBQWU7RUFDZixpQkFBZ0I7Q0FRbkI7O0FBL0hUO0VBeUhnQixZQUFXO0VBQ1gsMkJBQTBCO0NBQzdCOztBQTNIYjtFQTZIZ0IsbUJBQWtCO0NBQ3JCOztBQTlIYjtFQWtJWSxnQkFBZTtFQUNmLG1CQUFrQjtDQU1yQjs7QUF6SVQ7RUFzSWdCLFlBQVc7RUFDWCwyQkFBMEI7Q0FDN0I7O0FyQm5ITDtFcUJyQlI7SUE4SVksaUJBQWdCO0dBQ25CO0NwQmkwSFI7O0FvQjl6SEQ7RUFDSSx3QkFBdUI7RUFDdkIsV0FBVTtFQUNWLG1CQUFrQjtDQVFyQjs7QXJCeElPO0VxQjZIUjtJQUtRLFdBQVU7R0FNakI7Q3BCK3pIQTs7QW9CMTBIRDtFQVFRLHVCQUFzQjtFQUN0QixzQkFBcUI7Q0FDeEI7O0FBRUw7RUFDSSxhQUFZO0VBQ1osWUFBVztFQUNYLGdCQUFlO0VBQ2YsYUFBWTtFQUNaLFFBQU87RUFDUCxPQUFNO0VBQ04sd0JBQTRCO0VBQzVCLHFDQUFrQztFQUNsQyxtQkFBa0I7RUFDbEIsaUJBQWdCO0NBb0NuQjs7QUE5Q0Q7RUFZUSx3QkFBbUM7RUFDbkMsbUJBQWtCO0VBQ2xCLGNBQWE7RUFDYixhQUFZO0VBQ1osd0JBQXVCO0VBQ3ZCLHNCQUFxQjtFQUNyQixpQkFBZ0I7RUFDaEIsbUJBQWtCO0VBQ2xCLGNBQWE7Q0F5QmhCOztBQTdDTDtFQXNCWSxZQUFXO0VBQ1gsYUFBWTtFQUNaLGVBQWM7RUFDZCxrQkFBaUI7RUFDakIsbUJBQWtCO0VBQ2xCLHNDQUErQztFQUMvQyw4Q0FBNkM7RUFDekMsaURBQWdEO0VBQ2hELGtEQUFpRDtFQUNqRCxzREFBcUQ7RUFDckQsbURBQWtEO0NBQ3pEOztBQWpDVDtFQW1DWSxtQkFBa0I7Q0FTckI7O0FBNUNUO0VBcUNnQixnQkFBZTtFQUNmLG1CQUFrQjtDQUNyQjs7QUF2Q2I7RUF5Q2dCLGdCQUFlO0VBQ2YsVUFBUztDQUNaOztBQUtiO0VBQ0k7SUFBTSwwQkFBeUI7SUFBRSwwQkFBeUI7R3BCNjBIM0Q7Q0FDRjs7QXFCN2hJRDtFQUdJLG1CQUFrQjtDQTZNckI7O0FBaE5EO0VBU1EsbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixTQUFRO0VBQ1IsVUFBUztFQUNULFFBQU87Q0FDVjs7QUFkTDtFdEIrRVEsa0RBQXlDO1VBQXpDLDBDQUF5QztFQUN6QywrQkFBc0I7VUFBdEIsdUJBQXNCO0VBQ3RCLGdDQUF1QjtVQUF2Qix3QkFBdUI7RUFDdkIseUJBQWdCO1VBQWhCLGlCQUFnQjtDc0IxRWY7O0F0QjZERDtFQUNJLGtEQUF5QztVQUF6QywwQ0FBeUM7RUFDekMsK0JBQXNCO1VBQXRCLHVCQUFzQjtFQUN0Qiw2QkFBb0I7VUFBcEIscUJBQW9CO0VBQ3BCLHlCQUFnQjtVQUFoQixpQkFBZ0I7Q0FDbkI7O0FzQjFFVDtFQWlCUSxtQkFBa0I7RUFDbEIsNkJBQTRCO0VBQzVCLDRCQUEyQjtFQUMzQix1QkFBc0I7RUFDdEIsY0FBYTtDQUtoQjs7QXRCTEc7RXNCckJSO0lBd0JZLGNBQWE7R0FFcEI7Q3JCdWtJSjs7QXFCam1JRDtFQTZCUSwyQkFBMEI7Q0FDN0I7O0FBOUJMO0VBaUNRLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sUUFBTztFQUNQLFNBQVE7RUFDUixVQUFTO0VBQ1QsWUFBVztFQUNYLGFBQVk7RUFDWixxQkFBaUI7S0FBakIsa0JBQWlCO0NBQ3BCOztBQXpDTDtFQTRDUSxtQkFBa0I7RUFDbEIscUJBQWE7RUFBYixjQUFhO0VBQ2IsdUJBQW1CO01BQW5CLG9CQUFtQjtFQUNuQixZQUFXO0VBQ1gsa0JBQWlCO0NBS3BCOztBdEJoQ0c7RXNCckJSO0lBbURZLGtCQUFpQjtHQUV4QjtDckJ5a0lKOztBcUI5bklEO0VBd0RRLFlBQVc7RUFDWCxtQkFBa0I7Q0F3QnJCOztBQWpGTDtFQTREWSxlQUFjO0VBQ2Qsb0JBQW1CO0NBbUJ0Qjs7QUFoRlQ7RUFnRWdCLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLGtCQUFpQjtFQUNqQixZQUFXO0VBQ1gsb0NBQW1DO0VBQ25DLDRCQUEyQjtDQVU5Qjs7QXRCdEVMO0VzQlRSO0lBd0VvQixvRUFBbUU7SUFDbkUsNkJBQTRCO0dBTW5DO0NyQnlrSVo7O0FEbm9JTztFc0JyQlI7SUE2RW9CLGtCQUFpQjtHQUV4QjtDckIra0laOztBcUI5cElEO0VBcUZZLGtCQUFpQjtDQUtwQjs7QXRCckVEO0VzQnJCUjtJQXdGZ0Isa0JBQWlCO0dBRXhCO0NyQjhrSVI7O0FxQnhxSUQ7RUFnR1ksc0JBQXVCO01BQXZCLHdCQUF1QjtFQUN2QixpQkFBZ0I7Q0FDbkI7O0FBbEdUO0VBdUdZLHVCQUFtQjtNQUFuQixvQkFBbUI7Q0FDdEI7O0FBeEdUO0VBNkdZLG9CQUFxQjtNQUFyQixzQkFBcUI7Q0FLeEI7O0F0QjdGRDtFc0JyQlI7SUFnSGdCLFVBQVM7R0FFaEI7Q3JCeWtJUjs7QXFCM3JJRDtFQXVIWSxxQkFBMkI7TUFBM0IsNEJBQTJCO0NBQzlCOztBQXhIVDtFQTZIWSxzQkFBdUI7TUFBdkIsd0JBQXVCO0NBQzFCOztBQTlIVDtFQW1JWSxtQkFBeUI7TUFBekIsMEJBQXlCO0NBQzVCOztBQUdKO0VBRU8sYUFBWTtDQUNmOztBQUhKO0VBTU8sZ0JBQWU7RUFDZix3QkFBdUI7Q0FZMUI7O0F0QlFMO0VzQjNCQztJQVVXLHVCQUFzQjtHQVM3QjtDckI0aklSOztBRHBqSUc7RXNCM0JDO0lBZWUsdUJBQW1CO1FBQW5CLG9CQUFtQjtJQUNuQixZQUFXO0dBRWxCO0NyQm9rSVo7O0FxQnRsSUk7RUF1QlcsY0FBYTtDQUNoQjs7QUF4QlI7RUEyQlcsaUJBQWdCO0NBQ25COztBdEJEVDtFc0IzQkM7SUFrQ2Usa0JBQWlCO0lBQ2pCLGdDQUEyQjtRQUEzQiw0QkFBMkI7R0FDOUI7RUFwQ1o7SUF1Q2Usa0JBQWlCO0dBQ3BCO0NyQmdrSWhCOztBRDdrSUc7RXNCM0JDO0lBK0NlLG1CQUFrQjtJQUNsQixzQkFBdUI7UUFBdkIsd0JBQXVCO0dBQzFCO0VBakRaO0lBb0RlLGtCQUFpQjtJQUNqQixtQkFBa0I7R0FDckI7Q3JCNmpJaEI7O0FEanZJTztFc0I4SEg7SUE0RFcscUJBQW9CO0dBRTNCO0NyQjJqSVI7O0FxQnhqSUc7RUFDSSxpQkFBZ0I7Q0FDbkI7O0FBMU1MO0VBNk1RLGlCQUFnQjtFQUNoQixpQkFBZ0I7Q0FDbkI7O0FDL01MO0VBQ0ksbUJBQWtCO0VBQ2xCLGtCQUFpQjtDQXdKcEI7O0FBMUpEO0VBUVEsbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixVQUFTO0VBQ1QsUUFBTztFQUNQLFNBQVE7Q0FDWDs7QUFiTDtFdkIrRVEsa0RBQXlDO1VBQXpDLDBDQUF5QztFQUN6QywrQkFBc0I7VUFBdEIsdUJBQXNCO0VBQ3RCLGdDQUF1QjtVQUF2Qix3QkFBdUI7RUFDdkIseUJBQWdCO1VBQWhCLGlCQUFnQjtDdUIzRWY7O0F2QjhERDtFQUNJLGtEQUF5QztVQUF6QywwQ0FBeUM7RUFDekMsK0JBQXNCO1VBQXRCLHVCQUFzQjtFQUN0Qiw2QkFBb0I7VUFBcEIscUJBQW9CO0VBQ3BCLHlCQUFnQjtVQUFoQixpQkFBZ0I7Q0FDbkI7O0F1QjFFVDtFQWVRLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sVUFBUztFQUNULFFBQU87RUFDUCxTQUFRO0VBQ1IsNkJBQTRCO0VBQzVCLDRCQUEyQjtFQUMzQix1QkFBc0I7Q0FDekI7O0FBdkJMO0VBMEJRLG1CQUFrQjtFQUNsQixxQkFBYTtFQUFiLGNBQWE7RUFDYixzQkFBdUI7TUFBdkIsd0JBQXVCO0VBQ3ZCLHVCQUFzQjtFQUN0QiwyQkFBc0I7TUFBdEIsdUJBQXNCO0VBQ3RCLG1CQUFrQjtDQUlyQjs7QUFuQ0w7RUFpQ1ksbUJBQWtCO0NBQ3JCOztBQWxDVDtFQXFDUSxtQkFBa0I7Q0FDckI7O0FBdENMO0VBeUNRLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHVCQUFtQjtNQUFuQixvQkFBbUI7RUFDbkIsc0JBQXVCO01BQXZCLHdCQUF1QjtDQUMxQjs7QUE1Q0w7RUFnRFksaUJBQWdCO0NBQ25COztBdkI1QkQ7RXVCckJSO0lBbURZLGlCQUFnQjtHQUV2QjtDdEIyeElKOztBc0JoMUlEO0VBd0RRLFlBQVc7RUFDWCxtQkFBa0I7Q0FzQnJCOztBQS9FTDtFQTJEWSxlQUFjO0VBQ2Qsb0JBQW1CO0NBa0J0Qjs7QUE5RVQ7RUE4RGdCLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLGtCQUFpQjtFQUNqQixZQUFXO0VBQ1gsb0NBQW1DO0VBQ25DLDRCQUEyQjtDQVU5Qjs7QXZCcEVMO0V1QlRSO0lBc0VvQixvRUFBbUU7SUFDbkUsNkJBQTRCO0dBTW5DO0N0QjZ4SVo7O0FEcjFJTztFdUJyQlI7SUEyRW9CLGtCQUFpQjtHQUV4QjtDdEJteUlaOztBc0JoM0lEO0VBa0ZRLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sUUFBTztFQUNQLFNBQVE7RUFDUixVQUFTO0VBQ1QsWUFBVztFQUNYLGFBQVk7RUFDWixxQkFBaUI7S0FBakIsa0JBQWlCO0NBQ3BCOztBQTFGTDtFQTZGUSxjQUFhO0NBQ2hCOztBdkJ6RUc7RXVCckJSO0lBaUdZLGlCQUFnQjtHQUNuQjtDdEJteUlSOztBRHgzSU87RXVCYlI7SUFzR1ksaUJBQWdCO0dBQ25CO0N0Qm95SVI7O0FEdDRJTztFdUJMUjtJQTJHWSxpQkFBZ0I7R0FDbkI7Q3RCcXlJUjs7QUR4NElPO0V1QlRSO0lBa0hnQixzQkFBdUI7UUFBdkIsd0JBQXVCO0dBQzFCO0VBbkhiO0lBd0hnQix1QkFBbUI7UUFBbkIsb0JBQW1CO0dBQ3RCO0VBekhiO0lBOEhnQixvQkFBcUI7UUFBckIsc0JBQXFCO0dBQ3hCO0VBL0hiO0lBb0lnQixxQkFBMkI7UUFBM0IsNEJBQTJCO0dBQzlCO0VBckliO0lBMElnQixzQkFBdUI7UUFBdkIsd0JBQXVCO0dBQzFCO0VBM0liO0lBZ0pnQixtQkFBeUI7UUFBekIsMEJBQXlCO0dBQzVCO0N0QnF4SVo7O0FzQnQ2SUQ7RUFxSlEsa0JBQWlCO0NBSXBCOztBdkJwSUc7RXVCckJSO0lBdUpZLGdCQUFlO0dBRXRCO0N0QnV4SUo7O0F1Qmg3SUQ7RUFDSSxtQkFBa0I7RUFDbEIsV0FBVTtDQUtiOztBeEJjTztFd0JyQlI7SUFLUSxvQkFBbUI7R0FFMUI7Q3ZCbzdJQTs7QUR0N0lPO0V5QkxSO0lBRVEsZ0JBQWU7R0FFdEI7Q3hCNjdJQTs7QXdCMzdJRDtFQUNJLG1CQUFrQjtDQVVyQjs7QUFSRztFQUNJLG9CQUFtQjtDQUN0Qjs7QUFMTDtFQVFRLG9CQUFtQjtFQUNuQixpQkFBZ0I7Q0FDbkI7O0FDaEJMO0UxQmtJSSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RUc1SE4scUJBQWE7RUFBYixjQUFhO0VBTWIsb0JBQWU7TUFBZixnQkFBZTtDdUJadEI7O0F2QjBFRztFQWxCQSxhQUFZO0VBQ1oscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsOEJBQWdCO01BQWhCLGlCQUFnQjtDQWVuQjs7QUFURDtFQUNJLGlCQUFnQjtDQUNuQjs7QUF2Q0c7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHViw4Qkx1Qk07TUt2Qk4saUJMdUJNO0VLdEJOLGdCTHNCTTtDS2pDTDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLDZCTHdCUTtNS3hCUixnQkx3QlE7RUt2QlIsZUx1QlE7Q0tsQ1A7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHVixrQ0x5QmE7TUt6QmIscUJMeUJhO0VLeEJiLG9CTHdCYTtDS25DWjs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLGtDTDBCYTtNSzFCYixxQkwwQmE7RUt6QmIsb0JMeUJhO0NLcENaOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsNkJMMkJRO01LM0JSLGdCTDJCUTtFSzFCUixlTDBCUTtDS3JDUDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLDZCTDRCUTtNSzVCUixnQkw0QlE7RUszQlIsZUwyQlE7Q0t0Q1A7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHVixtQ0w2QmM7TUs3QmQsc0JMNkJjO0VLNUJkLHFCTDRCYztDS3ZDYjs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLGtDTDhCYTtNSzlCYixxQkw4QmE7RUs3QmIsb0JMNkJhO0NLeENaOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsNkJMK0JRO01LL0JSLGdCTCtCUTtFSzlCUixlTDhCUTtDS3pDUDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLDZCTGdDUTtNS2hDUixnQkxnQ1E7RUsvQlIsZUwrQlE7Q0sxQ1A7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHViw2QkxpQ1E7TUtqQ1IsZ0JMaUNRO0VLaENSLGVMZ0NRO0NLM0NQOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsNkJMa0NRO01LbENSLGdCTGtDUTtFS2pDUixlTGlDUTtDSzVDUDs7QXVCOUJUO0VBQ0ksaUJBQWdCO0NBbUJuQjs7QUFqQkc7RUFDSSxnQkFBZTtDQUNsQjs7QUFMTDtFQVFRLG9CQUFtQjtFQUNuQixhQUFZO0NBTWY7O0ExQkVHO0UwQmpCUjtJQVlZLG1CQUFrQjtJQUNsQixhQUFZO0dBRW5CO0N6QnNqSko7O0F5QnJrSkQ7RUFrQlEseUJBQXdCO0NBQzNCOztBQ3ZCTDtFQUdJLG1CQUFrQjtDQWlRckI7O0FBL1BHO0VBQ0ksZUFBYztFQUNkLGlCQUFnQjtFQUNoQixvQkFBbUI7Q0FDdEI7O0FBRUQ7RUFDSSxlQUFjO0VBQ2QsY0FBYTtDQUNoQjs7QUFFRDtFQUNJLGdCN0I0Qkk7RTZCM0JKLG9CQUFtQjtFQUNuQixlQUFjO0NBS2pCOztBQVJBO0VBTU8sY0FBYTtDQUNoQjs7QUFHTDtFQUNJLGdCQUFlO0VBQ2YsY0FBYTtDQW9CaEI7O0FBdEJBO0VBS08saUJBQWdCO0NBQ25COztBQU5KO0VBUU8sbUJBQWtCO0VBQ2xCLGNBQWE7RUFDYixpQkFBZ0I7Q0FDbkI7O0FBWEo7RUFhSyxZQUFXO0VBQ1gsa0JBQWlCO0VBQ2pCLG1CQUFrQjtFQUNsQixVQUFTO0VBQ1QsU0FBUTtFQUNSLFdBQVU7RUFDVixjQUFhO0VBQ2IseUVBQXlGO0NBQzFGOztBQUdKO0VBRU8saUJBQWdCO0NBQ25COztBQUdMO0UzQjBFQSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RTJCekVOLGVBQWM7RUFDZCwwQkFBeUI7Q0FZNUI7O0FBaEJBO0VBT08sc0JBQXFCO0VBQ3JCLGNBQWE7Q0FDaEI7O0FBVEo7RUFZTywyQkFBMEI7RUFDMUIsZUFBYztFQUNkLGdCQUFlO0NBQ2xCOztBQXZFVDtFQTJFUSxnQ0FBMkI7TUFBM0IsNEJBQTJCO0NBQzlCOztBM0J2RUc7RTJCTFI7SUFnRlksaUJBQWdCO0lBQ2hCLHFCQUFhO0lBQWIsY0FBYTtJQUNiLFdBQVU7R0EyQmI7RUE3R1Q7SUFxRmdCLGlCQUFnQjtHQUNuQjtFQXRGYjtJQXlGZ0IsV0FBVTtHQUNiO0VBMUZiO0lBNkZnQixrQkFBYTtRQUFiLGNBQWE7R0FDaEI7RUE5RmI7SUFpR2dCLGNBQWE7R0FDaEI7RUFsR2I7SUFxR2dCLG1CQUFrQjtHQUNyQjtFQXRHYjtJQTBHb0IsMEJBQXlCO0dBQzVCO0VBM0dqQjtJQWdIWSxjQUFhO0dBQ2hCO0MxQnVrSlI7O0EwQnhySkQ7RUFxSFEsNENBQTBDO0NBQzdDOztBQXRITDtFQTBIWSxvQkFBbUI7Q0FDdEI7O0FBR0o7RUFHVyxxQkFBYTtFQUFiLGNBQWE7RUFDYiwyQkFBc0I7TUFBdEIsdUJBQXNCO0VBQ3RCLHNCQUF1QjtNQUF2Qix3QkFBdUI7RUFDdkIsWUFBVztDQUtkOztBQVhSO0VBY1csb0JBQW1CO0NBS3RCOztBQW5CUjtFQXNCVyx1RUFBc0U7Q0FDekU7O0EzQmFUO0UyQnBDQztJQTJCZSxtQkFBa0I7SUFDbEIsT0FBTTtJQUNOLFFBQU87SUFDUCxTQUFRO0lBQ1IsVUFBUztHQVFaO0VBdkNaO0lBa0NtQixtQkFBa0I7SUFDbEIsWUFBVztJQUNYLGFBQVk7SUFDWixxQkFBaUI7T0FBakIsa0JBQWlCO0dBQ3BCO0MxQjJqSnBCOztBRDdqSkc7RTJCcENDO0lBNkNtQixjQUFhO0dBQ2hCO0MxQnlqSnBCOztBMEJ2bUpJO0VBb0RPLG1CQUFrQjtDQWNyQjs7QUFsRUo7RUF1RFcsWUFBVztFQUNYLG1CQUFrQjtFQUNsQixVQUFTO0VBQ1QsV0FBVTtFQUNWLFVBQVM7RUFDVCxZQUFXO0VBQ1gsb0JBQW1CO0VBQ25CLGFBQVk7RUFDWixtQkFBa0I7RUFDbEIsV0FBVTtDQUNiOztBQWpFUjtFQXFFTyxpQkFBZ0I7Q0FLbkI7O0EzQnRDTDtFMkJwQ0M7SUF3RVcsbUJBQWtCO0dBRXpCO0MxQndqSlI7O0EwQmxvSkk7RUE2RU8sV0FBVTtDQUNiOztBQTlFSjtFQWlGTyx1RUFBc0U7RUFDdEUsbUJBQWtCO0NBT3JCOztBQXpGSjtFQXNGZSxzQkFBcUI7Q0FDeEI7O0FBdkZaO0VBNEZPLGlCQUFnQjtFQUNoQixXQUFVO0VBQ1YsaUJBQWdCO0NBTW5COztBQXBHSjtFQWlHVyx3QkFBb0I7S0FBcEIscUJBQW9CO0VBQ3BCLHFCQUFpQjtLQUFqQixrQkFBaUI7Q0FDcEI7O0FBbkdSO0VBdUdPLG1CQUFrQjtFQUNsQixXQUFVO0NBQ2I7O0FBekdKO0VBNEdPLG1CQUFrQjtDQUNyQjs7QUE3R0o7RUFnSE8sZTdCeE5NO0U2QnlOTix3QkFBdUI7RUFDdkIsa0JBQWlCO0VBQ2pCLG9CQUFtQjtDQUt0Qjs7QUF4SEo7RUEySE8sb0JBQW1CO0NBS3RCOztBQWhJSjtFQThIVyxzQkFBcUI7Q0FDeEI7O0FBL0hSO0VBbUlPLG9CQUFtQjtDQUN0Qjs7QUNsUVQ7RUFDSTs7O09BR0c7Q0ErTE47O0FBN0xHO0VBQ0ksbUJBQWtCO0VBQ2xCLGtCQUFpQjtDQTBFcEI7O0E1QjdERztFNEJmSjtJQUtRLG9CQUFtQjtHQXVFMUI7QzNCb3ZKSjs7QTJCaDBKSTtFQVNPLG1CQUFrQjtFQUNsQixrQkFBaUI7RUFDakIsV0FBVTtDQUNiOztBQVpKO0VBZU8sbUJBQWtCO0VBQ2xCLFVBQVM7RUFDVCxjQUFhO0VBQ2Isd0JBQXVCO0VBQ3ZCLGlCQUFnQjtFQUNoQixpQkFBZ0I7RUFDaEIsa0JBQWlCO0VBQ2pCLHFCQUFvQjtFQUNwQixlQUFjO0VBQ2QsZ0NBQStCO0VBQy9CLGdCQUFlO0NBV2xCOztBNUJyQkQ7RTRCZkg7SUE0QlcsbUJBQWtCO0dBUXpCO0MzQnN6SlI7O0EyQjExSkk7RUFpQ2UsY0FBYTtDQUNoQjs7QUFsQ1o7RUF1Q08sbUJBQWtCO0VBQ2xCLGFBQVk7RUFDWixVQUFTO0VBQ1QsV0FBVTtFQUNWLFlBQVc7RUFDWCxnQ0FBK0I7RUFDL0IsWUFBVztDQUNkOztBQTlDSjtFNUJzQkQsc0JBQXFCO0VBQ3JCLDZEQUlDO0VBQ0QsZVFaOEc7RVJhOUcsOEJBQTZCO0VBQzdCLHFDQUFvQztDNEJvQi9COztBQWxESjs7O0VBdURPLFdBQVU7RUFDVixpQkFBZ0I7Q0FDbkI7O0FBekRKO0VBOERPLHdCQUF1QjtDQUMxQjs7QUEvREo7RUFrRU8sV0FBVTtDQUNiOztBQW5FSjtFQXNFTyxVQUFTO0NBQ1o7O0FBdkVKO0VBMEVPLGdCQUFlO0NBQ2xCOztBQUdMO0VBQ0ksbUJBQWtCO0NBRXJCOztBQUVEO0VBQ0ksbUJBQWtCO0VBQ2xCLFdBQVU7RUFDVixtQkFBa0I7RUFDbEIsaUJBQWdCO0NBS25COztBNUI3RUc7RTRCb0VKO0lBT1EsaUJBQWdCO0dBRXZCO0MzQjR6Sko7O0EyQjk1SkQ7RUFxR1EsbUJBQWtCO0NBQ3JCOztBQUVEOztFQUVJLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sU0FBUTtFQUNSLFVBQVM7RUFDVCxRQUFPO0NBQ1Y7O0FBRUQ7RUFDSSxrRUFBaUU7Q0FLcEU7O0FBTkE7RUFJTyxvRUFBbUU7Q0FDdEU7O0FBR0w7RUFDSSxvQkFBbUI7Q0FDdEI7O0FBM0hMO0VBK0hZLGdDQUErQjtDQUNsQzs7QUFoSVQ7RUFvSWdCLFdBQVU7Q0FDYjs7QUFySWI7RUF3SWdCLFdBQVU7Q0FDYjs7QUF6SWI7RUE2SVksWUFBVztDQVNkOztBQXRKVDtFQWdKZ0IsV0FBVTtDQUNiOztBQWpKYjtFQW9KZ0IsV0FBVTtDQUNiOztBQXJKYjtFQTJKWSxZQUFXO0NBQ2Q7O0FBNUpUO0VBZ0tRLDRCQUFvQjtFQUFwQixxQkFBb0I7RUFDcEIsdUJBQW1CO01BQW5CLG9CQUFtQjtDQUN0Qjs7QUFsS0w7RUFxS1EsNEJBQW9CO0VBQXBCLHFCQUFvQjtFQUNwQiwyQkFBc0I7TUFBdEIsdUJBQXNCO0VBQ3RCLHVCQUFtQjtNQUFuQixvQkFBbUI7RUFDbkIsZ0JBQWU7RUFDZixpQkFBZ0I7Q0FTbkI7O0E1QjdKRztFNEJyQlI7SUE0S1ksZ0JBQWU7R0FNdEI7QzNCb3pKSjs7QTJCdCtKRDtFQWdMWSxtQkFBa0I7Q0FDckI7O0FBakxUO0VBcUxRLHVCQUFzQjtDQUN6Qjs7QUF0TEw7RUF5TFEsMEJBQXlCO0NBQzVCOztBQTFMTDtFQTZMUSwwQkFBeUI7Q0FDNUI7O0FBOUxMO0VBaU1RLDBCQUF5QjtDQUM1Qjs7QUNqTUQ7RUFDSSxvQkFBbUI7RUFDbkIsaUJBQWdCO0NBQ25COztBQUVEO0VBQ0ksb0JBQW1CO0NBMkJ0Qjs7QUE1QkE7RUFJTyxtQkFBa0I7Q0FDckI7O0FBTEo7RUFRTyxtQkFBa0I7Q0FDckI7O0FBVEo7RTdCa0lELGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFQUNWLGlCQUFnQjtFQUNoQixxQkFBb0I7RUFDcEIsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixpQkFBZ0I7QzZCL0hYOztBQWJKO0VBZ0JPLHNCQUFxQjtFQUNyQixZQUFXO0VBQ1gsYUFBWTtFQUNaLHVCQUFzQjtFQUN0QixtQkFBa0I7RUFDbEIsWUFBVztDQU1kOztBQTNCSjtFQXdCVyxVQUFTO0VBQ1Qsb0JBQW1CO0NBQ3RCOztBQUlSO0VBRU8sMEJBQXlCO0VBQ3pCLG1CQUFrQjtFQUNsQixVQUFTO0NBQ1o7O0E3QmhDRDtFNkJtQ0o7SUFFUSxtQkFBa0I7R0FXekI7RUFiQTtJQUtXLFlBQVc7SUFDWCxtQkFBa0I7SUFDbEIsT0FBTTtJQUNOLFVBQVM7SUFDVCxVQUFTO0lBQ1QsNEJBQTJCO0dBQzlCO0M1Qm9nS1o7O0FEbGpLTztFNkJUUjtJM0JtQ0ksdURBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztJQS9CbkMsd0VBQWlNO0cyQitCaE07RTNCQ0Q7SUFDSSwwQkFBeUI7R0FDNUI7RUFGRDtJQTdCSSx3RUFBaU07R0FDcE07Q0Q0aEtKOztBNEIza0tEO0VBaUVZLGdCQUFlO0VBQ2YsOERBQTZEO0VBQzdELFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsY0FBYTtDQUloQjs7QTdCcEREO0U2QnJCUjtJQXVFZ0IsZ0JBQWU7R0FFdEI7QzVCZ2hLUjs7QURobEtPO0U2QlRSO0kzQm1DSSx1REFBa0k7SUFxQ2xJLHVCQUFzQjtJQUN0QixZQUFXO0lBQ1gsNkJBQW1DO0lBL0JuQyx5RUFBaU07RzJCZ0RoTTtFM0JoQkQ7SUFDSSwwQkFBeUI7R0FDNUI7RUFGRDtJQTdCSSx5RUFBaU07R0FDcE07Q0QwaktKOztBNEJ6bUtEO0VBa0ZZLGdCQUFlO0VBQ2YsOERBQTZEO0VBQzdELFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsY0FBYTtDQUloQjs7QTdCckVEO0U2QnJCUjtJQXdGZ0IsZ0JBQWU7R0FFdEI7QzVCNmhLUjs7QTRCdm5LRDtFN0JrSUksaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0M2Qm5CVDs7QUFqSEw7RUFpR1ksb0JBQW1CO0NBZXRCOztBQWhIVDtFQW9HZ0IsZ0JBQWU7RUFDZiwwQkFBeUI7Q0FDNUI7O0FBdEdiO0VBeUdnQixnQkFBZTtFQUNmLGlCQUFnQjtDQUNuQjs7QUEzR2I7RUE4R2dCLGdCQUFlO0NBQ2xCOztBQS9HYjtFQW9IUSxtQkFBa0I7Q0FZckI7O0E3QjNHRztFNkJyQlI7SUF1SFksaUJBQWdCO0lBQ2hCLG9CQUFtQjtHQVExQjtDNUIwaEtKOztBNEIxcEtEO0VBNEhZLGlCQUFnQjtFQUVoQixZQUFXO0NBQ2Q7O0FBL0hUO0VBbUlRLG1DQUFrQztDQUNyQzs7QUNuSUQ7RUFDSSxpQkFBZ0I7RTlCMEJwQixzQkFBcUI7RUFDckIsNkRBSUM7RUFDRCxlUVo4RztFUmE5Ryw4QkFBNkI7RUFDN0IscUNBQW9DO0M4QnZCbkM7O0FBWkE7RUFJTyxlQUFjO0NBQ2pCOztBQUxKO0VBT0ssVUFBUztDQUNWOztBQVJKO0VBVUssVUFBUztDQUNWOztBQUdMO0VBQ0ksaUJBQWdCO0NBQ25COztBQWpCTDtFQW9CUSxpQkFBZ0I7Q0FDbkI7O0FDckJMO0VBQ0UsaUJBQWdCO0VBQ2hCLDZEakNnQzBJO0VpQy9CMUksWUFBVztFQUNYLG1CQUFrQjtFQUNsQixtQkFBa0I7Q0FxWW5COztBQTFZRDtFQVFJLGNBQWE7Q0FDZDs7QUFUSDtFQWFJLGdDQUE4QjtFQUM5QixvQkFBbUI7RUFDbkIsY0FBYTtFQUNiLG1CQUFrQjtDQWFuQjs7QUE3Qkg7RUFtQk0sZ0JBQWU7Q0FDaEI7O0EvQkNHO0UrQnJCUjtJQXVCTSxjQUFhO0dBTWhCO0M5QmdzS0Y7O0FEaHRLTztFK0JiUjtJQTJCTSxjQUFhO0dBRWhCO0M5QnNzS0Y7O0E4Qm51S0Q7RUFnQ0ksbUJBQWtCO0NBQ25COztBQWpDSDtFQW9DSSxlQUFjO0NBQ2Y7O0FBckNIO0VBd0NJLGdCakNLUTtDaUNKVDs7QS9CaENLO0UrQlRSO0k3Qm1DSSx3REFBa0k7SUFxQ2xJLHVCQUFzQjtJQUN0QixZQUFXO0lBQ1gsNkJBQW1DO0lBL0JuQyx5RUFBaU07RzZCc0RsTTtFN0J0QkM7SUFDSSwwQkFBeUI7R0FDNUI7RUFGRDtJQTdCSSx5RUFBaU07R0FDcE07Q0RndEtKOztBOEIvdktEO0VBbURRLG9CQUFtQjtDQUNwQjs7QUFwRFA7RUF3RE0sdUJBQWM7TUFBZCxlQUFjO0NBQ2Y7O0FBekRMO0VBNERNLGlCQUFnQjtFQUNoQixldkJ2QzRHO0N1QndDN0c7O0FBOURMO0VBaUVNLGlCQUFnQjtDQUNqQjs7QUFsRUw7RUFxRU0sa0JBQWlCO0VBQ2pCLGdCQUFlO0VBQ2YsbUJBQWtCO0NBTW5COztBQTdFTDtFQTBFUSxZQUFXO0VBQ1gsMkJBQTBCO0NBQzNCOztBQTVFUDtFQWdGTSxvQkFBbUI7RUFDbkIsbUJBQWtCO0VBQ2xCLGVBQWM7Q0FDZjs7QUFuRkw7RUFzRk0sMEJBQXlCO0VBQ3pCLG9CQUFtQjtFQUNuQix1QkFBc0I7RUFDdEIsc0JBQXFCO0NBT3RCOztBQWhHTDtFQTRGUSw2QkFBNEI7RUFDNUIsc0JBQXFCO0VBQ3JCLFdBQVU7Q0FDWDs7QUEvRlA7RUFvR0ksc0JBQXFCO0VBQ3JCLG1CQUFrQjtFQUNsQixtQkFBa0I7RUFDbEIsZ0JBQWU7RUFDZixZQUFXO0NBT1o7O0FBL0dIO0VBMEdNLG1CQUFrQjtDQUluQjs7QUE5R0w7RUE0R1EsV0FBVTtDQUNYOztBQTdHUDtFQWtISSxxQkFBb0I7RUFDcEIsc0JBQXFCO0NBQ3RCOztBQXBISDtFQXVISSxxQkFBYTtFQUFiLGNBQWE7RUFDYixvQkFBZTtNQUFmLGdCQUFlO0VBQ2YsdUJBQW1CO01BQW5CLG9CQUFtQjtFQUNuQixtQkFBa0I7RUFDbEIsd0JBQXVCO0VBQ3ZCLDBCQUF5QjtFQUN6QixvQkFBbUI7RUFDbkIsdUJBQXNCO0VBQ3RCLHNCQUFxQjtDQU90Qjs7QUF0SUg7RUFrSU0sNkJBQTRCO0VBQzVCLHNCQUFxQjtFQUNyQixXQUFVO0NBQ1g7O0FBcklMO0VBeUlJLHNCQUFxQjtFQUNyQixtQkFBa0I7RUFDbEIsa0JBQWlCO0VBQ2pCLFlBQVc7RUFDWCxnQkFBZTtFQUNmLG9CQUFtQjtFQUNuQixZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLHNCQUFxQjtDQUN0Qjs7QUFsSkg7RUFxSkksd0JBQXVCO0VBQ3ZCLFdBQVU7RUFDVixVQUFTO0VBQ1QsVUFBUztFQUNULG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsT0FBTTtDQUNQOztBQTVKSDtFQStKSSxlQUFjO0VBQ2QsZ0JBQWU7RUFDZixZQUFXO0VBQ1gsY0FBYTtFQUNiLG1CQUFrQjtFQUNsQixVQUFTO0VBQ1QsdUJBQXNCO0VBQ3RCLG9CQUFtQjtFQUNuQixpQkFBZ0I7RUFDaEIsd0JBQXVCO0VBQ3ZCLG1CQUFrQjtFQUNsQixtQkFBa0I7RUFDbEIsaUJBQWdCO0NBQ2pCOztBQTVLSDtFQStLSSxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLFNBQVE7RUFDUixhQUFZO0VBQ1osNEJBQTJCO0VBQzNCLHFCQUFvQjtDQU1yQjs7QUExTEg7RUF1TE0sYUFBWTtFQUNaLFlBQVc7Q0FDWjs7QUF6TEw7RUE2TEksbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxTQUFRO0VBQ1IsYUFBWTtFQUNaLHFCQUFvQjtFQUNwQixXQUFVO0NBTVg7O0FBeE1IO0VBcU1NLGFBQVk7RUFDWixZQUFXO0NBQ1o7O0FBdk1MO0VBMk1JLHFCQUFvQjtDQUNyQjs7QUE1TUg7RUErTUksY0FBYTtFQUNiLGlCQUFnQjtFQUNoQixpQkFBZ0I7RUFDaEIsdUJBQXNCO0VBQ3RCLGVBQWM7RUFDZCxnQkFBZTtFQUNmLFlBQVc7RUFDWCxVQUFTO0VBQ1QsV0FBVTtFQUNWLHVCQUFzQjtFQUN0QixtQkFBa0I7RUFDbEIsa0JBQWlCO0VBQ2pCLGlCQUFnQjtFQUNoQixtQkFBa0I7RUFDbEIsc0JBQXFCO0NBUXRCOztBQXJPSDtFQWlPTSw2QkFBNEI7RUFDNUIsbUJBQWtCO0VBQ2xCLFdBQVU7Q0FDWDs7QUFwT0w7RUF3T0ksZUFBYztFQUNkLGdCQUFlO0VBQ2YsMEJBQXlCO0VBQ3pCLG1CQUFrQjtDQUNuQjs7QUE1T0g7RUErT0ksMEJBQXlCO0VBQ3pCLFlBQVc7RUFDWCxxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBbUI7TUFBbkIsb0JBQW1CO0NBVXBCOztBQTVQSDtFQXFQTSxzQkFBcUI7RUFDckIsbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxZQUFXO0VBQ1gsYUFBWTtFQUNaLG9hQUFtYTtDQUNwYTs7QUEzUEw7RUErUEksb0JBQW1CO0VBQ25CLFlBQVc7Q0FDWjs7QUFqUUg7RUFtUUksNkJBQTRCO0VBQzVCLDBCQUF5QjtFQUN6QixvQkFBbUI7RUFDbkIsdUJBQXNCO0VBQ3RCLGdCQUFlO0NBY2hCOztBQXJSSDtFQXlRTSw0QkFBMkI7Q0FJNUI7O0FBN1FMO0VBMlFRLGlCQUFnQjtDQUNqQjs7QUE1UVA7RUFnUk0sYUFBWTtFQUNaLGFBQVk7RUFDWixtQkFBa0I7RUFDbEIsaUJBQWdCO0NBQ2pCOztBQXBSTDtFQXdSSSxpQkFBZ0I7RUFDaEIsc0JBQXFCO0VBQ3JCLG1CQUFrQjtFQUNsQixnQkFBZTtFQUNmLFlBQVc7Q0FLWjs7QUFqU0g7RUErUk0sY0FBYTtDQUNkOztBQWhTTDtFQW9TSSx3QkFBdUI7RUFDdkIsV0FBVTtFQUNWLFVBQVM7RUFDVCxVQUFTO0VBQ1QsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixPQUFNO0NBQ1A7O0FBM1NIO0VBOFNJLGVBQWM7RUFDZCxnQkFBZTtFQUNmLFlBQVc7RUFDWCxjQUFhO0VBQ2IsbUJBQWtCO0VBQ2xCLFVBQVM7RUFDVCx1QkFBc0I7RUFDdEIsb0JBQW1CO0VBQ25CLGlCQUFnQjtFQUNoQix3QkFBdUI7RUFDdkIsbUJBQWtCO0VBQ2xCLG1CQUFrQjtFQUNsQixpQkFBZ0I7Q0FDakI7O0FBM1RIO0VBOFRJLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsU0FBUTtFQUNSLGFBQVk7RUFDWiw0QkFBMkI7RUFDM0IscUJBQW9CO0NBTXJCOztBQXpVSDtFQXNVTSxhQUFZO0VBQ1osWUFBVztDQUNaOztBQXhVTDtFQTRVSSxjQUFhO0VBQ2IsaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQix1QkFBc0I7RUFDdEIsZUFBYztFQUNkLGdCQUFlO0VBQ2YsWUFBVztFQUNYLFVBQVM7RUFDVCxXQUFVO0VBQ1YsdUJBQXNCO0VBQ3RCLG1CQUFrQjtFQUNsQixrQkFBaUI7RUFDakIsaUJBQWdCO0VBQ2hCLG1CQUFrQjtFQUNsQixzQkFBcUI7Q0FRdEI7O0FBbFdIO0VBOFZNLDZCQUE0QjtFQUM1QixtQkFBa0I7RUFDbEIsV0FBVTtDQUNYOztBQWpXTDtFQXFXSSxlQUFjO0VBQ2QsZ0JBQWU7RUFDZiwwQkFBeUI7RUFDekIsbUJBQWtCO0NBQ25COztBQXpXSDtFQTRXSSwwQkFBeUI7RUFDekIsWUFBVztFQUNYLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHVCQUFtQjtNQUFuQixvQkFBbUI7Q0FVcEI7O0FBelhIO0VBa1hNLHNCQUFxQjtFQUNyQixtQkFBa0I7RUFDbEIsWUFBVztFQUNYLFlBQVc7RUFDWCxhQUFZO0VBQ1osb2FBQW1hO0NBQ3BhOztBQXhYTDtFQTRYSSxvQkFBbUI7RUFDbkIsWUFBVztDQUNaOztBQTlYSDtFQWlZSSxjQUFhO0NBQ2Q7O0FBbFlIO0VBb1lJLHlCQUF3QjtDQUN6Qjs7QUFyWUg7RUF3WUksd0JBQXVCO0NBQ3hCOztBL0JwWUs7RWdDTFI7SUFFUSxnQkFBZTtHQWdFdEI7Qy9COGhMQTs7QStCM2xMRztFQUNJLG9CQUFtQjtDQW9CdEI7O0FoQ0xHO0VnQ2hCSjtJQUlRLG9CQUFtQjtHQWlCMUI7Qy9CZ2xMSjs7QURybUxPO0VnQ0FIO0k5QjhCRCx1REFBa0k7SUFxQ2xJLHVCQUFzQjtJQUN0QixZQUFXO0lBQ1gsNkJBQW1DO0c4QjNEMUI7RTlCNERUO0lBQ0ksMEJBQXlCO0dBQzVCO0U4QnhFQTtJOUI4QkQsd0RBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztHOEJ2RDFCO0U5QndEVDtJQUNJLDBCQUF5QjtHQUM1QjtFOEJ4RUE7SUFpQlcscUJBQWE7SUFBYixjQUFhO0lBQ2IsdUJBQW1CO1FBQW5CLG9CQUFtQjtHQUN0QjtDL0IybUxaOztBK0J2bUxHO0VBQ0kscUJBQWE7RUFBYixjQUFhO0VBQ2IsbUJBQXlCO01BQXpCLDBCQUF5QjtFQUN6Qix3QkFBbUI7TUFBbkIsb0JBQW1CO0NBQ3RCOztBQUVEO0VBQ0kscUJBQWE7RUFBYixjQUFhO0VBQ2Isb0JBQWU7TUFBZixnQkFBZTtDQWNsQjs7QUFoQkE7RUFLTywwQkFBeUI7Q0FDNUI7O0FoQ25DRDtFZ0M2Qko7SUFTUSxlQUFjO0dBT3JCO0VBaEJBO0lBWVcsY0FBYTtJQUNiLGtCQUFhO1FBQWIsY0FBYTtHQUNoQjtDL0I0bUxaOztBK0J4bUxHO0VBQ0kscUJBQWE7RUFBYixjQUFhO0VBQ2Isb0JBQWU7TUFBZixnQkFBZTtFQUNmLG9CQUFtQjtFQUNuQixpQkFBZ0I7RUFDaEIsNkNBQTRDO0VoQ3lFaEQsaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VHNUhOLGNBQWE7RUFNYixnQkFBZTtDNkJtRGxCOztBN0JXRDtFQWxCQSxhQUFZO0VBQ1oscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsOEJBQWdCO01BQWhCLGlCQUFnQjtDQWVuQjs7QUFURDtFQUNJLGlCQUFnQjtDQUNuQjs7QUF2Q0c7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHViw4Qkx1Qk07TUt2Qk4saUJMdUJNO0VLdEJOLGdCTHNCTTtDS2pDTDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLDZCTHdCUTtNS3hCUixnQkx3QlE7RUt2QlIsZUx1QlE7Q0tsQ1A7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHVixrQ0x5QmE7TUt6QmIscUJMeUJhO0VLeEJiLG9CTHdCYTtDS25DWjs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLGtDTDBCYTtNSzFCYixxQkwwQmE7RUt6QmIsb0JMeUJhO0NLcENaOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsNkJMMkJRO01LM0JSLGdCTDJCUTtFSzFCUixlTDBCUTtDS3JDUDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLDZCTDRCUTtNSzVCUixnQkw0QlE7RUszQlIsZUwyQlE7Q0t0Q1A7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHVixtQ0w2QmM7TUs3QmQsc0JMNkJjO0VLNUJkLHFCTDRCYztDS3ZDYjs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLGtDTDhCYTtNSzlCYixxQkw4QmE7RUs3QmIsb0JMNkJhO0NLeENaOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsNkJMK0JRO01LL0JSLGdCTCtCUTtFSzlCUixlTDhCUTtDS3pDUDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQUdWLDZCTGdDUTtNS2hDUixnQkxnQ1E7RUsvQlIsZUwrQlE7Q0sxQ1A7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFHViw2QkxpQ1E7TUtqQ1IsZ0JMaUNRO0VLaENSLGVMZ0NRO0NLM0NQOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBR1YsNkJMa0NRO01LbENSLGdCTGtDUTtFS2pDUixlTGlDUTtDSzVDUDs7QUhnSUw7RUdsSUk7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw4Qkx1Qk07UUt2Qk4saUJMdUJNO0lLdEJOLGdCTHNCTTtHS2pDTDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1YsNkJMd0JRO1FLeEJSLGdCTHdCUTtJS3ZCUixlTHVCUTtHS2xDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMeUJhO1FLekJiLHFCTHlCYTtJS3hCYixvQkx3QmE7R0tuQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLGtDTDBCYTtRSzFCYixxQkwwQmE7SUt6QmIsb0JMeUJhO0dLcENaO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2QkwyQlE7UUszQlIsZ0JMMkJRO0lLMUJSLGVMMEJRO0dLckNQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2Qkw0QlE7UUs1QlIsZ0JMNEJRO0lLM0JSLGVMMkJRO0dLdENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHVixtQ0w2QmM7UUs3QmQsc0JMNkJjO0lLNUJkLHFCTDRCYztHS3ZDYjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMOEJhO1FLOUJiLHFCTDhCYTtJSzdCYixvQkw2QmE7R0t4Q1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTCtCUTtRSy9CUixnQkwrQlE7SUs5QlIsZUw4QlE7R0t6Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGdDUTtRS2hDUixnQkxnQ1E7SUsvQlIsZUwrQlE7R0sxQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGlDUTtRS2pDUixnQkxpQ1E7SUtoQ1IsZUxnQ1E7R0szQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGtDUTtRS2xDUixnQkxrQ1E7SUtqQ1IsZUxpQ1E7R0s1Q1A7Q0ZpekxSOztBRGpyTEc7RUdsSUk7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw4Qkx1Qk07UUt2Qk4saUJMdUJNO0lLdEJOLGdCTHNCTTtHS2pDTDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1YsNkJMd0JRO1FLeEJSLGdCTHdCUTtJS3ZCUixlTHVCUTtHS2xDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMeUJhO1FLekJiLHFCTHlCYTtJS3hCYixvQkx3QmE7R0tuQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLGtDTDBCYTtRSzFCYixxQkwwQmE7SUt6QmIsb0JMeUJhO0dLcENaO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2QkwyQlE7UUszQlIsZ0JMMkJRO0lLMUJSLGVMMEJRO0dLckNQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2Qkw0QlE7UUs1QlIsZ0JMNEJRO0lLM0JSLGVMMkJRO0dLdENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHVixtQ0w2QmM7UUs3QmQsc0JMNkJjO0lLNUJkLHFCTDRCYztHS3ZDYjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMOEJhO1FLOUJiLHFCTDhCYTtJSzdCYixvQkw2QmE7R0t4Q1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTCtCUTtRSy9CUixnQkwrQlE7SUs5QlIsZUw4QlE7R0t6Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGdDUTtRS2hDUixnQkxnQ1E7SUsvQlIsZUwrQlE7R0sxQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGlDUTtRS2pDUixnQkxpQ1E7SUtoQ1IsZUxnQ1E7R0szQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGtDUTtRS2xDUixnQkxrQ1E7SUtqQ1IsZUxpQ1E7R0s1Q1A7Q0Y0M0xSOztBRDV2TEc7RUdsSUk7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw4Qkx1Qk07UUt2Qk4saUJMdUJNO0lLdEJOLGdCTHNCTTtHS2pDTDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1YsNkJMd0JRO1FLeEJSLGdCTHdCUTtJS3ZCUixlTHVCUTtHS2xDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMeUJhO1FLekJiLHFCTHlCYTtJS3hCYixvQkx3QmE7R0tuQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLGtDTDBCYTtRSzFCYixxQkwwQmE7SUt6QmIsb0JMeUJhO0dLcENaO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2QkwyQlE7UUszQlIsZ0JMMkJRO0lLMUJSLGVMMEJRO0dLckNQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2Qkw0QlE7UUs1QlIsZ0JMNEJRO0lLM0JSLGVMMkJRO0dLdENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHVixtQ0w2QmM7UUs3QmQsc0JMNkJjO0lLNUJkLHFCTDRCYztHS3ZDYjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMOEJhO1FLOUJiLHFCTDhCYTtJSzdCYixvQkw2QmE7R0t4Q1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTCtCUTtRSy9CUixnQkwrQlE7SUs5QlIsZUw4QlE7R0t6Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGdDUTtRS2hDUixnQkxnQ1E7SUsvQlIsZUwrQlE7R0sxQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGlDUTtRS2pDUixnQkxpQ1E7SUtoQ1IsZUxnQ1E7R0szQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGtDUTtRS2xDUixnQkxrQ1E7SUtqQ1IsZUxpQ1E7R0s1Q1A7Q0Z1OExSOztBRHYwTEc7RUdsSUk7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw4Qkx1Qk07UUt2Qk4saUJMdUJNO0lLdEJOLGdCTHNCTTtHS2pDTDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1YsNkJMd0JRO1FLeEJSLGdCTHdCUTtJS3ZCUixlTHVCUTtHS2xDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMeUJhO1FLekJiLHFCTHlCYTtJS3hCYixvQkx3QmE7R0tuQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLGtDTDBCYTtRSzFCYixxQkwwQmE7SUt6QmIsb0JMeUJhO0dLcENaO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2QkwyQlE7UUszQlIsZ0JMMkJRO0lLMUJSLGVMMEJRO0dLckNQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2Qkw0QlE7UUs1QlIsZ0JMNEJRO0lLM0JSLGVMMkJRO0dLdENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHVixtQ0w2QmM7UUs3QmQsc0JMNkJjO0lLNUJkLHFCTDRCYztHS3ZDYjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMOEJhO1FLOUJiLHFCTDhCYTtJSzdCYixvQkw2QmE7R0t4Q1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTCtCUTtRSy9CUixnQkwrQlE7SUs5QlIsZUw4QlE7R0t6Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGdDUTtRS2hDUixnQkxnQ1E7SUsvQlIsZUwrQlE7R0sxQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGlDUTtRS2pDUixnQkxpQ1E7SUtoQ1IsZUxnQ1E7R0szQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGtDUTtRS2xDUixnQkxrQ1E7SUtqQ1IsZUxpQ1E7R0s1Q1A7Q0ZraE1SOztBRGw1TEc7RUdsSUk7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw4Qkx1Qk07UUt2Qk4saUJMdUJNO0lLdEJOLGdCTHNCTTtHS2pDTDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1YsNkJMd0JRO1FLeEJSLGdCTHdCUTtJS3ZCUixlTHVCUTtHS2xDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMeUJhO1FLekJiLHFCTHlCYTtJS3hCYixvQkx3QmE7R0tuQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLGtDTDBCYTtRSzFCYixxQkwwQmE7SUt6QmIsb0JMeUJhO0dLcENaO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2QkwyQlE7UUszQlIsZ0JMMkJRO0lLMUJSLGVMMEJRO0dLckNQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHViw2Qkw0QlE7UUs1QlIsZ0JMNEJRO0lLM0JSLGVMMkJRO0dLdENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFHVixtQ0w2QmM7UUs3QmQsc0JMNkJjO0lLNUJkLHFCTDRCYztHS3ZDYjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBR1Ysa0NMOEJhO1FLOUJiLHFCTDhCYTtJSzdCYixvQkw2QmE7R0t4Q1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTCtCUTtRSy9CUixnQkwrQlE7SUs5QlIsZUw4QlE7R0t6Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGdDUTtRS2hDUixnQkxnQ1E7SUsvQlIsZUwrQlE7R0sxQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGlDUTtRS2pDUixnQkxpQ1E7SUtoQ1IsZUxnQ1E7R0szQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQUdWLDZCTGtDUTtRS2xDUixnQkxrQ1E7SUtqQ1IsZUxpQ1E7R0s1Q1A7Q0Y2bE1SOztBRDFuTU87RWdDK0NIO0lBVVcsV0FBVTtHQUNiO0MvQnNrTVo7O0ErQmprTUQ7RUFJSSxtQkFBa0I7RUFDbEIsY0FBYTtFQUliLGlCQUFnQjtFQUNoQixZQUFXO0VBQ1gscUJBQWE7RUFBYixjQUFhO0VBQ2IsMkJBQXNCO01BQXRCLHVCQUFzQjtDQThDekI7O0FoQ3pHTztFZ0MrQ1I7SUFPTSxjQUFhO0dBbURsQjtDL0JzaE1BOztBRC9vTU87RWdDK0RSO0lBaUJnQixxQkFBYTtJQUFiLGNBQWE7SUFDYix1QkFBbUI7UUFBbkIsb0JBQW1CO0dBS3RCO0VBdkJiO0lBcUJvQixtQkFBa0I7R0FDckI7Qy9Cb2tNaEI7O0ErQi9qTUk7RUFFSyxjQUFhO0NBQ2Q7O0FBR0w7RUFDSSxtQkFBa0I7RUFDbEIsT0FBTTtFQUNOLFNBQVE7RUFDUixvQkFBbUI7RUFDbkIsWUFBVztFQUNYLGdCbENoRUs7RWtDaUVMLGFBQVk7RUFDWiwwQkFBeUI7RUFDekIsdUJBQXNCO0NBQ3pCOztBQUVBO0VBRU8seUJBQXdCO0NBQzNCOztBQUdMO0VBQ0ksaUJBQWdCO0NBS25COztBQU5BO0VBR08sb0JBQW1CO0VBQ25CLGlCQUFnQjtDQUNuQjs7QWhDdkhEO0VpQ0xSO0lBSVEsZ0JBQWU7R0E4RXRCO0VBbEZEO0kvQm1DSSx1REFBa0k7SUFxQ2xJLHVCQUFzQjtJQUN0QixZQUFXO0lBQ1gsNkJBQW1DO0crQmxFOUI7RS9CbUVMO0lBQ0ksMEJBQXlCO0dBQzVCO0UrQjdFTDtJL0JtQ0ksd0RBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztHK0I5RDlCO0UvQitETDtJQUNJLDBCQUF5QjtHQUM1QjtDRHNvTUo7O0FnQ3BzTUc7RUFDSSxjQUFhO0NBVWhCOztBakNMRztFaUNOSjtJQUtRLG9CQUFtQjtHQU0xQjtDaENtc01KOztBZ0M5c01JO0VBU08sbUJBQWtCO0NBQ3JCOztBQUdMO0VBQ0ksa0JBQWlCO0VBQ2pCLG9CQUFtQjtFQUNuQixxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBbUI7TUFBbkIsb0JBQW1CO0NBYXRCOztBakN4Qkc7RWlDT0o7SUFPUSxrQkFBaUI7R0FVeEI7Q2hDaXNNSjs7QWdDbHRNSTtFQVdPLFlBQVc7RUFDWCxlQUFjO0VBQ2QsNEJBQTJCO0VBQzNCLFlBQU87TUFBUCxRQUFPO0VBQ1Asa0JBQWlCO0NBQ3BCOztBQUdMO0VqQ21GQSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RUFGVixpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RUc1SE4scUJBQWE7RUFBYixjQUFhO0VBR1QsZ0JBQTRCO0VBR2hDLG9CQUFlO01BQWYsZ0JBQWU7QzhCK0NsQjs7QTlCZUQ7RUFyQkksZ0JBQXdCO0VBRzVCLGFBQVk7RUFDWixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFLViw4QkFBZ0I7TUFBaEIsaUJBQWdCO0VBQ2hCLGdCQUFlO0NBWWxCOztBQVREO0VBQ0ksaUJBQWdCO0NBQ25COztBQXZDRztFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQU1WLDhCTG9CTTtNS3BCTixpQkxvQk07RUtuQk4sZ0JMbUJNO0NLakNMOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBTVYsNkJMcUJRO01LckJSLGdCTHFCUTtFS3BCUixlTG9CUTtDS2xDUDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQU1WLGtDTHNCYTtNS3RCYixxQkxzQmE7RUtyQmIsb0JMcUJhO0NLbkNaOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBTVYsa0NMdUJhO01LdkJiLHFCTHVCYTtFS3RCYixvQkxzQmE7Q0twQ1o7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFNViw2Qkx3QlE7TUt4QlIsZ0JMd0JRO0VLdkJSLGVMdUJRO0NLckNQOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBTVYsNkJMeUJRO01LekJSLGdCTHlCUTtFS3hCUixlTHdCUTtDS3RDUDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQU1WLG1DTDBCYztNSzFCZCxzQkwwQmM7RUt6QmQscUJMeUJjO0NLdkNiOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBTVYsa0NMMkJhO01LM0JiLHFCTDJCYTtFSzFCYixvQkwwQmE7Q0t4Q1o7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFNViw2Qkw0QlE7TUs1QlIsZ0JMNEJRO0VLM0JSLGVMMkJRO0NLekNQOztBQUZEO0VBUUoscUJBQVk7TUFBWixhQUFZO0VBQ1oscUJBQWM7TUFBZCxlQUFjO0VBTVYsNkJMNkJRO01LN0JSLGdCTDZCUTtFSzVCUixlTDRCUTtDSzFDUDs7QUFGRDtFQVFKLHFCQUFZO01BQVosYUFBWTtFQUNaLHFCQUFjO01BQWQsZUFBYztFQU1WLDZCTDhCUTtNSzlCUixnQkw4QlE7RUs3QlIsZUw2QlE7Q0szQ1A7O0FBRkQ7RUFRSixxQkFBWTtNQUFaLGFBQVk7RUFDWixxQkFBYztNQUFkLGVBQWM7RUFNViw2QkwrQlE7TUsvQlIsZ0JMK0JRO0VLOUJSLGVMOEJRO0NLNUNQOztBSGdJTDtFR2xJSTtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDhCTG9CTTtRS3BCTixpQkxvQk07SUtuQk4sZ0JMbUJNO0dLakNMO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2QkxxQlE7UUtyQlIsZ0JMcUJRO0lLcEJSLGVMb0JRO0dLbENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0xzQmE7UUt0QmIscUJMc0JhO0lLckJiLG9CTHFCYTtHS25DWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsa0NMdUJhO1FLdkJiLHFCTHVCYTtJS3RCYixvQkxzQmE7R0twQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHdCUTtRS3hCUixnQkx3QlE7SUt2QlIsZUx1QlE7R0tyQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHlCUTtRS3pCUixnQkx5QlE7SUt4QlIsZUx3QlE7R0t0Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLG1DTDBCYztRSzFCZCxzQkwwQmM7SUt6QmQscUJMeUJjO0dLdkNiO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0wyQmE7UUszQmIscUJMMkJhO0lLMUJiLG9CTDBCYTtHS3hDWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNEJRO1FLNUJSLGdCTDRCUTtJSzNCUixlTDJCUTtHS3pDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNkJRO1FLN0JSLGdCTDZCUTtJSzVCUixlTDRCUTtHSzFDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMOEJRO1FLOUJSLGdCTDhCUTtJSzdCUixlTDZCUTtHSzNDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMK0JRO1FLL0JSLGdCTCtCUTtJSzlCUixlTDhCUTtHSzVDUDtDRjQ0TVI7O0FENXdNRztFR2xJSTtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDhCTG9CTTtRS3BCTixpQkxvQk07SUtuQk4sZ0JMbUJNO0dLakNMO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2QkxxQlE7UUtyQlIsZ0JMcUJRO0lLcEJSLGVMb0JRO0dLbENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0xzQmE7UUt0QmIscUJMc0JhO0lLckJiLG9CTHFCYTtHS25DWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsa0NMdUJhO1FLdkJiLHFCTHVCYTtJS3RCYixvQkxzQmE7R0twQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHdCUTtRS3hCUixnQkx3QlE7SUt2QlIsZUx1QlE7R0tyQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHlCUTtRS3pCUixnQkx5QlE7SUt4QlIsZUx3QlE7R0t0Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLG1DTDBCYztRSzFCZCxzQkwwQmM7SUt6QmQscUJMeUJjO0dLdkNiO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0wyQmE7UUszQmIscUJMMkJhO0lLMUJiLG9CTDBCYTtHS3hDWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNEJRO1FLNUJSLGdCTDRCUTtJSzNCUixlTDJCUTtHS3pDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNkJRO1FLN0JSLGdCTDZCUTtJSzVCUixlTDRCUTtHSzFDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMOEJRO1FLOUJSLGdCTDhCUTtJSzdCUixlTDZCUTtHSzNDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMK0JRO1FLL0JSLGdCTCtCUTtJSzlCUixlTDhCUTtHSzVDUDtDRnU5TVI7O0FEdjFNRztFR2xJSTtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDhCTG9CTTtRS3BCTixpQkxvQk07SUtuQk4sZ0JMbUJNO0dLakNMO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2QkxxQlE7UUtyQlIsZ0JMcUJRO0lLcEJSLGVMb0JRO0dLbENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0xzQmE7UUt0QmIscUJMc0JhO0lLckJiLG9CTHFCYTtHS25DWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsa0NMdUJhO1FLdkJiLHFCTHVCYTtJS3RCYixvQkxzQmE7R0twQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHdCUTtRS3hCUixnQkx3QlE7SUt2QlIsZUx1QlE7R0tyQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHlCUTtRS3pCUixnQkx5QlE7SUt4QlIsZUx3QlE7R0t0Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLG1DTDBCYztRSzFCZCxzQkwwQmM7SUt6QmQscUJMeUJjO0dLdkNiO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0wyQmE7UUszQmIscUJMMkJhO0lLMUJiLG9CTDBCYTtHS3hDWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNEJRO1FLNUJSLGdCTDRCUTtJSzNCUixlTDJCUTtHS3pDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNkJRO1FLN0JSLGdCTDZCUTtJSzVCUixlTDRCUTtHSzFDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMOEJRO1FLOUJSLGdCTDhCUTtJSzdCUixlTDZCUTtHSzNDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMK0JRO1FLL0JSLGdCTCtCUTtJSzlCUixlTDhCUTtHSzVDUDtDRmtpTlI7O0FEbDZNRztFR2xJSTtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDhCTG9CTTtRS3BCTixpQkxvQk07SUtuQk4sZ0JMbUJNO0dLakNMO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2QkxxQlE7UUtyQlIsZ0JMcUJRO0lLcEJSLGVMb0JRO0dLbENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0xzQmE7UUt0QmIscUJMc0JhO0lLckJiLG9CTHFCYTtHS25DWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsa0NMdUJhO1FLdkJiLHFCTHVCYTtJS3RCYixvQkxzQmE7R0twQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHdCUTtRS3hCUixnQkx3QlE7SUt2QlIsZUx1QlE7R0tyQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHlCUTtRS3pCUixnQkx5QlE7SUt4QlIsZUx3QlE7R0t0Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLG1DTDBCYztRSzFCZCxzQkwwQmM7SUt6QmQscUJMeUJjO0dLdkNiO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0wyQmE7UUszQmIscUJMMkJhO0lLMUJiLG9CTDBCYTtHS3hDWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNEJRO1FLNUJSLGdCTDRCUTtJSzNCUixlTDJCUTtHS3pDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNkJRO1FLN0JSLGdCTDZCUTtJSzVCUixlTDRCUTtHSzFDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMOEJRO1FLOUJSLGdCTDhCUTtJSzdCUixlTDZCUTtHSzNDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMK0JRO1FLL0JSLGdCTCtCUTtJSzlCUixlTDhCUTtHSzVDUDtDRjZtTlI7O0FENytNRztFR2xJSTtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDhCTG9CTTtRS3BCTixpQkxvQk07SUtuQk4sZ0JMbUJNO0dLakNMO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2QkxxQlE7UUtyQlIsZ0JMcUJRO0lLcEJSLGVMb0JRO0dLbENQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0xzQmE7UUt0QmIscUJMc0JhO0lLckJiLG9CTHFCYTtHS25DWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsa0NMdUJhO1FLdkJiLHFCTHVCYTtJS3RCYixvQkxzQmE7R0twQ1o7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHdCUTtRS3hCUixnQkx3QlE7SUt2QlIsZUx1QlE7R0tyQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHlCUTtRS3pCUixnQkx5QlE7SUt4QlIsZUx3QlE7R0t0Q1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLG1DTDBCYztRSzFCZCxzQkwwQmM7SUt6QmQscUJMeUJjO0dLdkNiO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0wyQmE7UUszQmIscUJMMkJhO0lLMUJiLG9CTDBCYTtHS3hDWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNEJRO1FLNUJSLGdCTDRCUTtJSzNCUixlTDJCUTtHS3pDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMNkJRO1FLN0JSLGdCTDZCUTtJSzVCUixlTDRCUTtHSzFDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMOEJRO1FLOUJSLGdCTDhCUTtJSzdCUixlTDZCUTtHSzNDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMK0JRO1FLL0JSLGdCTCtCUTtJSzlCUixlTDhCUTtHSzVDUDtDRndyTlI7O0FEcnNOTztFaUMwQkg7SUFPVyxvQkFBbUI7R0FDdEI7Q2hDeXFOWjs7QWdDanJOSTtFQVlPLGdCQUFlO0NBQ2xCOztBQUdMO0VBQ0ksaUJBQWdCO0NBS25COztBakNoRUc7RWlDMERKO0lBSVEsa0JBQWlCO0dBRXhCO0NoQ3lxTko7O0FnQ3ZxTkk7RUFFTyxtQkFBa0I7RUFDbEIsb0JBQW1CO0NBTXRCOztBakMzREQ7RWlDa0RIO0lBTVcsb0JBQW1CO0lBQ25CLGlCQUFnQjtHQUV2QjtDaEMwcU5SOztBRHJ2Tk87RWtDTFI7SUFFUSxnQkFBZTtHQXNFdEI7Q2pDd3JOQTs7QWlDaHdORDtFQU1RLG1CQUFrQjtFQUNsQixvQkFBbUI7Q0FnRXRCOztBQXZFTDtFQVVZLG9CQUFtQjtFQUNuQixtQkFBa0I7RUFDbEIsWUFBVztFQUNYLG1CQUFrQjtDQVNyQjs7QWxDVEQ7RWtDYlI7SUFnQmdCLG1CQUFrQjtHQU16QjtDakM0dk5SOztBRDd2Tk87RWtDckJSO0lBb0JnQixtQkFBa0I7R0FFekI7Q2pDa3dOUjs7QWlDeHhORDtFQXlCWSxvRUFBbUU7RUFDbkUsbUJBQWtCO0VBQ2xCLE9BQU07RUFDTixTQUFRO0VBQ1IsVUFBUztFQUNULFFBQU87Q0FDVjs7QUEvQlQ7RUFrQ1ksb0JBQW1CO0NBQ3RCOztBQW5DVDtFQXNDWSxlQUFjO0NBZ0NqQjs7QUF0RVQ7RUF5Q2dCLG1CQUFrQjtDQUNyQjs7QUExQ2I7RUE2Q2dCLFlBQU87TUFBUCxRQUFPO0NBS1Y7O0FsQzdCTDtFa0NyQlI7SUFnRG9CLGlCQUFnQjtHQUV2QjtDakNxd05aOztBaUN2ek5EO0VBcURnQixtQkFBa0I7RUFDbEIsV0FBVTtFQUNWLGdCcENWSjtDb0NXQzs7QUF4RGI7RUEyRGdCLG1CQUFrQjtDQUNyQjs7QUE1RGI7RUErRGdCLDZEcEMzQjZHO0VvQzRCN0csWUFBVztDQUNkOztBbEM1REw7RWtDTFI7SUFvRWdCLGFBQVk7R0FFbkI7Q2pDc3dOUjs7QUR2ME5PO0VtQ0xSO0lBRVEsZ0JBQWU7R0E2Q3RCO0NsQ215TkE7O0FrQzcwTkc7RUFDSSxtQkFBa0I7RUFDbEIsb0JBQW1CO0NBS3RCOztBbkNTRztFbUNoQko7SUFLUSxvQkFBbUI7R0FFMUI7Q2xDaTFOSjs7QWtDNzFORDtFbkNrSUksaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VtQ3BITixpQkFBZ0I7RUFDaEIsbUNBQWtDO0NBNkJyQzs7QUE5Q0w7RUFvQlksbUJBQWtCO0VBQ2xCLHVDQUFzQztFQUN0QyxvQkFBbUI7RUFDbkIsaUJBQWdCO0NBU25COztBbkNYRDtFbUNyQlI7SUEwQmdCLG9CQUFtQjtHQU0xQjtDbENrMU5SOztBa0NsM05EO0VBOEJnQixpQkFBZ0I7Q0FDbkI7O0FBL0JiO0VBbUNZLHNDQUFxQztFbkNQN0Msc0JBQXFCO0VBQ3JCLDZEQUlDO0VBQ0QsZVFaOEc7RVJhOUcsOEJBQTZCO0VBQzdCLHFDQUFvQztFbUNDNUIsa0JBQWlCO0VBQ2pCLGdCQUFlO0VBQ2YsbUJBQWtCO0VBQ2xCLFdBQVU7RUFDVixXQUFVO0NBSWI7O0FuQ3hCRDtFbUNyQlI7SUEyQ2dCLFlBQVc7R0FFbEI7Q2xDNjFOUjs7QW1DMTRORDtFQUNJLGNBQWE7Q0FzT2hCOztBQXZPRDtFQUlRLG9CQUFtQjtFQUNuQiw4Q0FBNkM7RUFDN0Msc0NBQW9DO0VBQ3BDLG9CQUFtQjtFQUNuQixtQkFBa0I7Q0FDckI7O0FBVEw7RXBDa0lJLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtDb0NPVDs7QUEzSUw7RUFlWSxtQkFBa0I7Q0E4RHJCOztBQTdFVDtFQWtCZ0IsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixnQkFBZTtDQUNsQjs7QUFyQmI7RUF3QmdCLGtCQUFpQjtFQUNqQixZQUFXO0NBQ2Q7O0FBMUJiO0VBNkJnQixlQUFjO0NBQ2pCOztBQTlCYjtFQWlDZ0Isa0JBQ0o7Q0FBQzs7QUFsQ2I7RXBDdUZJLG1CQUFrQjtDb0MvQkw7O0FwQ2dDYjtFQUNJLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLFlBTjZDO0VBTzdDLFVBQVM7RUFDVCxRQUFPO0VBQ1AsNkRGN0RvSTtDRThEdkk7O0FBUkQ7RW9DL0NvQixXQUFVO0NBQ2I7O0FBMUNyQjtFQStDNEIsa0JBQWlCO0VBQ2pCLFlBQVc7Q0FDZDs7QUFqRHpCO0VBb0Q0QixhQUFZO0VBQ1osV0FBVTtDQUNiOztBQXREekI7RXBDdUZJLG1CQUFrQjtDb0NaTDs7QXBDYWI7RUFDSSxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxZQU42QztFQU83QyxVQUFTO0VBQ1QsUUFBTztFQUNQLDZERjdEb0k7Q0U4RHZJOztBb0NoR0w7RUFpRXdCLFdBQVU7RUFDVixhQUFZO0NBQ2Y7O0FBbkVyQjtFQXVFNEIsYUFBWTtFQUNaLFdBQVU7Q0FDYjs7QUF6RXpCO0VBZ0ZZLGtCQUFpQjtDQUNwQjs7QUFqRlQ7RUF5RmdDLGFBQVk7Q0FDZjs7QUExRjdCO0VBaUd3QixXQUFVO0NBQ2I7O0FBbEdyQjtFQXdHNEIsYUFBWTtDQUNmOztBQXpHekI7RUFxSGdDLGFBQVk7Q0FDZjs7QUF0SDdCO0VBK0h3QixpQkFBZ0I7RUFDaEIsa0JBQWlCO0VBQ2pCLFlBQVc7Q0FNZDs7QUF2SXJCO0VBb0k0QixhQUFZO0VBQ1osV0FBVTtDQUNiOztBQXRJekI7RUE4SVEsZ0NBQStCO0NBMkNsQzs7QUF6TEw7RUFrSmdCLDhCQUE2QjtDQWVoQzs7QUFqS2I7RUFxSm9CLGlDQUFnQztDQUNuQzs7QUF0SmpCO0VBeUpvQixpQkFBZ0I7Q0FDbkI7O0FBMUpqQjtFQThKd0IsYUFBWTtDQUNmOztBQS9KckI7RUFzS2dCLGlCQUFnQjtDQUNuQjs7QUF2S2I7O0VBMktnQixxQkFBb0I7Q0FNdkI7O0FBakxiOztFQThLb0IsWUFBVztFQUNYLFdBQVU7Q0FDYjs7QUFoTGpCO0VBcUxvQix3QkFBc0I7Q0FDekI7O0FBdExqQjtFQTRMUSxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLGFBQVk7RUFDWixVQUFTO0VBQ1QsWUFBVztFQUNYLGdCQUFlO0VBQ2YsV0FBVTtDQUNiOztBQW5NTDtFQXNNUSxnQ0FBK0I7Q0EwQmxDOztBQWhPTDtFQXlNWSxtQkFBa0I7RUFDbEIsUUFBTztFQUNQLFNBQVE7RUFDUiwwQkFBeUI7RUFDekIsYUFBWTtFQUNaLFVBQVM7RUFDVCxTQUFRO0VBQ1IscUJBQW9CO0VBQ3BCLG9DQUFtQztFQUNuQywyQkFBMEI7RUFDMUIsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQixzQ0FBcUM7RUFDckMsMEJBQXlCO0VBQ3pCLHNCQUFxQjtFQUNyQix5QkFBd0I7Q0FDM0I7O0FBek5UO0VBNk5nQiwwQkFBeUI7Q0FDNUI7O0FBOU5iO0VBbU9RLGdCdEN0TEk7RXNDdUxKLG9CQUFtQjtFQUNuQixrQkFBaUI7Q0FDcEI7O0FDdE9MO0VBRVEsb0JBQW1CO0VBQ25CLGlCQUFnQjtFQUNoQixtQkFBa0I7Q0FDckI7O0FBTEw7RUFRUSxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLG9CQUFtQjtFQUNuQixnQkFBZTtFckNpQm5CLHNCQUFxQjtFQUNyQiw2REFJQztFQUNELGVRWjhHO0VSYTlHLDhCQUE2QjtFQUM3QixxQ0FBb0M7Q3FDcEJuQzs7QXJDS0c7RXFDckJSO0lBYVksZ0JBQWU7R0FHdEI7Q3BDZ21PSjs7QW9DaG5PRDtFQW1CUSxnQkFBZTtDQUtsQjs7QXJDSEc7RXFDckJSO0lBc0JZLGdCQUFlO0dBRXRCO0NwQ2ttT0o7O0FvQzFuT0Q7RUEyQlEsc0JBQXFCO0VBQ3JCLFVBQVM7RUFDVCxXQUFVO0NBTWI7O0FyQzFCRztFcUNUUjtJQWdDWSxxQkFBYTtJQUFiLGNBQWE7SUFDYixvQkFBZTtRQUFmLGdCQUFlO0dBRXRCO0NwQ29tT0o7O0FvQ3ZvT0Q7RUFzQ1EsdUJBQWtCO01BQWxCLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsbUJBQWtCO0NBQ3JCOztBQXpDTDtFQTRDUSxjQUFhO0NBQ2hCOztBQTdDTDtFQWdEUSxvQkFBbUI7RUFDbkIscUJBQWlCO0tBQWpCLGtCQUFpQjtFQUNqQixlQUFjO0VBQ2QsaUJBQWdCO0NBQ25COztBQXBETDtFQXVEUSxZQUFXO0NBQ2Q7O0FBeERMO0VBMkRRLGdCQUFlO0VBQ2YsZUFBYztDQUNqQjs7QUE3REw7RUFnRVEsZ0JBQWU7Q0FDbEI7O0FyQzVDRztFcUNyQlI7SUF1RVksb0JBQW1CO0dBRTFCO0NwQ2ttT0o7O0FvQy9sT0c7RUE1RUo7SUErRVksZ0JBQWU7SUFDZixjQUFhO0lBQ2IsY0FBYTtHQUNoQjtDcENpbU9SOztBb0Nuck9EO0VBc0ZRLGNBQWE7RUFDYixnQ0FBK0I7RUFDL0IseUJBQXdCO0VBQ3hCLHdCQUF1QjtDQWExQjs7QUF0R0w7RUE0RlksY0FBYTtFQUNiLGdCQUFlO0NBUWxCOztBQXJHVDtFQWdHZ0IsY0FBYTtFQUNiLHVCQUFzQjtFQUN0QixhQUFZO0VBQ1osa0JBQWlCO0NBQ3BCOztBQXBHYjtFQXlHUSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLGdCQUFlO0VBQ2YsWUFBVztFQUVYLGtCQUFpQjtFQUNqQixrQkFBaUI7RUFLakIsNkRBQXVJO0NBQzFJOztBckNoR0c7RXFDckJSO0lBaUhZLGlCQUFnQjtHQUl2QjtDcENpbU9KOztBRGpzT087RXFDckJSO0lBeUhZLHFCQUFvQjtHQUN2QjtDcENrbU9SOztBb0M3bE9EO0VBRVEsZ0JBQWU7Q0FDbEI7O0FyQ3pIRztFc0NUUjtJQUVRLGdCQUFlO0dBOEh0QjtDckNzbU9BOztBRDd0T087RXNDVFI7SXBDbUNJLHdEQUFrSTtJQXFDbEksdUJBQXNCO0lBQ3RCLFlBQVc7SUFDWCw2QkFBbUM7R29DdkRsQztFcEN3REQ7SUFDSSwwQkFBeUI7R0FDNUI7Q0RxcU9KOztBcUNsdk9EO0VBV1ksZ0JBQWU7RUFDZixrQkFBaUI7RXRDZ0J6QixzQkFBcUI7RUFDckIsNkRBSUM7RUFDRCxlUVo4RztFUmE5Ryw4QkFBNkI7RUFDN0IscUNBQW9DO0NzQ2xCL0I7O0F0Q0dEO0VzQ3JCUjtJQWVnQixnQkFBZTtJQUNmLG9CQUFtQjtHQUUxQjtDckNpdk9SOztBcUNud09EO0VBc0JRLG1CQUFrQjtFQUNsQixXQUFVO0NBc0JiOztBdENwQ0c7RXNDVFI7SXBDbUNJLHdEQUFrSTtJQXFDbEksdUJBQXNCO0lBQ3RCLFlBQVc7SUFDWCw2QkFBbUM7R29DN0JsQztFcEM4QkQ7SUFDSSwwQkFBeUI7R0FDNUI7Q0R1c09KOztBcUNweE9EO0VBOEJZLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsa0JBQWlCO0NBQ3BCOztBQWpDVDtFQW9DWSx1QkFBc0I7Q0FRekI7O0F0Q3ZCRDtFc0NyQlI7SUFzQ2dCLHFCQUFvQjtHQU0zQjtDckN3dk9SOztBcUNweU9EO0VBeUNnQixnQkFBZTtFQUNmLGNBQWE7Q0FDaEI7O0FBM0NiO0VBZ0RRLGlCQUFnQjtFQUNoQixXQUFVO0VBQ1YsWUFBVztFQUNYLGlCQUFnQjtDQUNuQjs7QUFwREw7RUF3RFksbUNBQWtDO0NBQ3JDOztBQXpEVDtFQTZEUSx1Q0FBc0M7Q0FvQnpDOztBQWpGTDtFQWdFWSwyQ0FBMEM7RUFDMUMsZ0JBQWU7RUFDZixpQkFBZ0I7RUFDaEIsbUJBQWtCO0VBQ2xCLDBCQUFxQjtFQUNyQixrQkFBaUI7RUFDakIsbUJBQWtCO0NBS3JCOztBQTNFVDtFQXlFZ0IsMENBQXlDO0NBQzVDOztBQTFFYjtFQThFWSw2RHhDMUNpSDtFd0MyQ2pILFlBQVc7Q0FDZDs7QUFoRlQ7RUFvRlEsNEJBQW9CO0VBQXBCLHFCQUFvQjtFQUNwQixtQkFBa0I7RUFDbEIsbUJBQWtCO0VBQ2xCLG9CQUFtQjtDQUl0Qjs7QUEzRkw7RUF5RlksZ0JBQWU7Q0FDbEI7O0FBMUZUO0VBOEZRLHFCQUFhO0VBQWIsY0FBYTtFQUNiLHVCQUFtQjtNQUFuQixvQkFBbUI7Q0FvQnRCOztBQW5ITDs7RUFtR1ksbUJBQWtCO0VBQ2xCLGdCQUFlO0VBQ2YsaUJBQWdCO0NBQ25COztBQXRHVDtFQXlHWSxRQUFPO0NBQ1Y7O0FBMUdUO0VBNkdZLFNBQVE7Q0FDWDs7QUE5R1Q7RUFpSFksY0FBYTtDQUNoQjs7QUFsSFQ7RUFzSFEsV0FBVTtDQUNiOztBQXZITDtFQTBIUSxXQUFVO0NBQ2I7O0FBM0hMO0VBOEhRLG1CQUFrQjtDQUNyQjs7QUMvSEw7RUFFUSxnQkFBZTtDQUNsQjs7QXZDTUc7RXVDVFI7SXJDbUNJLG9EQUFrSTtJQXFDbEksdUJBQXNCO0lBQ3RCLFlBQVc7SUFDWCw0QkFBbUM7R3FDakVsQztFckNrRUQ7SUFDSSwwQkFBeUI7R0FDNUI7Q0Q2ek9KOztBc0MxNE9EO0VBWVEsZ0JBQWU7Q0FLbEI7O0F2Q2lKRDtFdUNsS0o7SUFlWSxnQkFBZTtHQUV0QjtDdENtNE9KOztBRGx2T0c7RXVDbEtKO0lBcUJZLHFCQUFhO0lBQWIsY0FBYTtJQUNiLHVCQUFtQjtRQUFuQixvQkFBbUI7R0FFMUI7Q3RDbTRPSjs7QXNDMzVPRDtFQTJCUSxtQkFBa0I7Q0FLckI7O0F2Q2tJRDtFdUNsS0o7SUE4QlksaUJBQWdCO0dBRXZCO0N0Q3E0T0o7O0FEbndPRztFd0NsS0o7SUFNUSxpQkFBZ0I7R0FpUHZCO0N2Q29yT0E7O0F1QzM2T0Q7RUFVUSxpQkFBZ0I7Q0FLbkI7O0F4Q21KRDtFd0NsS0o7SUFhWSxjQUFhO0dBRXBCO0N2Q3M2T0o7O0F1Q3I3T0Q7RUFtQlksb0JBQW1CO0VBQ25CLGNBQWE7RXhDUXJCLHNCQUFxQjtFQUNyQiw2REFJQztFQUNELGVRWjhHO0VSYTlHLDhCQUE2QjtFQUM3QixxQ0FBb0M7RXdDZDVCLGdCQUFlO0VBQ2Ysa0JBQWlCO0VBQ2pCLG9CQUFtQjtDQUt0Qjs7QXhDUkQ7RXdDckJSO0lBMkJnQixnQkFBZTtHQUV0QjtDdkMyNk9SOztBdUN4OE9EO0VBaUNRLGlCQUFnQjtDQUNuQjs7QUFsQ0w7RUFzQ1ksZ0JBQWU7RUFDZixpQkFBZ0I7Q0FLbkI7O0F4Q3ZCRDtFd0NyQlI7SUEwQ2dCLGdCQUFlO0dBRXRCO0N2QzI2T1I7O0F1Q3Y5T0Q7RUErQ1ksZ0JBQWU7Q0FLbEI7O0F4Qy9CRDtFd0NyQlI7SUFrRGdCLGdCQUFlO0dBRXRCO0N2QzY2T1I7O0F1Q2orT0Q7RUF1RFksZ0JBQWU7Q0FLbEI7O0F4Q3ZDRDtFd0NyQlI7SUEwRGdCLGdCQUFlO0dBRXRCO0N2Qys2T1I7O0F1QzMrT0Q7RUErRFksY0FBYTtDQUNoQjs7QUFoRVQ7RUFvRVksMEJBQXlCO0VBQ3pCLHNCQUFxQjtFQUNyQiwwQkFBeUI7RUFDekIsc0JBQXFCO0VBQ3JCLHVCQUFzQjtFQUN0QixrQkFBaUI7RUFFakIsc0JBQXFCO0VBQ3JCLGNBQWE7Q0FDaEI7O0FBN0VUO0VBZ0ZZLGdCQUFlO0VBQ2YsbUJBQWtCO0NBQ3JCOztBQWxGVDtFQXFGWSxtQkFBa0I7Q0FDckI7O0FBdEZUOzs7RUEwRlksZUFBYztFQUNkLGNBQWE7RUFDYixlQUFjO0VBQ2Qsb0JBQW1CO0VBQ25CLDhDQUE2QztDQWFoRDs7QXhDdURMO0V3Q2xLSjs7O0lBaUdnQixjQUFhO0lBQ2IsK0NBQThDO0dBU3JEO0N2QzQ2T1I7O0F1Q3ZoUEQ7O0VBdUdvQiw2RDFDckV3SDtFMENzRXhILGUxQ2xGRjtDMENtRkQ7O0FBekdqQjs7O0VBdUdvQiw2RDFDcEVrSDtFMENxRWxILFkxQ25GTDtDMENvRkU7O0FBekdqQjs7RUF1R29CLDZEMUNuRXlHO0UwQ29FekcsWTFDbkZMO0MwQ29GRTs7QUF6R2pCOztFQXVHb0IsNkQxQ2xFK0c7RTBDbUUvRyxlMUNsRkY7QzBDbUZEOztBQXpHakI7O0VBdUdvQiw2RDFDakUySDtFMENrRTNILFkxQ25GTDtDMENvRkU7O0FBekdqQjs7RUF1R29CLCtEMUNoRThIO0UwQ2lFOUgsZTFDbEZGO0MwQ21GRDs7QUF6R2pCO0VBbUhZLFlBQVc7RUFDWCx5QkFBd0I7Q0FDM0I7O0FBckhUO0VBd0hZLGFBQVk7RUFDWix5QkFBd0I7Q0FDM0I7O0FBMUhUO0VBNkhZLFlBQVc7RUFDWCxpQkFBZ0I7Q0FDbkI7O0FBL0hUO0VBa0lZLGlCQUFnQjtDQUNuQjs7QUFuSVQ7RXhDa0lJLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFd0NLTiwwQkFBeUI7RUFDekIscUJBQWE7RUFBYixjQUFhO0VBQ2IsZTFDcEhVO0UwQ3FIVixnQjFDaEdJO0UwQ2lHSixvQkFBbUI7RUFDbkIsc0JBQXFCO0NBY3hCOztBeEN2SUc7RXdDckJSO0lBaUpZLGVBQWM7SUFDZCxpQkFBZ0I7R0FVdkI7Q3ZDczhPSjs7QXVDbG1QRDtFQXNKWSxtQkFBa0I7Q0FLckI7O0F4Q3RJRDtFd0NyQlI7SUF5SmdCLG1CQUFrQjtHQUV6QjtDdkNpOU9SOztBRDE4T0c7RXdDbEtKO0lBZ0tZLG9CQUFtQjtHQUUxQjtDdkNnOU9KOztBdUNsblBEO0VBcUtRLG9CQUFtQjtFQUNuQixvQkFBbUI7Q0FLdEI7O0FBM0tMO0VBeUtZLGlCQUFnQjtDQUNuQjs7QUExS1Q7RUE4S1EsZ0JBQWU7Q0FPbEI7O0FBckxMO0VBZ0xZLGUxQzFKTTtDMEMySlQ7O0FBakxUO0VBbUxZLGVBQWM7Q0FDakI7O0FBcExUO0VBeUxZLGNBQWE7Q0FDaEI7O0F4Q2pMRDtFd0NUUjtJdENtQ0ksd0RBQWtJO0lBcUNsSSx1QkFBc0I7SUFDdEIsWUFBVztJQUNYLDZCQUFtQztHc0N3SDlCO0V0Q3ZITDtJQUNJLDBCQUF5QjtHQUM1QjtDRDBrUEo7O0FEci9PRztFd0NsS0o7SUF1TVksZ0JBQWU7R0FFdEI7Q3ZDbzlPSjs7QXVDN3BQRDtFQTZNWSxjQUFhO0VBQ2Isb0JBQW1CO0NBS3RCOztBeENqREw7RXdDbEtKO0lBaU5nQixvQkFBbUI7R0FFMUI7Q3ZDcTlPUjs7QXVDeHFQRDtFQXNOWSxvQkFBbUI7Q0FDdEI7O0FBdk5UO0VBME5ZLG9CQUFtQjtDQUN0Qjs7QUEzTlQ7RUErTmdCLGlCQUFnQjtDQUNuQjs7QXhDOURUO0V3Q2xLSjtJQXFPZ0Isb0JBQW1CO0dBQ3RCO0N2Q285T1o7O0F1QzFyUEQ7RUE0T1ksb0JBQW1CO0NBS3RCOztBeEMvRUw7RXdDbEtKO0lBK09nQixvQkFBbUI7R0FFMUI7Q3ZDbTlPUjs7QXVDcHNQRDtFQW9QWSxpQkFBZ0I7Q0FDbkI7O0F4Q2hQRDtFeUNMUjtJQUVRLGdCQUFlO0dBRXRCO0N4QzBzUEE7O0F3Q3hzUEQ7RUFDSSxtQkFBa0I7Q0F1QnJCOztBQXJCRztFQUNJLG9CQUFtQjtDQUN0Qjs7QUFFRDtFQUNJLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsVUFBUztDQWFaOztBQWhCQTtFQU1PLHVCQUFzQjtDQUN6Qjs7QUFQSjtFQVVPLG1CQUFrQjtFQUNsQixPQUFNO0VBQ04sUUFBTztFQUNQLFlBQVc7RUFDWCxhQUFZO0NBQ2Y7O0FDNUJUO0VBQ0ksb0JBQW1CO0VBQ25CLCtCQUFzQjtVQUF0Qix1QkFBc0I7RUFDdEIsWUFBVztFQUNYLGlCQUFnQjtFQUNoQixtQkFBa0I7RUFDbEIsb0JBQW1CO0VBQ25CLFdBQVU7Q0FDYjs7QXpDNHVQRDtFeUN6dVBJLGNBQWE7Q0FDaEI7O0FBRUQ7RUFDSSxpQkFBZ0I7Q0FDbkI7O0FBRUQ7O0VBRUksa0NBQWlDO0VBQ2pDLGlCQUFnQjtFQUNoQixXQUFVO0VBQ1YsWUFBVztFQUNYLFVBQVM7RUFDVCxrREFBZ0Q7RUFDaEQsYUFBWTtFQUNaLGlCQUFnQjtFQUNoQixpQkFBZ0I7RUFDaEIsV0FBVTtFQUNWLGVBQWM7RUFDZCxjQUFhO0VBQ2IsZ0JBQWU7RUFDZiwwQkFBeUI7RUFDekIsb0JBQW1CO0VBQ25CLGNBQWE7RUFDYixvQkFBbUI7Q0FDdEI7O0ExQzVCTztFMENTUjs7SUF3QlEsYUFBWTtJQUNaLFNBQVE7SUFDUiw0QkFBMkI7SUFDM0IsK0RBQThEO0lBQzlELGFBQVk7SUFDWixRQUFPO0lBQ1AsU0FBUTtJQUNSLFlBQVc7R0FDZDtDekMydVBKOztBeUN4dVBEO0VBQ0ksZUFBYztFQUNkLFdBQVU7RUFDVixxQkFBb0I7RUFDcEIsNEJBQTJCO0VBQzNCLG1CQUFrQjtDQUNyQjs7QUFFRDtFQUNJLGFBQVk7RTFDMEVaLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFQUNWLGlCQUFnQjtFQUNoQixxQkFBb0I7RUFDcEIsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixpQkFBZ0I7QzBDbEZuQjs7QUFFRDtFQUNJLGlCQUFnQjtFQUNoQixhQUFZO0VBQ1osWUFBVztFQUNYLFdBQVU7RUFDVixtQkFBa0I7RUFDbEIsYUFBWTtFQUNaLFdBQVU7RUFDVixXQUFVO0NBQ2I7O0F6Q3N2UEQ7RXlDbnZQSSx3QkFBdUI7RUFDdkIsVUFBUztFQUNULGVBQWM7RUFDZCxZQUFXO0VBQ1gsUUFBTztFQUNQLGFBQVk7RUFDWixxQkFBb0I7RUFDcEIsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixPQUFNO0VBQ04seUJBQXdCO0VBQ3hCLFdBQVU7Q0FDYjs7QXpDc3ZQRDtFeUNudlBJLHdCQUF1QjtFQUN2QixZQUFXO0VBQ1gsYUFBWTtFQUNaLFFBQU87RUFDUCxtQkFBa0I7RUFDbEIsT0FBTTtFQUNOLDBCQUF5QjtFQUN6QixZQUFXO0NBQ2Q7O0FDcEdHO0VBQ0ksY0FBYTtFQUViLG9CQUFtQjtDQUt0Qjs7QTNDeUpEO0UyQ2pLQTtJQU1RLG9CQUFtQjtHQUUxQjtDMUMyMVBKOztBMEN6MVBHO0VBQ0kscUJBQW9CO0NBZ0J2Qjs7QUFqQkE7RUFLVyxvQkFBbUI7Q0FDdEI7O0EzQ2lKVDtFMkN2SkM7SUFTVyxxQkFBYTtJQUFiLGNBQWE7R0FNcEI7RUFmSjtJQVllLFlBQU87UUFBUCxRQUFPO0dBQ1Y7QzFDNjFQaEI7O0EwQ3IzUEQ7RUErQlEsa0JBQWlCO0NBd0JwQjs7QTNDMkdEO0UyQ2xLSjtJQWtDWSxrQkFBaUI7R0FxQnhCO0MxQ3cwUEo7O0EwQy8zUEQ7RUF3Q29CLG9CQUFtQjtDQUt0Qjs7QTNDcUhiO0UyQ2xLSjtJQTJDd0Isb0JBQW1CO0dBRTFCO0MxQzQxUGhCOztBRHZ1UEc7RTJDbEtKO0lBa0RvQixrQkFBaUI7SUFDakIsb0JBQW1CO0dBRTFCO0MxQzIxUFo7O0EyQ2g1UEQ7RUFDSSxvQkFBbUI7RUFDbkIsZ0JBQWU7Q0F3SmxCOztBQXRKRztFQUNJLHFCQUFvQjtFQUNwQixlOUNnQlU7RThDZlYsb0JBQW1CO0NBQ3RCOztBQUVEO0U1Q3dIQSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RTRDeEhOLFVBQVM7RUFDVCxXQUFVO0VBQ1YscUNBQW9DO0NBQ3ZDOztBNUNtSkQ7RTRDbEtKO0lBbUJZLFdBQVU7SUFDVixZQUFXO0lBQ1gsb0JBQW1CO0dBS3RCO0VBMUJUO0lBd0JnQixjQUFhO0dBQ2hCO0MzQ3M1UFo7O0EyQ2w1UEc7RUFDSSxvRUFBbUU7RUFDbkUsNENBQTJDO0VBQzNDLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsY0FBYTtFQUNiLGlCQUFnQjtFQUNoQixtQkFBa0I7RUFDbEIsa0JBQWlCO0VBQ2pCLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDJCQUFzQjtNQUF0Qix1QkFBc0I7RUFDdEIsdUJBQThCO01BQTlCLCtCQUE4QjtFQUM5QixzQkFBcUI7Q0FtRHhCOztBQS9EQTtFQWVPLHNCQUFxQjtFQUNyQixZQUFXO0NBQ2Q7O0FBakJKO0VBcUJXLGVBQWM7RUFDZCxlQUFjO0NBQ2pCOztBQXZCUjtFQTJCTyxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLGlCQUFnQjtDQUNuQjs7QUE5Qko7RUFpQ08sV0FBVTtFQUNWLG9CQUFtQjtDQUN0Qjs7QUFuQ0o7RUFzQ08scUJBQWE7RUFBYixjQUFhO0VBQ2Isc0JBQXVCO01BQXZCLHdCQUF1QjtDQUMxQjs7QUF4Q0o7RUEwQ08sd0JBQXVCO0VBQ3ZCLG1CQUFrQjtFQUNsQixVQUFTO0VBQ1Qsb0JBQW1CO0NBQ3RCOztBQTlDSjtFQWlETyxhQUFZO0NBQ2Y7O0FBbERKO0VBcURPLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsU0FBUTtFQUNSLFVBQVM7RUFDVCxhQUFZO0VBQ1osWUFBVztFQUNYLFlBQVc7RUFDWCxvRUFBbUU7RUFDbkUsbUJBQWtCO0NBQ3JCOztBQUdMO0VBQ0ksaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixXQUFVO0VBQ1Ysb0NBQW1DO0NBMEJ0Qzs7QUE5QkE7RUFPTyxZQUFXO0NBQ2Q7O0FBUko7RUFXTyxtQkFBa0I7RUFDbEIsd0NBQXVDO0VBQ3ZDLG1CQUFrQjtFQUNsQixvQkFBbUI7Q0FTdEI7O0FBdkJKO0VBaUJXLGlCQUFnQjtDQUNuQjs7QUFsQlI7RUFxQlcsaUJBQWdCO0NBQ25COztBQXRCUjtFQTBCTyxtQkFBa0I7RUFDbEIsUUFBTztFQUNQLDJDQUEwQztDQUM3Qzs7QUEzSFQ7RUErSFEsb0JBQW1CO0VBQ25CLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsNENBQTJDO0VBQzNDLGlDQUFnQztFQUNoQyx3QkFBdUI7Q0FDMUI7O0FBcklMO0VBd0lRLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIsV0FBVTtDQUNiOztBQTNJTDtFQThJUSxvQkFBbUI7RUFDbkIsbUJBQWtCO0VBQ2xCLGVBQWM7RUFDZCxpQkFBZ0I7RUFDaEIsbUJBQWtCO0VBQ2xCLGVBQWM7RUFDZCxjQUFhO0NBQ2hCOztBQXJKTDtFQXdKUSxnQkFDSjtDQUFDOztBQ3pKTDtFQUdJLGtCQUFpQjtDQXdHcEI7O0E3QzFGTztFNkNqQlI7SUFNUSxrQkFBaUI7R0FxR3hCO0M1QzI4UEE7O0E0QzdpUUc7RUFDSSxvQkFBbUI7Q0FDdEI7O0FBRUQ7RTdDcUhBLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFNkNySE4scUJBQW9CO0NBS3ZCOztBN0NIRztFNkNKSjtJQUtRLG9CQUFtQjtHQUUxQjtDNUNtalFKOztBNENqalFHO0VBQ0ksb0JBQW1CO0NBS3RCOztBQU5BO0VBSU8saUJBQWdCO0NBQ25COztBQUlEO0U3Q3lHSixpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7RUFDVixpQkFBZ0I7RUFDaEIscUJBQW9CO0VBQ3BCLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsb0JBQW1CO0VBQ25CLHFCQUFvQjtFQUNwQixpQkFBZ0I7RUFDaEIsaUJBQWdCO0U2Q2pIUixXQUFVO0NBQ2I7O0FBR0w7RUFDSSxtQkFBa0I7RUFDbEIsZUFBYztFQUNkLFVBQVM7RUFDVCxpQkFBZ0I7RUFDaEIsOEZBQTZGO0NBcUNoRzs7QUExQ0E7RUFRTyxtQkFBa0I7RUFDbEIsbUJBQWtCO0VBQ2xCLGdCQUFlO0NBK0JsQjs7QTdDN0REO0U2Q29CSDtJQWFXLG1CQUFrQjtJQUNsQixtQkFBa0I7R0EyQnpCO0M1Q3FpUVI7O0E0QzlrUUk7RUFrQlcsbUJBQWtCO0VBQ2xCLFFBQU87RUFDUCxVQUFTO0VBQ1QsMEJBQXlCO0VBQ3pCLGFBQVk7RUFDWixVQUFTO0VBQ1QsU0FBUTtFQUNSLHFCQUFvQjtFQUNwQixvQ0FBbUM7RUFDbkMsMkJBQTBCO0VBQzFCLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsZ0NBQStCO0VBQy9CLDBCQUF5QjtFQUN6QixzQkFBcUI7RUFDckIseUJBQXdCO0NBQzNCOztBQWxDUjtFQXNDZSwwQkFBeUI7Q0FDNUI7O0FBS2I7RUFDSSxlL0MzRFU7RStDNERWLGdCQUFlO0VBQ2YsZ0NBQStCO0NBU2xDOztBQVpBO0VBTU8sY0FBYTtDQUNoQjs7QUFQSjtFQVVPLGlCQUFnQjtDQUNuQjs7QUE1RlQ7RUFnR1EsaUJBQWdCO0NBQ25COztBQWpHTDtFQW9HUSxlQUFjO0NBTWpCOztBN0N6Rkc7RTZDakJSO0lBdUdZLGVBQWM7R0FHckI7QzVDNGpRSjs7QTRDempRRDtFQUNJLG9CQUFtQjtFQUNuQixnQkFBZTtDQTJKbEI7O0E3Q3hHRztFNkNyREo7SUFLUSxnQkFBZTtHQXdKdEI7QzVDdTZQQTs7QTRDNWpRRztFQUNJLGtCQUFpQjtDQUNwQjs7QUFFRDtFQUNJLHFCQUFvQjtFQUNwQixlL0NyR1U7RStDc0dWLGNBQWE7RUFDYixvQkFBbUI7RUFDbkIsbUJBQWtCO0NBS3JCOztBN0MrQkQ7RTZDekNBO0lBUVEsb0JBQW1CO0dBRTFCO0M1Q2drUUo7O0E0QzlqUUc7RTdDSEEsaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0U2Q0dOLHFDQUFvQztDQUN2Qzs7QTdDMEJEO0U2Q3JESjtJQThCUSxzQkFBcUI7R0ErSDVCO0VBN0pEO0lBaUNZLFdBQVU7SUFDVixZQUFXO0lBQ1gsb0JBQW1CO0dBS3RCO0VBeENUO0lBc0NnQixpQkFBZ0I7R0FDbkI7QzVDb2tRWjs7QTRDaGtRRztFQUNJLGlCQUFnQjtFQUNoQixlL0NwSVU7RStDcUlWLDRDQUEyQztFQUMzQyxtQkFBa0I7RUFDbEIsbUJBQWtCO0VBQ2xCLG1CQUFrQjtFQUNsQixrQkFBaUI7RUFDakIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMkJBQXNCO01BQXRCLHVCQUFzQjtFQUN0Qix1QkFBOEI7TUFBOUIsK0JBQThCO0VBQzlCLHNCQUFxQjtFQUNyQix3REFBOEQ7RUFDOUQsNkNBQTRDO0VBQzVDLG9DQUEyQjtVQUEzQiw0QkFBMkI7RUFDM0IsdUJBQXNCO0NBOEN6Qjs7QTdDbkREO0U2Q1ZBO0lBa0JRLFVBQVM7R0EyQ2hCO0VBN0RBO0lBcUJXLGtEQUFpRDtHQUtwRDtFQTFCUjtJQXdCZSxXQUFVO0dBQ2I7QzVDcWtRaEI7O0E0QzlsUUk7RUE4Qk8sc0JBQXFCO0VBQ3JCLGUvQ2pLTTtDK0NrS1Q7O0FBaENKO0VBbUNPLGUvQ3JLTTtDK0NzS1Q7O0FBcENKO0VBdUNPLFdBQVU7RUFDVixtQkFBa0I7Q0FZckI7O0FBcERKO0VBMkNXLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsWUFBVztFQUNYLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsVUFBUztFQUNULFdBQVU7RUFDViwwQkFBeUI7Q0FDNUI7O0FBbkRSO0VBdURPLHNEQUFnRDtFQUNoRCxXQUFVO0VBQ1YsZ0JBQWU7RUFDZixlQUFjO0VBQ2QsaUJBQWdCO0NBQ25COztBQUdMO0VBQ0ksaUJBQWdCO0VBQ2hCLGlCQUFnQjtFQUNoQixXQUFVO0VBQ1Ysb0NBQW1DO0NBMEJ0Qzs7QUE5QkE7RUFPTyxZQUFXO0NBQ2Q7O0FBUko7RUFXTyxtQkFBa0I7RUFDbEIsd0NBQXVDO0VBQ3ZDLG1CQUFrQjtFQUNsQixvQkFBbUI7Q0FTdEI7O0FBdkJKO0VBaUJXLGlCQUFnQjtDQUNuQjs7QUFsQlI7RUFxQlcsaUJBQWdCO0NBQ25COztBQXRCUjtFQTBCTyxtQkFBa0I7RUFDbEIsUUFBTztFQUNQLDJDQUEwQztDQUM3Qzs7QUF2SVQ7RUEySVEsbUJBQWtCO0VBQ2xCLFVBQVM7RUFDVCxXQUFVO0NBQ2I7O0FBOUlMO0VBaUpRLG9CQUFtQjtFQUNuQixtQkFBa0I7RUFDbEIsZUFBYztFQUNkLGlCQUFnQjtFQUNoQixtQkFBa0I7RUFDbEIsZUFBYztFQUNkLGNBQWE7Q0FDaEI7O0FBeEpMO0VBMkpRLGdCQUNKO0NBQUM7O0FBR0w7RUFDSSxrQkFBaUI7Q0FrQnBCOztBN0M3SEc7RTZDMEdKO0lBSVEsa0JBQWlCO0dBZXhCO0M1Q3NqUUE7O0E0Q2xrUUc7RUFDSSxjQUFhO0VBQ2Isb0JBQW1CO0NBS3RCOztBN0N4SEQ7RTZDaUhBO0lBS1Esb0JBQW1CO0dBRTFCO0M1Q3NrUUo7O0E0Q3BsUUQ7RUFpQlEsVUFBUztDQUNaOztBQzlSTDtFQUNJLG1CQUFrQjtFQUNsQixxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBbUI7TUFBbkIsb0JBQW1CO0NBd0N0Qjs7QUF0Q0c7RUFDSSxtQkFBa0I7Q0FDckI7O0FBRUQ7RTlDK0hBLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsV0FBVTtFQUNWLGlCQUFnQjtFQUNoQixxQkFBb0I7RUFDcEIsZUFBYztFQUNkLG1CQUFrQjtFQUNsQixvQkFBbUI7RUFDbkIscUJBQW9CO0VBQ3BCLGlCQUFnQjtFQUNoQixpQkFBZ0I7RThDdklaLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsVUFBUztDQWdCWjs7QUFwQkE7RUFPTyxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxZQUFXO0VBQ1gsYUFBWTtFQUNaLHlnQnRDMkVnRDtDc0MxRW5EOztBQWJKO0VBaUJXLG1zQnRDc0U0QztDc0NyRS9DOztBQUlUO0VBQ0ksYUFBWTtFQUNaLFlBQVc7RUFDWCxhQUFZO0VBQ1osWUFBVztFQUNYLG9CQUFtQjtFQUNuQixnQkFBZTtFQUNmLDZCQUE0QjtFQUM1Qiw0Q0FBMkM7RUFDM0Msc0NBQXFDO0NBQ3hDOztBQUlMO0VBQ0ksbUJBQWtCO0VBQ2xCLDZCQUE0QjtFQUM1QixjQUFhO0VBQ2IsMEJBQXlCO0VBQ3pCLHlCQUF3QjtFQUN4Qix1REFBc0Q7RUFDdEQsb0JBQW1CO0VBQ25CLFdBQVU7RUFDVixnQkFBZTtFQUNmLDRDQUEyQztFQUMzQyxpQkFBZ0I7Q0EwSG5COztBQXJJRDtFQWdCUSwwQkFBeUI7RUFDekIsNkJBQTRCO0NBQy9COztBQWxCTDtFQXFCUSxjQUFhO0NBQ2hCOztBQXRCTDtFQXlCUSxzQkFBcUI7RUFDckIsVUFBUztFQUNULGNBQWE7RUFDYixlaERuRFU7Q2dEeUdiOztBQWxGTDs7O0VBaUNZLGVoRHhETTtDZ0R5RFQ7O0FBbENUO0VBcUNZLGVBQWM7RUFDZCxrQkFBaUI7Q0FDcEI7O0FBdkNUO0VBMENZLGdCQUFlO0VBQ2YsbUJBQWtCO0VBQ2xCLGdCQUFlO0VBQ2Ysb0JBQW1CO0NBb0N0Qjs7QUFqRlQ7RUFtRGdCLDBCQUF5QjtFQUN6Qiw2QkFBNEI7Q0FDL0I7O0FBckRiOzs7Ozs7Ozs7Ozs7RUFtRWdCLHNCQUFxQjtDQUN4Qjs7QUFwRWI7RUF1RWdCLGdCQUFlO0NBQ2xCOztBQXhFYjtFQTJFZ0IsZUFBYztFQUNkLDBCQUF5QjtFQUN6QixnQkFBZTtFQUNmLGVBQWM7RUFDZCxnQkFBZTtDQUNsQjs7QUFoRmI7RUFxRlEsZUFBYztFQUNkLDZCQUE0QjtFQUM1QiwwQkFBeUI7RUFDekIsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQiwwQkFBeUI7RUFDekIseUJBQXdCO0VBQ3hCLHVEQUFzRDtFQUN0RCxhQUFZO0VBQ1osV0FBVTtDQUtiOztBQW5HTDtFQWlHWSxjQUFhO0NBQ2hCOztBQUdMO0VBQ0ksbUJBQWtCO0VBQ2xCLGdCQUFlO0VBQ2Ysc0JBQXFCO0NBNEJ4Qjs7QUEvQkE7RTlDVkQsaUJBQWdCO0VBQ2hCLFVBQVM7RUFDVCxXQUFVO0VBQ1YsaUJBQWdCO0VBQ2hCLHFCQUFvQjtFQUNwQixlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLG9CQUFtQjtFQUNuQixxQkFBb0I7RUFDcEIsaUJBQWdCO0VBQ2hCLGlCQUFnQjtFOENPUix3RUFBdUU7RUFDdkUsWUFBVztFQUNYLG1CQUFrQjtDQUNyQjs7QUFWSjtFQWFPLFlBQVc7RUFDWCwyQkFBMEI7RUFDMUIsbUJBQWtCO0VBQ2xCLFVBQVM7RUFDVCxXQUFVO0VBQ1YsWUFBVztDQUNkOztBQW5CSjtFQXNCTyxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCxhQUFZO0VBQ1osWUFBVztFQUNYLFVBQVM7RUFDVCxxQkFBb0I7RUFDcEIsc1d0Qy9FZ0Q7Q3NDZ0ZuRDs7QUNoTFQ7RUFFSSxpQkFBZ0I7Q0FxRm5COztBL0MyRUc7RStDbEtKO0lBS1EsaUJBQWdCO0dBa0Z2QjtDOUN1OVFBOztBOEN0aVJHO0UvQzBIQSxpQkFBZ0I7RUFDaEIsVUFBUztFQUNULFdBQVU7QytDNUdUOztBL0MwSUQ7RStDMUpDO0kvQzBIRCxpQkFBZ0I7SUFDaEIsVUFBUztJQUNULFdBQVU7SUc1SE4scUJBQWE7SUFBYixjQUFhO0lBR1QsZ0JBQTRCO0lBR2hDLG9CQUFlO1FBQWYsZ0JBQWU7RzRDU2Q7RTVDcURMO0lBckJJLGdCQUF3QjtJQUc1QixhQUFZO0lBQ1oscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBS1YsOEJBQWdCO1FBQWhCLGlCQUFnQjtJQUNoQixnQkFBZTtHQVlsQjtFQVREO0lBQ0ksaUJBQWdCO0dBQ25CO0VBdkNHO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsOEJMb0JNO1FLcEJOLGlCTG9CTTtJS25CTixnQkxtQk07R0tqQ0w7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLDZCTHFCUTtRS3JCUixnQkxxQlE7SUtwQlIsZUxvQlE7R0tsQ1A7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLGtDTHNCYTtRS3RCYixxQkxzQmE7SUtyQmIsb0JMcUJhO0dLbkNaO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNVixrQ0x1QmE7UUt2QmIscUJMdUJhO0lLdEJiLG9CTHNCYTtHS3BDWjtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMd0JRO1FLeEJSLGdCTHdCUTtJS3ZCUixlTHVCUTtHS3JDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsNkJMeUJRO1FLekJSLGdCTHlCUTtJS3hCUixlTHdCUTtHS3RDUDtFQUZEO0lBUUoscUJBQVk7UUFBWixhQUFZO0lBQ1oscUJBQWM7UUFBZCxlQUFjO0lBTVYsbUNMMEJjO1FLMUJkLHNCTDBCYztJS3pCZCxxQkx5QmM7R0t2Q2I7RUFGRDtJQVFKLHFCQUFZO1FBQVosYUFBWTtJQUNaLHFCQUFjO1FBQWQsZUFBYztJQU1WLGtDTDJCYTtRSzNCYixxQkwyQmE7SUsxQmIsb0JMMEJhO0dLeENaO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2Qkw0QlE7UUs1QlIsZ0JMNEJRO0lLM0JSLGVMMkJRO0dLekNQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2Qkw2QlE7UUs3QlIsZ0JMNkJRO0lLNUJSLGVMNEJRO0dLMUNQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2Qkw4QlE7UUs5QlIsZ0JMOEJRO0lLN0JSLGVMNkJRO0dLM0NQO0VBRkQ7SUFRSixxQkFBWTtRQUFaLGFBQVk7SUFDWixxQkFBYztRQUFkLGVBQWM7SUFNViw2QkwrQlE7UUsvQlIsZ0JMK0JRO0lLOUJSLGVMOEJRO0dLNUNQO0NGZ25SUjs7QURoL1FHO0UrQzFKQztJQVdtQixZQUFXO0dBQ2Q7QzlDb29ScEI7O0E4QzluUkc7RUFDSSxpQkFBZ0I7Q0FNbkI7O0EvQ2lJRDtFK0N4SUE7SUFJUSxvQkFBbUI7SUFDbkIsa0JBQWlCO0dBRXhCO0M5Q2tvUko7O0E4Q2hvUkc7RUFDSSxxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBbUI7TUFBbkIsb0JBQW1CO0VBQ25CLG1CQUFrQjtDQUNyQjs7QUFFRDtFQUNJLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDJCQUFzQjtNQUF0Qix1QkFBc0I7RUFDdEIsbUJBQWtCO0VBQ2xCLGdCQUFlO0NBNkJsQjs7QUFqQ0E7RUFPTyxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLFFBQU87RUFDUCxTQUFRO0VBQ1IsT0FBTTtFQUNOLDhCQUE2QjtDQUNoQzs7QUFiSjtFQWdCTyxVQUFTO0VBQ1QsYUFBWTtDQUNmOztBL0N1R0w7RStDekhBO0lBcUJRLGFBQVk7SUFDWixZQUFXO0dBV2xCO0M5QzJuUko7O0E4QzVwUkk7RUEwQk8sc0JBQXFCO0VBQ3JCLFlBQU87TUFBUCxRQUFPO0NBQ1Y7O0FBNUJKO0VBK0JPLGlCQUFnQjtDQUNuQjs7QUFHTDtFQUNJLHVCQUFzQjtFQUN0QixlakR4RFU7RWlEeURWLFVBQVM7RUFDVCxrQ0FBaUM7RUFDakMsOEZBQTZGO0NBS2hHOztBQVZBO0VBUU8sZWpEcEVLO0NpRHFFUjs7QUNwRlQ7RUFDSSxlQUFjO0NBa0RqQjs7QUFuREQ7RUFHUSxtQkFBa0I7Q0FDckI7O0FBSkw7RUFRZ0IsaUNBQWdDO0NBQ25DOztBQVRiO0VBY1csaUNBQWdDO0NBQ2xDOztBQWZUO0VBbUJXLGlDQUFnQztDQUNsQzs7QUFwQlQ7RUF3QlksaUNBQWdDO0NBQ25DOztBQXpCVDtFQTZCWSxpQ0FBZ0M7Q0FDbkM7O0FBOUJUO0VBbUNnQixpQ0FBZ0M7Q0FDbkM7O0FBcENiO0VBeUNZLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsYUFBWTtDQUNmOztBQTVDVDtFQWdEWSxXQUFVO0NBQ2IiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBib3dlcjpzY3NzXHJcbi8vIGVuZGJvd2VyXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuSU1QT1JUQU5UOiBUaGlzIGZpbGUgaXMgZ2VuZXJhdGVkIGJ5IFNhc3MuIERvIG5vdCBtb2RpZnkgdGhpcyBmaWxlIGRpcmVjdGx5LlxyXG5cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8vIEZ1bmN0aW9uc1xyXG5AaW1wb3J0IFwicGFydGlhbHMvZnVuY3Rpb25zXCI7XHQvLyBVc2VmdWwgU2FzcyBmdW5jdGlvbnNcclxuXHJcbi8vIFZhcmlhYmxlc1xyXG5AaW1wb3J0IFwicGFydGlhbHMvdmFyaWFibGVzXCI7XHQvLyBDb2xvciBwYWxhdHRlXHJcblxyXG4vLyAvLyBNaXhpbnMgYW5kIEZ1bmN0aW9uc1xyXG5AaW1wb3J0IFwicGFydGlhbHMvbWl4aW5zXCI7XHRcdC8vIFVzZWZ1bCBTYXNzIG1peGluc1xyXG5cclxuLy8gLy8gU3RydWN0dXJhbFxyXG5AaW1wb3J0IFwicGFydGlhbHMvZ2xvYmFsXCI7XHRcdC8vIFN0eWxlcyBjb21tb24gdG8gZW50aXJlIGFwcGxpY2F0aW9uLiBTaG91bGQga2VlcCB0aGlzIHByZXR0eSBsZWFuLlxyXG5AaW1wb3J0IFwicGFydGlhbHMvZ3JpZFwiO1x0XHQvLyBHcmlkXHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9mbGV4LWdyaWRcIjtcclxuQGltcG9ydCBcInBhcnRpYWxzL2xheW91dFwiO1x0XHQvLyBPdmVyYWxsIGdyaWQgbGF5b3V0XHJcbkBpbXBvcnQgXCJwYXJ0aWFscy90eXBvZ3JhcGh5XCI7XHQvLyBBcHBsaWNhdGlvbiB0eXBvZ3JhcGh5LiBCYXNpYyBzZXR1cCBvbmx5LiBVc2Ugc2l0ZS9tb2R1bGVzLnNjc3MgZm9yIHNwZWNpZmljIG1vZHVsZSBzdHlsZXMsIGluY2x1ZGluZyB0eXBvZ3JhcGh5LlxyXG5AaW1wb3J0IFwicGFydGlhbHMvdGFibGVzXCI7XHRcdC8vIEdlbmVyYWwgdGFibGUgc3R5bGVzXHJcbkBpbXBvcnQgXCJwYXJ0aWFscy9mb3Jtc1wiO1x0XHQvLyBHZW5lcmFsIGZvcm0gc3R5bGVzXHJcbkBpbXBvcnQgXCJwYXJ0aWFscy91aVwiO1x0XHRcdC8vIEdlbmVyYWwgVUkgZWxlbWVudHNcclxuXHJcbi8vIC8vIFNpdGVcclxuQGltcG9ydCBcInBhcnRpYWxzL2hlYWRlclwiO1x0XHQvLyBIZWFkZXJcclxuQGltcG9ydCBcInBhcnRpYWxzL2Zvb3RlclwiO1x0XHQvLyBGb290ZXJcclxuQGltcG9ydCBcInBhcnRpYWxzL21vZHVsZXNcIjtcdFx0Ly8gTW9kdWxlc1xyXG5cclxuLy8gLy8gU2l0ZWNvcmUgU3BlY2lmaWNcclxuQGltcG9ydCBcInBhcnRpYWxzL2V4cGVyaWVuY2UtZWRpdG9yXCI7XHRcdC8vIEV4cGVyaWVuY2UgRWRpdG9yIiwiLyogU2l6ZXMgKi9cclxuLy8kY29udGVudHdpZHRoOiAxMTgwcHg7XHJcbiRjb250ZW50d2lkdGg6IDEzNjBweDtcclxuJGNvbnRlbnRtYXh3aWR0aDogMTkzMHB4O1xyXG5cclxuJGdyYWRpZW50LWNvbG9yczogKFxyXG4gICAgZ29sZGVuLWhvdXI6IChsZWZ0OiAjZmY2NjMzLCByaWdodDogI2ZmY2MwMCksXHJcbiAgICBibHVlLWhvdXI6IChsZWZ0OiAjMzMzMzk5LCByaWdodDojMzNjY2ZmKSxcclxuICAgIGF1cm9yYTogKGxlZnQ6ICMzM2NjZmYsIHJpZ2h0OiAjYTU0MmVmKSxcclxuICAgIHBsZW4tYWlyOiAobGVmdDogIzA0YTVmZiwgcmlnaHQ6ICM2Y2ZmYTkpLFxyXG4gICAgZ3JlZW4tc2hhZGVzOiAobGVmdDogIzE2NDgxYSwgcmlnaHQ6ICNhNWUyMjYpLFxyXG4gICAgc3RvbmUtd2hpdGU6IChsZWZ0OiAjZmZmLCByaWdodDogI2IzYjNiMylcclxuKTtcclxuXHJcbiRjb2xvcnM6IChcclxuICAgIG9yYW5nZTogI0ZGODIwMCxcclxuICAgIGJsdWU6ICMyRDcyRjcsXHJcbiAgICBwdXJwbGU6ICM5OTMzZmYsXHJcbiAgICBsaWdodC1ibHVlOiAjMzNDQ2ZmLFxyXG4gICAgZ3JlZW46ICNhNWUyMjYsXHJcbiAgICByZWQ6ICNFRDNGMzksXHJcbiAgICB3aGl0ZTogI2ZmZixcclxuICAgIGJsYWNrOiAjMjkyOTI5LFxyXG4gICAgc21va2U6ICM3Njc2NzYsXHJcbiAgICBncmF5OiAjZjVmNWY1LFxyXG4gICAgZ29sZGVuLWhvdXI6IGdldEdyYWRpZW50RmFsbGJhY2soZ29sZGVuLWhvdXIpLFxyXG4gICAgYmx1ZS1ob3VyOiBnZXRHcmFkaWVudEZhbGxiYWNrKGJsdWUtaG91ciksXHJcbiAgICBhdXJvcmE6IGdldEdyYWRpZW50RmFsbGJhY2soYXVyb3JhKSxcclxuICAgIHBsZW4tYWlyOiBnZXRHcmFkaWVudEZhbGxiYWNrKHBsZW4tYWlyKSxcclxuICAgIGdyZWVuLXNoYWRlczogZ2V0R3JhZGllbnRGYWxsYmFjayhncmVlbi1zaGFkZXMpLFxyXG4gICAgc3RvbmUtd2hpdGU6IGdldEdyYWRpZW50RmFsbGJhY2soc3RvbmUtd2hpdGUpXHJcbik7XHJcblxyXG4kZ3JhZGllbnRzOiAoXHJcbiAgICBnb2xkZW4taG91cjogbGluZWFyLWdyYWRpZW50KDEwZGVnLCBtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3IoZ29sZGVuLWhvdXIpLCBsZWZ0KSAwJSwgbWFwLWdldChnZXRHcmFkaWVudENvbG9yKGdvbGRlbi1ob3VyKSwgcmlnaHQpIDEwMCUpLFxyXG4gICAgYmx1ZS1ob3VyOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsIG1hcC1nZXQoZ2V0R3JhZGllbnRDb2xvcihibHVlLWhvdXIpLCBsZWZ0KSAwJSwgbWFwLWdldChnZXRHcmFkaWVudENvbG9yKGJsdWUtaG91ciksIHJpZ2h0KSAxMDAlKSxcclxuICAgIGF1cm9yYTogbGluZWFyLWdyYWRpZW50KDEwZGVnLCBtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3IoYXVyb3JhKSwgbGVmdCkgMCUsIG1hcC1nZXQoZ2V0R3JhZGllbnRDb2xvcihhdXJvcmEpLCByaWdodCkgMTAwJSksXHJcbiAgICBwbGVuLWFpcjogbGluZWFyLWdyYWRpZW50KDEwZGVnLCBtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3IocGxlbi1haXIpLCBsZWZ0KSAwJSwgbWFwLWdldChnZXRHcmFkaWVudENvbG9yKHBsZW4tYWlyKSwgcmlnaHQpIDEwMCUpLFxyXG4gICAgZ3JlZW4tc2hhZGVzOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsIG1hcC1nZXQoZ2V0R3JhZGllbnRDb2xvcihncmVlbi1zaGFkZXMpLCBsZWZ0KSAwJSwgbWFwLWdldChnZXRHcmFkaWVudENvbG9yKGdyZWVuLXNoYWRlcyksIHJpZ2h0KSAxMDAlKSxcclxuICAgIHN0b25lLXdoaXRlOiAgbGluZWFyLWdyYWRpZW50KDIwMS4xOGRlZywgbWFwLWdldChnZXRHcmFkaWVudENvbG9yKHN0b25lLXdoaXRlKSwgbGVmdCkgNDklLCBtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3Ioc3RvbmUtd2hpdGUpLCByaWdodCkgMTQxJSksXHJcbik7XHJcblxyXG4kdGV4dC1zaXplczogKFxyXG4gICAgMnhzOiAxMHB4LFxyXG4gICAgeHM6IDEycHgsXHJcbiAgICBzbTogMTRweCxcclxuICAgIGJhc2U6IDE2cHgsXHJcbiAgICBtZDogMjBweCxcclxuICAgIGxnOiAyNHB4LFxyXG4gICAgeGw6IDMycHgsXHJcbiAgICAyeGw6IDQwcHgsXHJcbiAgICAzeGw6IDQ4cHgsXHJcbiAgICA0eGw6IDU2cHgsXHJcbiAgICA1eGw6IDY0cHgsXHJcbiAgICA2eGw6IDcycHgsXHJcbiAgICA3eGw6IDg4cHhcclxuKTtcclxuXHJcbiRicmVha3BvaW50czogKFxyXG4gICAgeHM6IDU2OHB4LFxyXG4gICAgc206IDc2OHB4LFxyXG4gICAgbWQ6IDEwMjRweCxcclxuICAgIGxnOiAxMjgwcHgsIFxyXG4gICAgeGw6ICRjb250ZW50d2lkdGhcclxuKTtcclxuXHJcbiRmbGV4LWNvbHVtbnM6IChcclxuICAgIGZ1bGw6IDEwMCUsXHJcbiAgICAnMVxcXFwvMic6IDUwJSxcclxuICAgICcxXFxcXC8zJzogMzMuMzMzMyUsXHJcbiAgICAnMlxcXFwvMyc6IDY2LjY2NjYlLFxyXG4gICAgJzFcXFxcLzQnOiAyNSUsXHJcbiAgICAnM1xcXFwvNCc6IDc1JSxcclxuICAgICcxXFxcXC82JzogMTYuNjY2NjYlLFxyXG4gICAgJzVcXFxcLzYnOiA4My4zMzMzJSxcclxuICAgICcxXFxcXC81JzogMjAlLFxyXG4gICAgJzJcXFxcLzUnOiA0MCUsXHJcbiAgICAnM1xcXFwvNSc6IDYwJSxcclxuICAgICc0XFxcXC81JzogODAlXHJcbik7XHJcblxyXG4kYXNwZWN0LXJhdGlvczogKFxyXG4gICAgc3F1YXJlOiAxMDAlLFxyXG4gICAgJzJcXFxcLzEnOiA1MCUsXHJcbiAgICAnM1xcXFwvMic6IDY2LjY2NjclLFxyXG4gICAgJzRcXFxcLzMnOiA3NSUsXHJcbiAgICAnMTZcXFxcLzknOiA1Ni4yNSUsXHJcbiAgICAnMjFcXFxcLzknOiA0Mi44NiVcclxuKTtcclxuXHJcbiRlYXNpbmdzOiAoXHJcbiAgICBzd2lmdDogY3ViaWMtYmV6aWVyKC40LCAwLCAuMiwgMSksXHJcbiAgICBzd2lmdGVyOiBjdWJpYy1iZXppZXIoLjQsIDAsIDAsIDEpLFxyXG4gICAgaGVhdnk6IGN1YmljLWJlemllciguNywgMCwgLjYsIDEpLFxyXG4gICAgc3dpZnQtaW46IGN1YmljLWJlemllcigwLCAwLCAuMiwgMSksXHJcbiAgICBzd2lmdC1vdXQ6IGN1YmljLWJlemllciguNTUsIDAsIC4xLCAxKSxcclxuKTtcclxuXHJcbi8qIEZvbnRzICovXHJcbiRzZXJpZjogc2VyaWY7XHJcbiRzYW5zOiBhY3VtaW4tcHJvLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiRtb25vOiBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgTGliZXJhdGlvbiBNb25vLCBDb3VyaWVyIE5ldywgbW9ub3NwYWNlO1xyXG4iLCIqIHtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgLy9saW5lLWhlaWdodDogMS44NzU7XHJcbiAgICBjb2xvcjogIzMzMzMzMztcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XHJcbiAgICAmOm5vdCgucmVkZXNpZ24tMjAyMi1oZWFkZXIpIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTM1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5hIHtcclxuICAgIGNvbG9yOiAjMkQ3MkY3O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgJjp2aXNpdGVkIHtcclxuICAgICAgICBjb2xvcjogI2ZmNjYzMTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogIzAwMDBlZTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxufVxyXG5cclxuZGwge1xyXG4gICAgZHQge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcbiAgICBkZCB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG59XHJcblxyXG5ociB7XHJcbiAgICBoZWlnaHQ6IDRweDtcclxuICAgIG1hcmdpbjogMzJweCAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgI0Q4RDhEODtcclxuICAgIGJhY2tncm91bmQ6IGdldEdyYWRpZW50KGdvbGRlbi1ob3VyKTtcclxufVxyXG5cclxuaW1nIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG5maWd1cmUge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLmNsZWFyZml4IHtcclxuICAgICp6b29tOiAxO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgIH1cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGlkZGVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAvLyB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbn1cclxuXHJcbi5hY3Rpb24ge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG59XHJcblxyXG4udGV4dC1jZW50ZXIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGV4dC1yaWdodCB7XHJcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG5cclxuLnRleHQtbGVmdCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG5baGlkZGVuXSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vLyBHb29nbGUgbWFwcyBhdXRvY29tcGxldGVcclxuLnBhYy1pY29uIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnBhYy1pdGVtIHtcclxuICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxufVxyXG5cclxuLy8gUmVjYXB0Y2hhXHJcbi5ncmVjYXB0Y2hhLWJhZGdlIHtcclxuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5ncmVjYXB0Y2hhLWJhZGdlIGlmcmFtZSB7XHJcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZ3JlY2FwdGNoYS1sb2dvIHtcclxuICAgIHdpZHRoOiAyNTVweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG5AaW5jbHVkZSB2aXNpYmlsaXR5KCR0eXBlOiBcImJsb2NrXCIpO1xyXG5AaW5jbHVkZSB2aXNpYmlsaXR5KCR0eXBlOiBcImZsZXhcIik7XHJcbkBpbmNsdWRlIHZpc2liaWxpdHkoJHR5cGU6IFwiaGlkZGVuXCIpOyIsIi8vIFVzYWdlIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHsgLyogU3R5bGVzIGhlcmUgKi8gfVxyXG5AbWl4aW4gYnJlYWtwb2ludCgkcG9pbnQpIHtcclxuICAgICRzbWFsbDogNzY3cHg7IC8vIFVwIHRvIDc2N3B4XHJcbiAgICAkbWVkaXVtOiAxMDIzcHg7IC8vIFVwIHRvIDEwMjRweFxyXG4gICAgQGlmICRwb2ludCA9PSBsYXJnZSB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWVkaXVtKzEpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gbWVkaXVtLWxhcmdlIHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzbWFsbCsxKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IG1lZGl1bSB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGwrMSkgYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0pIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gc21hbGwtbWVkaXVtIHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtZWRpdW0pIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gc21hbGwge1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGdyYWRpZW50LXRleHQoJGdyYWRpZW50TmFtZSwgJGRpcmVjdGlvbjogNDVkZWcpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuICAgICAgICAkZGlyZWN0aW9uLFxyXG4gICAgICAgIG1hcC1nZXQoZ2V0R3JhZGllbnRDb2xvcigkZ3JhZGllbnROYW1lKSwgbGVmdCkgMCUsXHJcbiAgICAgICAgbWFwLWdldChnZXRHcmFkaWVudENvbG9yKCRncmFkaWVudE5hbWUpLCByaWdodCkgMTAwJVxyXG4gICAgKTtcclxuICAgIGNvbG9yOiBnZXRHcmFkaWVudEZhbGxiYWNrKCRncmFkaWVudE5hbWUpOyAvLyBTZXQgYSBmYWxsYmFjayBjb2xvciB0aGF0IGlzIDUwJSBiZXR3ZWVuIHRoZSB0d28gbnVtYmVyc1xyXG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8vIFRoaXMgbmVlZHMgdHdvIGlubGluZSBlbGVtZW50cyBpbiBvcmRlciB0byB3b3JrLiBUaGUgZmlyc3QgaXMgZm9yIGEgZmFsbGJhY2sgY29sb3IgdG8gaGVscCBhZGRyZXNzIGEgQ2hyb21lIGJ1ZyBhbmQgdGhlIHNlY29uZCBpcyB0byBzZXQgdGhlIGJhY2tncm91bmQgaXRzZWxmLlxyXG4vLyBIVE1MIHN0cnVjdHVyZSBpbnNpZGUgdGhlIGVsZW1lbnQgYXBwbHlpbmcgdGhlIGdyYWRpZW50IHRvIHNob3VsZCBiZTogPHNwYW4+PHNwYW4+VGV4dCBIZXJlPC9zcGFuPjwvc3Bhbj5cclxuQG1peGluIGdyYWRpZW50LXRleHQtYmFja2dyb3VuZCgkZ3JhZGllbnROYW1lLCAkZGlyZWN0aW9uOiA0NWRlZykge1xyXG4gICAgPiBzcGFuIHtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBnZXRHcmFkaWVudEZhbGxiYWNrKGdvbGRlbi1ob3VyKTsgLy8gR2V0IHRoZSBmYWxsYmFjayBjb2xvclxyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4IDVweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0yMHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgICAgICAkZGlyZWN0aW9uLFxyXG4gICAgICAgICAgICAgICAgbWFwLWdldChnZXRHcmFkaWVudENvbG9yKCRncmFkaWVudE5hbWUpLCBsZWZ0KSAyMCUsXHJcbiAgICAgICAgICAgICAgICBtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3IoJGdyYWRpZW50TmFtZSksIHJpZ2h0KSA4MCVcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcbiAgICAgICAgICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xyXG4gICAgICAgICAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gY3VydmVkLWJveCgkZWxlbWVudDogYXJ0aWNsZSwgJHRvcDogdHJ1ZSwgJGJvdHRvbTogdHJ1ZSkge1xyXG4gICAgLy8gVG9wIFJvdW5kZWRcclxuICAgIEBpZiAoJHRvcCA9PSB0cnVlKSB7XHJcbiAgICAgICAgI3skZWxlbWVudH0ge1xyXG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2N1cnZlLW1hc2sucG5nKTtcclxuICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogNTAlIDA7XHJcbiAgICAgICAgICAgIG1hc2stc2l6ZTogY292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIEJvdHRvbSBSb3VuZGVkXHJcbiAgICBAaWYgKCRib3R0b20gPT0gdHJ1ZSkge1xyXG4gICAgICAgIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvY3VydmUtbWFzay5wbmcpO1xyXG4gICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgbWFzay1wb3NpdGlvbjogNTAlIDEwMCU7XHJcbiAgICAgICAgbWFzay1zaXplOiBjb3ZlcjtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGdyYWRpZW50LXVuZGVybGluZSgkZ3JhZGllbnROYW1lLCAkaGVpZ2h0OiAycHgpIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGdldEdyYWRpZW50KCRncmFkaWVudE5hbWUpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gaW1hZ2UtcmVwbGFjZSgkaW1nTmFtZSwgJHJldGluYTogZmFsc2UpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIEBpZiAkcmV0aW5hID09IGZhbHNlIHtcclxuICAgICAgICB3aWR0aDogaW1hZ2Utd2lkdGgoJGltZ05hbWUpO1xyXG4gICAgICAgIGhlaWdodDogaW1hZ2UtaGVpZ2h0KCRpbWdOYW1lKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIHdpZHRoOiBjZWlsKGltYWdlLXdpZHRoKCRpbWdOYW1lKSAvIDIpO1xyXG4gICAgICAgIGhlaWdodDogY2VpbChpbWFnZS1oZWlnaHQoJGltZ05hbWUpIC8gMik7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjZWlsKGltYWdlLXdpZHRoKCRpbWdOYW1lKSAvIDIpIGNlaWwoaW1hZ2UtaGVpZ2h0KCRpbWdOYW1lKSAvIDIpO1xyXG4gICAgfVxyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKCRpbWdOYW1lKTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICB0ZXh0LWluZGVudDogLTUwMDAwcHg7XHJcbn1cclxuXHJcbkBtaXhpbiByZXRpbmEtYmFja2dyb3VuZCgkaW1nTmFtZSkge1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogaW1hZ2UtdXJsKCdiZy8jeyRpbWdOYW1lfScpO1xyXG5cclxuICAgIEBpZiBpbWFnZS1leGlzdHMoJ2JnMngvI3skaW1nTmFtZX0nKSB7XHJcbiAgICAgICAgQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxyXG4gICAgICAgICAgICAoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogMy8yKSxcclxuICAgICAgICAgICAgKG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXHJcbiAgICAgICAgICAgIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcclxuICAgICAgICAgICAgKG1pbi1yZXNvbHV0aW9uOiAxNDRkcHB4KSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGltYWdlLXVybCgnYmcyeC8jeyRpbWdOYW1lfScpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IChpbWFnZS13aWR0aCgnYmcyeC8jeyRpbWdOYW1lfScpIC8gMikgKGltYWdlLWhlaWdodCgnYmcyeC8jeyRpbWdOYW1lfScpIC8gMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gbGF5b3V0LWxpc3Qge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbkBtaXhpbiBidXR0b24tcmVzZXQge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG5AbWl4aW4gc3Itb25seSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMXB4O1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgY2xpcC1wYXRoOiBpbnNldCg1MCUpO1xyXG4gICAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG5AbWl4aW4gYnAoJGJwLCAkcnVsZTogbWluLXdpZHRoKSB7XHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoI3skcnVsZX06IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LXNpemVzKCkge1xyXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICR0ZXh0LXNpemVzIHtcclxuICAgICAgICBAaW5jbHVkZSB0ZXh0LXNpemUoJGNsYXNzTmFtZTogJy50ZXh0LSN7JG5hbWV9JywgJHNpemU6ICRzaXplKTtcclxuICAgIH1cclxuXHJcbiAgICBAZWFjaCAkbmFtZSwgJHJlc29sdXRpb24gaW4gJGJyZWFrcG9pbnRzIHtcclxuICAgICAgICBAaW5jbHVkZSBicCgkbmFtZSkge1xyXG4gICAgICAgICAgICBAZWFjaCAkdGV4dE5hbWUsICRzaXplIGluICR0ZXh0LXNpemVzIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRleHQtc2l6ZSgkY2xhc3NOYW1lOiAnLiN7JG5hbWV9XFxcXDp0ZXh0LSN7JHRleHROYW1lfScsICRzaXplOiAkc2l6ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB0ZXh0LXNpemUoJGNsYXNzTmFtZSwgJHNpemUpIHtcclxuICAgICN7JGNsYXNzTmFtZX0ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJHNpemU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBhc3BlY3QtcmF0aW9zKCkge1xyXG4gICAgQGVhY2ggJG5hbWUsICRwZXJjZW50YWdlIGluICRhc3BlY3QtcmF0aW9zIHtcclxuICAgICAgICAuYXNwZWN0LXJhdGlvLSN7JG5hbWV9IHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206ICRwZXJjZW50YWdlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAZWFjaCAkYnBOYW1lLCAkcmVzb2x1dGlvbiBpbiAkYnJlYWtwb2ludHMge1xyXG4gICAgICAgIEBpbmNsdWRlIGJwKCRicE5hbWUpIHtcclxuICAgICAgICAgICAgQGVhY2ggJG5hbWUsICRwZXJjZW50YWdlIGluICRhc3BlY3QtcmF0aW9zIHtcclxuICAgICAgICAgICAgICAgIC4jeyRicE5hbWV9XFw6YXNwZWN0LXJhdGlvLSN7JG5hbWV9IHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHBlcmNlbnRhZ2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBiYWNrZ3JvdW5kLWNvbG9ycygpIHtcclxuICAgIEBlYWNoICRuYW1lLCAkc3R5bGUgaW4gJGNvbG9ycyB7XHJcbiAgICAgICAgLmJnLSN7JG5hbWV9IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0eWxlO1xyXG4gICAgICAgICAgICBjb2xvcjogY29sb3ItY29udHJhc3QoJHN0eWxlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBiYWNrZ3JvdW5kLWdyYWRpZW50cygpIHtcclxuICAgIEBlYWNoICRuYW1lLCAkZ3JhZGllbnQgaW4gJGdyYWRpZW50cyB7XHJcbiAgICAgICAgJGNvbG9yOiBnZXRHcmFkaWVudEZhbGxiYWNrKCRuYW1lKTtcclxuXHJcbiAgICAgICAgLmJnLWdyYWRpZW50LSN7JG5hbWV9IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogJGdyYWRpZW50O1xyXG4gICAgICAgICAgICBjb2xvcjogY29sb3ItY29udHJhc3QoJGNvbG9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB2aXNpYmlsaXR5KCR0eXBlOiAnYmxvY2snKSB7XHJcbiAgICBAZWFjaCAkbmFtZSwgJHJlc29sdXRpb24gaW4gJGJyZWFrcG9pbnRzIHtcclxuICAgICAgICBAaW5jbHVkZSBicCgkbmFtZSkge1xyXG4gICAgICAgICAgICAuI3skbmFtZX1cXDojeyR0eXBlfSB7XHJcbiAgICAgICAgICAgICAgICBAaWYoJHR5cGUgPT0gXCJoaWRkZW5cIikge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAjeyR0eXBlfTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGN1c3RvbS10b2dnbGUoXHJcbiAgICAkY2xhc3NOYW1lOiAnLmN1c3RvbS10b2dnbGUnLFxyXG4gICAgJGlucHV0UGFkZGluZzogM3B4LFxyXG4gICAgJHdpZHRoOiA1ZW0sXHJcbiAgICAkYmFja2dyb3VuZENvbG9yOiAnI2VmZWZlZicsXHJcbiAgICAkdG9nZ2xlQ29sb3I6ICcjNTc1NzU3J1xyXG4pIHtcclxuICAgICN7JGNsYXNzTmFtZX0ge1xyXG4gICAgICAgICZfX2xhYmVsIHtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fcmFkaW8ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICAgICAmOmNoZWNrZWQge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYgKyAmOmNoZWNrZWQgfiAuY3VzdG9tLXRvZ2dsZV9fc3dpdGNoZXIge1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSArICN7JGlucHV0UGFkZGluZ30pO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm5vdCg6Y2hlY2tlZCkge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX193cmFwcGVyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1iYXNlU2l6ZSk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAoJHdpZHRoIC8gMik7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICgkd2lkdGggLyAyKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fc3dpdGNoZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6ICRpbnB1dFBhZGRpbmc7XHJcbiAgICAgICAgICAgIGxlZnQ6ICRpbnB1dFBhZGRpbmc7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAjeygkaW5wdXRQYWRkaW5nICogMil9KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeygkaW5wdXRQYWRkaW5nICogMil9KTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1NzU3NTc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19iYWNrZ3JvdW5kIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAoJHdpZHRoIC8gMik7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogc3VwcG9ydCBXaW5kb3dzIEhpZ2ggQ29udHJhc3QgTW9kZS4gQ3JlZGl0OiBBZHJpYW4gUm9zZWxsaSBodHRwczovL3R3aXR0ZXIuY29tL2FhcmRyaWFuL3N0YXR1cy8xMDIxMzcyMTM5OTkwMTM0Nzg1ICovXHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcclxuICAgICAgICAgICAgJl9fc3dpdGNoZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2luZG93VGV4dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuSU1QT1JUQU5UOiBUaGlzIGZpbGUgaXMgZ2VuZXJhdGVkIGJ5IFNhc3MuIERvIG5vdCBtb2RpZnkgdGhpcyBmaWxlIGRpcmVjdGx5LlxyXG5cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIFNpemVzICovXG4vKiBGb250cyAqL1xuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keTpub3QoLnJlZGVzaWduLTIwMjItaGVhZGVyKSB7XG4gICAgcGFkZGluZy10b3A6IDEzNXB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYm9keTpub3QoLnJlZGVzaWduLTIwMjItaGVhZGVyKSB7XG4gICAgcGFkZGluZy10b3A6IDYwcHg7XG4gIH1cbn1cblxuYSB7XG4gIGNvbG9yOiAjMkQ3MkY3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjZmY2NjMxO1xufVxuXG5hOmhvdmVyIHtcbiAgY29sb3I6ICMwMDAwZWU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5kbCBkdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgd2lkdGg6IDUwJTtcbn1cblxuZGwgZGQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiA1MCU7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbmhyIHtcbiAgaGVpZ2h0OiA0cHg7XG4gIG1hcmdpbjogMzJweCAwO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgI2ZmNjYzMyAwJSwgI2ZmY2MwMCAxMDAlKTtcbn1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jbGVhcmZpeCwgLmxheW91dCwgLndyYXBwZXIsIGZvcm0gLml0ZW0sXG4uZm9ybSAuaXRlbSwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIsIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2VzcywgYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLnBhcnRuZXItZm9ybS1jb250YWluZXIsIGFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tc3VjY2VzcyB7XG4gICp6b29tOiAxO1xufVxuXG4uY2xlYXJmaXg6YmVmb3JlLCAubGF5b3V0OmJlZm9yZSwgLndyYXBwZXI6YmVmb3JlLCBmb3JtIC5pdGVtOmJlZm9yZSxcbi5mb3JtIC5pdGVtOmJlZm9yZSwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXI6YmVmb3JlLCBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3M6YmVmb3JlLCBhcnRpY2xlLnBhcnRuZXItZm9ybSAucGFydG5lci1mb3JtLWNvbnRhaW5lcjpiZWZvcmUsIGFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tc3VjY2VzczpiZWZvcmUsIC5jbGVhcmZpeDphZnRlciwgLmxheW91dDphZnRlciwgLndyYXBwZXI6YWZ0ZXIsIGZvcm0gLml0ZW06YWZ0ZXIsXG4uZm9ybSAuaXRlbTphZnRlciwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXI6YWZ0ZXIsIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2VzczphZnRlciwgYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLnBhcnRuZXItZm9ybS1jb250YWluZXI6YWZ0ZXIsIGFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tc3VjY2VzczphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnJztcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi5jbGVhcmZpeDphZnRlciwgLmxheW91dDphZnRlciwgLndyYXBwZXI6YWZ0ZXIsIGZvcm0gLml0ZW06YWZ0ZXIsXG4uZm9ybSAuaXRlbTphZnRlciwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXI6YWZ0ZXIsIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2VzczphZnRlciwgYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLnBhcnRuZXItZm9ybS1jb250YWluZXI6YWZ0ZXIsIGFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tc3VjY2VzczphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmFjdGlvbiB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucGFjLWljb24ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wYWMtaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLmdyZWNhcHRjaGEtYmFkZ2Uge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZ3JlY2FwdGNoYS1iYWRnZSBpZnJhbWUge1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uZ3JlY2FwdGNoYS1sb2dvIHtcbiAgd2lkdGg6IDI1NXB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTY4cHgpIHtcbiAgLnhzXFw6YmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zbVxcOmJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1kXFw6YmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAubGdcXDpibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gIC54bFxcOmJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NjhweCkge1xuICAueHNcXDpmbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zbVxcOmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5tZFxcOmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5sZ1xcOmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gIC54bFxcOmZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTY4cHgpIHtcbiAgLnhzXFw6aGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zbVxcOmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1kXFw6aGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAubGdcXDpoaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gIC54bFxcOmhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKlxyXG4gKiBHcmlkIFN5c3RlbVxyXG4gKlxyXG4gKiBUaGlzIGlzIGEgZ3JpZCBzeXN0ZW0gYmFzZWQgb2ZmIG9mIGZsb2F0cyBhbmQgQ1NTIGNhbGMoKSB0byBjYWxjdWxhdGUgcGVyY2VudGFnZS1iYXNlZCB3aWR0aHMgYW5kIG1hcmdpbnMuIFRoaXMgYWxsb3dzIHRoZSBncmlkIGNvbHVtbnMgdG8gYmUgZmxleGlibGUgdG8gYSByZXNwb25zaXZlIHZpZXdwb3J0LCB3aXRoIGZpeGVkIGdhcHMgYmV0d2VlbiBlYWNoIGNvbHVtbi4gR3JpZHMgY2FuIGFsc28gYmUgbmVzdGVkIGFuZCBzdGlsbCBtYWludGFpbiB0aGUgY29uc2lzdGVudCBnYXAgZm9yIGNvbnNpc3RlbnQgbGF5b3V0LlxyXG4gKlxyXG4gKiBTZXR1cDpcclxuICpcclxuICogU2V0IHVwIHRoZSBncmlkIHZhcmlhYmxlcyB0byBzcGVjaWZ5IHRoZSB0b3RhbCBudW1iZXIgb2YgY29sdW1ucywgYXMgd2VsbCBhcyB0aGUgZ2FwIHNpemUgYmV0d2VlbiBlYWNoIGNvbHVtbi5cclxuICpcclxuICogVXNhZ2U6XHJcbiAqIFxyXG4gKiBAaW5jbHVkZSBncmlkLWNvbHVtbnMoJG51bSwgJG1heF9jb2x1bW5zLCAkY29sdW1uX2dhcClcclxuICogICAgIFRoaXMgaXMgdXNlZCB0byBzZXQgYSBjb2x1bW4gYW5kIHNwZWNpZnkgaG93IG1hbnkgY29sdW1ucyBpdCBzaG91bGQgc3BhblxyXG4gKiBcclxuICogICBPcHRpb25zXHJcbiAqICAgICAkbnVtIFtyZXF1aXJlZF0gLT4gVG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgdG8gc3BhblxyXG4gKiAgICAgJG1heF9jb2x1bW5zIFtvcHRpb25hbF0gLT4gRGVmYXVsdHMgdG8gdGhlIGdsb2JhbCB2YXJpYWJsZSwgYnV0IGNhbiBiZSBzZXQgaWYgeW91IHdhbnQgdG8gZXN0YWJsaXNoIGEgbmV3IGdyaWQgY29udGV4dFxyXG4gKiAgICAgJGNvbHVtbl9nYXAgW29wdGlvbmFsXSAtPiBEZWZhdWx0cyB0byB0aGUgZ2xvYmFsIHZhcmlhYmxlLCBidXQgY2FuIGJlIHNldCBpZiB5b3Ugd2FudCB0byBlc3RhYmxpc2ggYSBuZXcgY29sdW1uIGdhcFxyXG4gKlxyXG4gKiBAaW5jbHVkZSBncmlkLXdpZHRoKCRudW0sICRtYXhfY29sdW1ucywgJGNvbHVtbl9nYXApXHJcbiAqICAgICBUaGlzIGlzIHVzZWQgdG8gcmV0dXJuIGEgd2lkdGggYmFzZWQgb24gdGhlIG51bWJlciBvZiBjb2x1bW5zIHNwZWNpZmllZFxyXG4gKlxyXG4gKiAgIE9wdGlvbnNcclxuICogICAgICRudW0gW3JlcXVpcmVkXSAtPiBUb3RhbCBudW1iZXIgb2YgY29sdW1ucyB0byBzcGFuXHJcbiAqICAgICAkbWF4X2NvbHVtbnMgW29wdGlvbmFsXSAtPiBEZWZhdWx0cyB0byB0aGUgZ2xvYmFsIHZhcmlhYmxlLCBidXQgY2FuIGJlIHNldCBpZiB5b3Ugd2FudCB0byBlc3RhYmxpc2ggYSBuZXcgZ3JpZCBjb250ZXh0XHJcbiAqICAgICAkY29sdW1uX2dhcCBbb3B0aW9uYWxdIC0+IERlZmF1bHRzIHRvIHRoZSBnbG9iYWwgdmFyaWFibGUsIGJ1dCBjYW4gYmUgc2V0IGlmIHlvdSB3YW50IHRvIGVzdGFibGlzaCBhIG5ldyBjb2x1bW4gZ2FwXHJcbiAqXHJcbiAqIC9cclxuXHJcbi8qIC0tLSBHcmlkIHZhcmlhYmxlcyAtLS0qL1xuLnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cblxuLypcclxuLmNvbCB7XHJcbiAgICBAaW5jbHVkZSBjb2w7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbHVtbl9nYXAgIWltcG9ydGFudDtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn0qL1xuLyogRGVidWcgKi9cbi5ncmlkLWRlYnVnIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTM2MHB4O1xuICBtYXJnaW4tbGVmdDogLTY4MHB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmdyaWQtZGVidWcgLmNvbCB7XG4gIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiAxKSArIDBweCAtIC4xcHgpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDAsIDAsIDAuMSk7XG59XG5cbi5ncmlkLWRlYnVnIC5jb2w6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4uZmxleC1ncmlkIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDAgLTEwcHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmZsZXgtZ3JpZCA+IFtjbGFzcyo9XCJpcy1cIl0ge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIG1pbi13aWR0aDogMDtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uZmxleC1ncmlkID4gW2NsYXNzKj1cImlzLVwiXTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZsZXgtZ3JpZCAuaXMtZnVsbCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmZsZXgtZ3JpZCAuaXMtMVxcLzIge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4uZmxleC1ncmlkIC5pcy0xXFwvMyB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xufVxuXG4uZmxleC1ncmlkIC5pcy0yXFwvMyB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDY2LjY2NjYlO1xuICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xufVxuXG4uZmxleC1ncmlkIC5pcy0xXFwvNCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5mbGV4LWdyaWQgLmlzLTNcXC80IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLmZsZXgtZ3JpZCAuaXMtMVxcLzYge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAxNi42NjY2NiU7XG4gIG1heC13aWR0aDogMTYuNjY2NjYlO1xufVxuXG4uZmxleC1ncmlkIC5pcy01XFwvNiB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xufVxuXG4uZmxleC1ncmlkIC5pcy0xXFwvNSB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDIwJTtcbiAgbWF4LXdpZHRoOiAyMCU7XG59XG5cbi5mbGV4LWdyaWQgLmlzLTJcXC81IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogNDAlO1xuICBtYXgtd2lkdGg6IDQwJTtcbn1cblxuLmZsZXgtZ3JpZCAuaXMtM1xcLzUge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA2MCU7XG4gIG1heC13aWR0aDogNjAlO1xufVxuXG4uZmxleC1ncmlkIC5pcy00XFwvNSB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDgwJTtcbiAgbWF4LXdpZHRoOiA4MCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU2OHB4KSB7XG4gIC5mbGV4LWdyaWQgLnhzXFw6aXMtZnVsbCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhzXFw6aXMtMVxcLzIge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueHNcXDppcy0xXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueHNcXDppcy0yXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjYlO1xuICAgIG1heC13aWR0aDogNjYuNjY2NiU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueHNcXDppcy0xXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAuZmxleC1ncmlkIC54c1xcOmlzLTNcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhzXFw6aXMtMVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NiU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NiU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueHNcXDppcy01XFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMyU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueHNcXDppcy0xXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAuZmxleC1ncmlkIC54c1xcOmlzLTJcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNDAlO1xuICAgIG1heC13aWR0aDogNDAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhzXFw6aXMtM1xcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueHNcXDppcy00XFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmxleC1ncmlkIC5zbVxcOmlzLWZ1bGwge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuZmxleC1ncmlkIC5zbVxcOmlzLTFcXC8yIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnNtXFw6aXMtMVxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnNtXFw6aXMtMlxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnNtXFw6aXMtMVxcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAuc21cXDppcy0zXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAuZmxleC1ncmlkIC5zbVxcOmlzLTFcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjYlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnNtXFw6aXMtNVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnNtXFw6aXMtMVxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAuc21cXDppcy0yXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxuICAuZmxleC1ncmlkIC5zbVxcOmlzLTNcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnNtXFw6aXMtNFxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4MCU7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5mbGV4LWdyaWQgLm1kXFw6aXMtZnVsbCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLm1kXFw6aXMtMVxcLzIge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubWRcXDppcy0xXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubWRcXDppcy0yXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjYlO1xuICAgIG1heC13aWR0aDogNjYuNjY2NiU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubWRcXDppcy0xXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAuZmxleC1ncmlkIC5tZFxcOmlzLTNcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5mbGV4LWdyaWQgLm1kXFw6aXMtMVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NiU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NiU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubWRcXDppcy01XFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMyU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubWRcXDppcy0xXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAuZmxleC1ncmlkIC5tZFxcOmlzLTJcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNDAlO1xuICAgIG1heC13aWR0aDogNDAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLm1kXFw6aXMtM1xcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubWRcXDppcy00XFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjgwcHgpIHtcbiAgLmZsZXgtZ3JpZCAubGdcXDppcy1mdWxsIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubGdcXDppcy0xXFwvMiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAuZmxleC1ncmlkIC5sZ1xcOmlzLTFcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgfVxuICAuZmxleC1ncmlkIC5sZ1xcOmlzLTJcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NiU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbiAgfVxuICAuZmxleC1ncmlkIC5sZ1xcOmlzLTFcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5mbGV4LWdyaWQgLmxnXFw6aXMtM1xcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubGdcXDppcy0xXFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbiAgfVxuICAuZmxleC1ncmlkIC5sZ1xcOmlzLTVcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzJTtcbiAgfVxuICAuZmxleC1ncmlkIC5sZ1xcOmlzLTFcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLmxnXFw6aXMtMlxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAubGdcXDppcy0zXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgfVxuICAuZmxleC1ncmlkIC5sZ1xcOmlzLTRcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODAlO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNjBweCkge1xuICAuZmxleC1ncmlkIC54bFxcOmlzLWZ1bGwge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuZmxleC1ncmlkIC54bFxcOmlzLTFcXC8yIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhsXFw6aXMtMVxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhsXFw6aXMtMlxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhsXFw6aXMtMVxcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueGxcXDppcy0zXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAuZmxleC1ncmlkIC54bFxcOmlzLTFcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjYlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhsXFw6aXMtNVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhsXFw6aXMtMVxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLmZsZXgtZ3JpZCAueGxcXDppcy0yXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxuICAuZmxleC1ncmlkIC54bFxcOmlzLTNcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIC5mbGV4LWdyaWQgLnhsXFw6aXMtNFxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4MCU7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmZsZXgtZ3JpZCA+IFtjbGFzcyo9XCJpcy1cIl0ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLmxheW91dC1jb2x1bW5zIHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGF5b3V0LWNvbHVtbnMgPiBzZWN0aW9uIHtcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gNjA1cHgpIC8gMTIpICogOSkgKyA0NDBweCAtIC4xcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDU1cHggIWltcG9ydGFudDtcbiAgfVxuICAubGF5b3V0LWNvbHVtbnMgPiBzZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5sYXlvdXQtY29sdW1ucyA+IGFzaWRlIHtcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gNjA1cHgpIC8gMTIpICogMykgKyAxMTBweCAtIC4xcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDU1cHggIWltcG9ydGFudDtcbiAgfVxuICAubGF5b3V0LWNvbHVtbnMgPiBhc2lkZTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2l0ZS13cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiAxOTMwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uc2l0ZS13cmFwcGVyLmV4cGVyaWVuY2UtZWRpdG9yIC5zaXRlLWhhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAtMTMwcHg7XG59XG5cbi53cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiAxMzYwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIDIwcHg7XG59XG5cbi53cmFwcGVyIC53cmFwcGVyLFxuLndyYXBwZXIgLndyYXBwZXItbGcsXG4ud3JhcHBlciAud3JhcHBlci1tZCxcbi53cmFwcGVyIC53cmFwcGVyLXNtIHtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZ3JpZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDEwcHg7XG4gICAgbWFyZ2luOiAtMTBweDtcbiAgfVxuICAuZ3JpZCAuY29sIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuICAuZ3JpZC50aHJlZSAuY29sIHtcbiAgICB3aWR0aDogMzMuMzMlO1xuICB9XG4gIC5ncmlkLmZvdXIgLmNvbCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuZ3JpZC5ib3JkZXIgLmNvbCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjY2NjO1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgfVxuICAuZ3JpZC5ib3JkZXIgLmNvbDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5ncmlkLmJvcmRlciAuY29sOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLmdyaWQuYmcgLmNvbCB7XG4gICAgYmFja2dyb3VuZDogI2YzZjNmMztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbi53cmFwcGVyLWxnLCAud3JhcHBlci1tZCwgLndyYXBwZXItc20ge1xuICBwYWRkaW5nOiAwIDIwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC53cmFwcGVyLWxnLCAud3JhcHBlci1tZCwgLndyYXBwZXItc20ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi53cmFwcGVyLWxnIC53cmFwcGVyLCAud3JhcHBlci1tZCAud3JhcHBlciwgLndyYXBwZXItc20gLndyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAud3JhcHBlci1sZyB7XG4gICAgbWF4LXdpZHRoOiAxMjgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLndyYXBwZXItbWQge1xuICAgIG1heC13aWR0aDogMTAyNHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC53cmFwcGVyLXNtIHtcbiAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICB9XG59XG5cbi8qIGh0dHA6Ly93d3cuZm9udHNwcmluZy5jb20vYmxvZy9mdXJ0aGVyLWhhcmRlbmluZy1vZi10aGUtYnVsbGV0cHJvb2Ytc3ludGF4ICovXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IGFjdW1pbi1wcm8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogYWN1bWluLXBybywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiBhY3VtaW4tcHJvLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMTBweCAwO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbnAge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICBsaW5lLWhlaWdodDogMS4xMjVlbTtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDIxcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiA4cHg7XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTUzODQ2MTVlbTtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEzNjM2MzY0ZW07XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgfVxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDhweDtcbiAgfVxuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG59XG5cbnVsIHVsLFxudWwgb2wsXG5vbCB1bCxcbm9sIG9sIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4udGV4dC0yeHMge1xuICBmb250LXNpemU6IDEwcHg7XG59XG5cbi50ZXh0LXhzIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4udGV4dC1zbSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnRleHQtYmFzZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnRleHQtbWQge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi50ZXh0LWxnIHtcbiAgZm9udC1zaXplOiAyNHB4O1xufVxuXG4udGV4dC14bCB7XG4gIGZvbnQtc2l6ZTogMzJweDtcbn1cblxuLnRleHQtMnhsIHtcbiAgZm9udC1zaXplOiA0MHB4O1xufVxuXG4udGV4dC0zeGwge1xuICBmb250LXNpemU6IDQ4cHg7XG59XG5cbi50ZXh0LTR4bCB7XG4gIGZvbnQtc2l6ZTogNTZweDtcbn1cblxuLnRleHQtNXhsIHtcbiAgZm9udC1zaXplOiA2NHB4O1xufVxuXG4udGV4dC02eGwge1xuICBmb250LXNpemU6IDcycHg7XG59XG5cbi50ZXh0LTd4bCB7XG4gIGZvbnQtc2l6ZTogODhweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTY4cHgpIHtcbiAgLnhzXFw6dGV4dC0yeHMge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgfVxuICAueHNcXDp0ZXh0LXhzIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLnhzXFw6dGV4dC1zbSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC54c1xcOnRleHQtYmFzZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIC54c1xcOnRleHQtbWQge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICAueHNcXDp0ZXh0LWxnIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLnhzXFw6dGV4dC14bCB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG4gIC54c1xcOnRleHQtMnhsIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gIH1cbiAgLnhzXFw6dGV4dC0zeGwge1xuICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgfVxuICAueHNcXDp0ZXh0LTR4bCB7XG4gICAgZm9udC1zaXplOiA1NnB4O1xuICB9XG4gIC54c1xcOnRleHQtNXhsIHtcbiAgICBmb250LXNpemU6IDY0cHg7XG4gIH1cbiAgLnhzXFw6dGV4dC02eGwge1xuICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgfVxuICAueHNcXDp0ZXh0LTd4bCB7XG4gICAgZm9udC1zaXplOiA4OHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zbVxcOnRleHQtMnhzIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgLnNtXFw6dGV4dC14cyB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG4gIC5zbVxcOnRleHQtc20ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuICAuc21cXDp0ZXh0LWJhc2Uge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAuc21cXDp0ZXh0LW1kIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgLnNtXFw6dGV4dC1sZyB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIC5zbVxcOnRleHQteGwge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgfVxuICAuc21cXDp0ZXh0LTJ4bCB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICB9XG4gIC5zbVxcOnRleHQtM3hsIHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gIH1cbiAgLnNtXFw6dGV4dC00eGwge1xuICAgIGZvbnQtc2l6ZTogNTZweDtcbiAgfVxuICAuc21cXDp0ZXh0LTV4bCB7XG4gICAgZm9udC1zaXplOiA2NHB4O1xuICB9XG4gIC5zbVxcOnRleHQtNnhsIHtcbiAgICBmb250LXNpemU6IDcycHg7XG4gIH1cbiAgLnNtXFw6dGV4dC03eGwge1xuICAgIGZvbnQtc2l6ZTogODhweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1kXFw6dGV4dC0yeHMge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgfVxuICAubWRcXDp0ZXh0LXhzIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLm1kXFw6dGV4dC1zbSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG4gIC5tZFxcOnRleHQtYmFzZSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG4gIC5tZFxcOnRleHQtbWQge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICAubWRcXDp0ZXh0LWxnIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgLm1kXFw6dGV4dC14bCB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG4gIC5tZFxcOnRleHQtMnhsIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gIH1cbiAgLm1kXFw6dGV4dC0zeGwge1xuICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgfVxuICAubWRcXDp0ZXh0LTR4bCB7XG4gICAgZm9udC1zaXplOiA1NnB4O1xuICB9XG4gIC5tZFxcOnRleHQtNXhsIHtcbiAgICBmb250LXNpemU6IDY0cHg7XG4gIH1cbiAgLm1kXFw6dGV4dC02eGwge1xuICAgIGZvbnQtc2l6ZTogNzJweDtcbiAgfVxuICAubWRcXDp0ZXh0LTd4bCB7XG4gICAgZm9udC1zaXplOiA4OHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAubGdcXDp0ZXh0LTJ4cyB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICB9XG4gIC5sZ1xcOnRleHQteHMge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICAubGdcXDp0ZXh0LXNtIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbiAgLmxnXFw6dGV4dC1iYXNlIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLmxnXFw6dGV4dC1tZCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG4gIC5sZ1xcOnRleHQtbGcge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxuICAubGdcXDp0ZXh0LXhsIHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gIH1cbiAgLmxnXFw6dGV4dC0yeGwge1xuICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgfVxuICAubGdcXDp0ZXh0LTN4bCB7XG4gICAgZm9udC1zaXplOiA0OHB4O1xuICB9XG4gIC5sZ1xcOnRleHQtNHhsIHtcbiAgICBmb250LXNpemU6IDU2cHg7XG4gIH1cbiAgLmxnXFw6dGV4dC01eGwge1xuICAgIGZvbnQtc2l6ZTogNjRweDtcbiAgfVxuICAubGdcXDp0ZXh0LTZ4bCB7XG4gICAgZm9udC1zaXplOiA3MnB4O1xuICB9XG4gIC5sZ1xcOnRleHQtN3hsIHtcbiAgICBmb250LXNpemU6IDg4cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gIC54bFxcOnRleHQtMnhzIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgLnhsXFw6dGV4dC14cyB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG4gIC54bFxcOnRleHQtc20ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuICAueGxcXDp0ZXh0LWJhc2Uge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAueGxcXDp0ZXh0LW1kIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbiAgLnhsXFw6dGV4dC1sZyB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIC54bFxcOnRleHQteGwge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgfVxuICAueGxcXDp0ZXh0LTJ4bCB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICB9XG4gIC54bFxcOnRleHQtM3hsIHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gIH1cbiAgLnhsXFw6dGV4dC00eGwge1xuICAgIGZvbnQtc2l6ZTogNTZweDtcbiAgfVxuICAueGxcXDp0ZXh0LTV4bCB7XG4gICAgZm9udC1zaXplOiA2NHB4O1xuICB9XG4gIC54bFxcOnRleHQtNnhsIHtcbiAgICBmb250LXNpemU6IDcycHg7XG4gIH1cbiAgLnhsXFw6dGV4dC03eGwge1xuICAgIGZvbnQtc2l6ZTogODhweDtcbiAgfVxufVxuXG4uc3Itb25seSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50YWJsZSB0aCwgdGFibGUgdGQge1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREFEQURBO1xufVxuXG50YWJsZSB0aCB7XG4gIGNvbG9yOiAjZTg4MjViO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50YWJsZSB0aGVhZCB0aCB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTg4MjViO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSwgaW5wdXRbdHlwZT1cImRhdGVcIl0sIGlucHV0W3R5cGU9XCJtb250aFwiXSwgaW5wdXRbdHlwZT1cInRpbWVcIl0sIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIGxpbmVhciAwLjJzLCBib3gtc2hhZG93IGxpbmVhciAwLjJzO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyNTBweDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSwgaW5wdXRbdHlwZT1cIm51bWJlclwiXSwgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBpbnB1dFt0eXBlPVwibW9udGhcIl0sIGlucHV0W3R5cGU9XCJ0aW1lXCJdLCBpbnB1dFt0eXBlPVwid2Vla1wiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwidXJsXCJdLCBpbnB1dFt0eXBlPVwidGVsXCJdLCBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gIHRleHRhcmVhLFxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cywgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cywgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLCBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cywgaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cywgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMsXG5zZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICNhY2FjYWM7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIHBhZGRpbmc6IDAgMjVweCAwIDVweDtcbn1cblxudGV4dGFyZWEge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMDBweDtcbn1cblxuc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHRleHQtaW5kZW50OiAwLjAxcHg7XG4gIHRleHQtb3ZlcmZsb3c6ICcnO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5sdC1pZTEwIHNlbGVjdCB7XG4gIHBhZGRpbmc6IDAgMCAwIDVweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbmJ1dHRvbixcbmEuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAxNXB4IDUwcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGJveC1zaGFkb3c6IDBweCA4cHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IGFjdW1pbi1wcm8tY29uZGVuc2VkLCBhY3VtaW4tcHJvLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5idXR0b24uc2Vjb25kYXJ5LFxuYS5idXR0b24uc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjMzNjY2ZmIDAlLCAjYTU0MmVmIDEwMCUpO1xufVxuXG5idXR0b24uZ29sZGVuLWhvdXIsXG5hLmJ1dHRvbi5nb2xkZW4taG91ciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgI2ZmNjYzMyAwJSwgI2ZmY2MwMCAxMDAlKTtcbn1cblxuYnV0dG9uLmJsdWUtaG91cixcbmEuYnV0dG9uLmJsdWUtaG91ciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgIzMzMzM5OSAwJSwgIzMzY2NmZiAxMDAlKTtcbn1cblxuYnV0dG9uLmF1cm9yYSxcbmEuYnV0dG9uLmF1cm9yYSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgIzMzY2NmZiAwJSwgI2E1NDJlZiAxMDAlKTtcbn1cblxuYnV0dG9uLnBsZW4tYWlyLFxuYS5idXR0b24ucGxlbi1haXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICMwNGE1ZmYgMCUsICM2Y2ZmYTkgMTAwJSk7XG59XG5cbmJ1dHRvbi5ncmVlbi1zaGFkZXMsXG5hLmJ1dHRvbi5ncmVlbi1zaGFkZXMge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICMxNjQ4MWEgMCUsICNhNWUyMjYgMTAwJSk7XG59XG5cbmJ1dHRvbi5zdG9uZS13aGl0ZSxcbmEuYnV0dG9uLnN0b25lLXdoaXRlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIwMS4xOGRlZywgI2ZmZiA0OSUsICNiM2IzYjMgMTQxJSk7XG59XG5cbmJ1dHRvbjpkaXNhYmxlZCxcbmEuYnV0dG9uOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xufVxuXG5bcm9sZT0nYnV0dG9uJ10ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5sb2FkaW5nU3Bpbm5lciB7XG4gIGJvcmRlcjogNHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBvcGFjaXR5OiAxO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGFuaW1hdGlvbjogbG9hZGluZ1NwaW5uZXIgLjdzIGluZmluaXRlIGxpbmVhcjtcbiAgLXdlYmtpdC1hbmltYXRpb246IGxvYWRpbmdTcGlubmVyIC43cyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbkBrZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuZm9ybSBkaXYudmFsaWRhdGlvblN1bW1hcnksXG4uZm9ybSBkaXYudmFsaWRhdGlvblN1bW1hcnkge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogI2JlMzQzODtcbn1cblxuZm9ybSBkaXYudmFsaWRhdGlvblN1bW1hcnkgdWwsXG4uZm9ybSBkaXYudmFsaWRhdGlvblN1bW1hcnkgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmZvcm0gLml0ZW0sXG4uZm9ybSAuaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuZm9ybSAuaXRlbSA+IGxhYmVsLFxuLmZvcm0gLml0ZW0gPiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuZm9ybSAuaXRlbSA+IGxhYmVsIHNwYW4sXG4uZm9ybSAuaXRlbSA+IGxhYmVsIHNwYW4ge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5mb3JtIC5pdGVtIGlucHV0LFxuLmZvcm0gLml0ZW0gaW5wdXQge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbmZvcm0gLml0ZW0gPiB1bCxcbi5mb3JtIC5pdGVtID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmZvcm0gLml0ZW0uaG9yaXpvbnRhbCA+IGxhYmVsLFxuLmZvcm0gLml0ZW0uaG9yaXpvbnRhbCA+IGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuZm9ybSAuaXRlbS5mbC1lbmFibGVkLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuZm9ybSAuaXRlbS5mbC1lbmFibGVkID4gbGFiZWwsXG5mb3JtIC5pdGVtLmZsLWVuYWJsZWQgLmxhYmVsLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCA+IGxhYmVsLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCAubGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgbGVmdDogMXB4O1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGNvbG9yOiAjYWNhY2FjO1xuICBvcGFjaXR5OiAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB6LWluZGV4OiAyO1xufVxuXG5mb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cInRleHRcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cInRpbWVcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwid2Vla1wiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwidGVsXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuZm9ybSAuaXRlbS5mbC1lbmFibGVkIHRleHRhcmVhLFxuZm9ybSAuaXRlbS5mbC1lbmFibGVkIHNlbGVjdCxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkIHRleHRhcmVhLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZCBzZWxlY3Qge1xuICBwYWRkaW5nLXRvcDogMTdweDtcbiAgcGFkZGluZy1ib3R0b206IDE3cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwidGV4dFwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cImRhdGVcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJ0aW1lXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwidXJsXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSB0ZXh0YXJlYSxcbmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgc2VsZWN0LFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgdGV4dGFyZWEsXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFjdGl2ZSBzZWxlY3Qge1xuICBwYWRkaW5nLXRvcDogMjRweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgPiBsYWJlbCxcbmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgLmxhYmVsLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hY3RpdmUgPiBsYWJlbCxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYWN0aXZlIC5sYWJlbCB7XG4gIHRvcDogMTBweDtcbiAgb3BhY2l0eTogMTtcbn1cblxuZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cInRleHRcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cIm51bWJlclwiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIGlucHV0W3R5cGU9XCJkYXRlXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwibW9udGhcIl0sIGZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIGlucHV0W3R5cGU9XCJ0aW1lXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwid2Vla1wiXSwgZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwidXJsXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwidGVsXCJdLCBmb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSB0ZXh0YXJlYSxcbmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIHNlbGVjdCxcbmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlID4gbGFiZWwsXG5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSAubGFiZWwsXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgaW5wdXRbdHlwZT1cInVybFwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLmZvcm0gLml0ZW0uZmwtZW5hYmxlZC5mbC1hbmltYXRlIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSB0ZXh0YXJlYSxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSBzZWxlY3QsXG4uZm9ybSAuaXRlbS5mbC1lbmFibGVkLmZsLWFuaW1hdGUgPiBsYWJlbCxcbi5mb3JtIC5pdGVtLmZsLWVuYWJsZWQuZmwtYW5pbWF0ZSAubGFiZWwge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgZm9ybSAuZ3JvdXAsXG4gIC5mb3JtIC5ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDAgLTEwcHg7XG4gIH1cbiAgZm9ybSAuZ3JvdXAgLml0ZW0sXG4gIC5mb3JtIC5ncm91cCAuaXRlbSB7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgZmxleC1iYXNpczogMDtcbiAgfVxuICBmb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwidGV4dFwiXSwgZm9ybSAuZ3JvdXAgLml0ZW0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBmb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLCBmb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLCBmb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sIGZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSwgZm9ybSAuZ3JvdXAgLml0ZW0gaW5wdXRbdHlwZT1cImRhdGVcIl0sIGZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJtb250aFwiXSwgZm9ybSAuZ3JvdXAgLml0ZW0gaW5wdXRbdHlwZT1cInRpbWVcIl0sIGZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLCBmb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgZm9ybSAuZ3JvdXAgLml0ZW0gdGV4dGFyZWEsXG4gIGZvcm0gLmdyb3VwIC5pdGVtIHNlbGVjdCxcbiAgLmZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAuZm9ybSAuZ3JvdXAgLml0ZW0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAuZm9ybSAuZ3JvdXAgLml0ZW0gaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgLmZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gIC5mb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gIC5mb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5mb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgLmZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgLmZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICAuZm9ybSAuZ3JvdXAgLml0ZW0gaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gIC5mb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIC5mb3JtIC5ncm91cCAuaXRlbSBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAuZm9ybSAuZ3JvdXAgLml0ZW0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgLmZvcm0gLmdyb3VwIC5pdGVtIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgLmZvcm0gLmdyb3VwIC5pdGVtIHRleHRhcmVhLFxuICAuZm9ybSAuZ3JvdXAgLml0ZW0gc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBmb3JtIC5ncm91cCAuaXRlbSAuZ3JvdXAgLml0ZW0sXG4gIC5mb3JtIC5ncm91cCAuaXRlbSAuZ3JvdXAgLml0ZW0ge1xuICAgIG1hcmdpbjogMCAxMHB4O1xuICB9XG59XG5cbmZvcm0gLmJ1dHRvbnMsXG4uZm9ybSAuYnV0dG9ucyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuZm9ybSAuYnV0dG9ucyBidXR0b24sXG5mb3JtIC5idXR0b25zIC5idXR0b24sXG4uZm9ybSAuYnV0dG9ucyBidXR0b24sXG4uZm9ybSAuYnV0dG9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luOiAxMHB4IDAgMCAxMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGZvcm0gLmJ1dHRvbnMgYnV0dG9uLFxuICBmb3JtIC5idXR0b25zIC5idXR0b24sXG4gIC5mb3JtIC5idXR0b25zIGJ1dHRvbixcbiAgLmZvcm0gLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICB9XG59XG5cbmZvcm0gaW5wdXRbdHlwZT0ncmFkaW8nXSxcbmZvcm0gaW5wdXRbdHlwZT0nY2hlY2tib3gnXSxcbi5mb3JtIGlucHV0W3R5cGU9J3JhZGlvJ10sXG4uZm9ybSBpbnB1dFt0eXBlPSdjaGVja2JveCddIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbmZvcm0gLnJhZGlvLWxpc3QsXG5mb3JtIC5jaGVja2JveC1saXN0LFxuLmZvcm0gLnJhZGlvLWxpc3QsXG4uZm9ybSAuY2hlY2tib3gtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuZm9ybSAucmFkaW8tbGlzdCBpbnB1dCxcbmZvcm0gLnJhZGlvLWxpc3QgbGFiZWwsXG5mb3JtIC5jaGVja2JveC1saXN0IGlucHV0LFxuZm9ybSAuY2hlY2tib3gtbGlzdCBsYWJlbCxcbi5mb3JtIC5yYWRpby1saXN0IGlucHV0LFxuLmZvcm0gLnJhZGlvLWxpc3QgbGFiZWwsXG4uZm9ybSAuY2hlY2tib3gtbGlzdCBpbnB1dCxcbi5mb3JtIC5jaGVja2JveC1saXN0IGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5mb3JtIC5yYWRpby1saXN0LmlubGluZSBsaSxcbmZvcm0gLmNoZWNrYm94LWxpc3QuaW5saW5lIGxpLFxuLmZvcm0gLnJhZGlvLWxpc3QuaW5saW5lIGxpLFxuLmZvcm0gLmNoZWNrYm94LWxpc3QuaW5saW5lIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbmZvcm0gc3Bhbi5lcnJvcixcbi5mb3JtIHNwYW4uZXJyb3Ige1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmbG9hdDogbGVmdDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgYmFja2dyb3VuZDogI2VmMzAzOTtcbiAgcGFkZGluZzogMTJweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG5mb3JtIHNwYW4uZXJyb3I6OmJlZm9yZSxcbi5mb3JtIHNwYW4uZXJyb3I6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDUwJSAtIDE0cHgpO1xuICBsZWZ0OiA0MHB4O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogcmdiYSg0NSwgMTE0LCAyNDcsIDApO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZWYzMDM5O1xuICBib3JkZXItd2lkdGg6IDE0cHg7XG59XG5cbi5jdXN0b20tY2hlY2tib3gge1xuICBtaW4taGVpZ2h0OiAzMHB4O1xuICAvKk91dGVyIGJveCBvZiB0aGUgZmFrZSBjaGVja2JveCovXG4gIC8qQ2hlY2ttYXJrIG9mIHRoZSBmYWtlIGNoZWNrYm94Ki9cbiAgLypIaWRlIHRoZSBjaGVja21hcmsgYnkgZGVmYXVsdCovXG4gIC8qVW5oaWRlIG9uIHRoZSBjaGVja2VkIHN0YXRlKi9cbiAgLypBZGRpbmcgZm9jdXMgc3R5bGVzIG9uIHRoZSBvdXRlci1ib3ggb2YgdGhlIGZha2UgY2hlY2tib3gqL1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9J2NoZWNrYm94J10sXG4uY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9J3JhZGlvJ10ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gIGJvcmRlcjogMDtcbn1cblxuLmN1c3RvbS1jaGVja2JveCBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDMycHg7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tY2hlY2tib3ggbGFiZWw6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IGxhYmVsOjpiZWZvcmUge1xuICBoZWlnaHQ6IDIycHg7XG4gIHdpZHRoOiAyMnB4O1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogMXB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZWNlY2VjO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRvcDogMDtcbn1cblxuLmN1c3RvbS1jaGVja2JveCBpbnB1dFt0eXBlPSdjaGVja2JveCddICsgbGFiZWw6OmFmdGVyIHtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiAxM3B4O1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZmZmO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICBsZWZ0OiA1cHg7XG4gIHRvcDogOHB4O1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9J3JhZGlvJ10gKyBsYWJlbDo6YWZ0ZXIge1xuICBoZWlnaHQ6IDE2cHg7XG4gIHdpZHRoOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiAjMmQ3MmY3O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGxlZnQ6IDVweDtcbiAgdG9wOiA1cHg7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsOjphZnRlcixcbi5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkICsgbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICMyZDcyZjc7XG4gIGJvcmRlci1jb2xvcjogIzJkNzJmNztcbn1cblxuLmN1c3RvbS1jaGVja2JveCBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmO1xufVxuXG4uY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCArIGxhYmVsOjphZnRlcixcbi5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0ncmFkaW8nXTpjaGVja2VkICsgbGFiZWw6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG59XG5cbi5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWNoZWNrYm94IGlucHV0W3R5cGU9J3JhZGlvJ106Zm9jdXMgKyBsYWJlbDo6YmVmb3JlIHtcbiAgb3V0bGluZTogIzNiOTlmYyBhdXRvIDVweDtcbn1cblxuLyogQ3VzdG9tIGRyb3Bkb3duICovXG4uY3VzdG9tLWRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxOTIuODdkZWcsICNGRkZGRkYgNDguNzIlLCAjQjNCM0IzIDE0MS44JSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDRkNGQ0Y7XG4gIGJveC1zaGFkb3c6IDRweCAxcHggMTFweCByZ2JhKDAsIDAsIDAsIDAuMTMpO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jdXN0b20tZHJvcGRvd24gPiBzZWxlY3Qge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMyOTI5Mjk7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgcGFkZGluZzogMzBweCAzNXB4IDEycHg7XG4gIHdpZHRoOiAzNTBweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgdGV4dC1vdmVyZmxvdzogJyc7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiBoaWRlIGRlZmF1bHQgYXJyb3cgaW4gY2hyb21lIE9TWCAqL1xufVxuXG4uY3VzdG9tLWRyb3Bkb3duOjpiZWZvcmUsIC5jdXN0b20tZHJvcGRvd246OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5jdXN0b20tZHJvcGRvd246OmFmdGVyIHtcbiAgLyogIEN1c3RvbSBkcm9wZG93biBhcnJvdyAqL1xuICBjb250ZW50OiAnJztcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHJpZ2h0OiAzMHB4O1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTUuNXB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIxOCUyMiUyMGhlaWdodCUzRCUyMjExJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMTglMjAxMSUyMiUyMGZpbGwlM0QlMjJub25lJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0xNyUyMDFMOSUyMDlMMSUyMDAuOTk5OTk5JTIyJTIwc3Ryb2tlJTNEJTIyJTIzMkQ3MkY3JTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMiUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cblxuLmN1c3RvbS1kcm9wZG93biBzZWxlY3RbZGlzYWJsZWRdIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuLmN1c3RvbS1kcm9wZG93biBzZWxlY3RbZGlzYWJsZWRdOjphZnRlciB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5jdXN0b20tZHJvcGRvd246OmFmdGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cblxuLmN1c3RvbS1kcm9wZG93bi1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBsZWZ0OiAzNXB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0b3A6IDEycHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uY3VzdG9tLWRyb3Bkb3duLXJlZGlyZWN0IC5jdXN0b20tZHJvcGRvd24tbGFiZWwge1xuICB0b3A6IDUwJTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tdG9wOiAtMTNweDtcbn1cblxuLmN1c3RvbS10b2dnbGUge1xuICAvKiBzdXBwb3J0IFdpbmRvd3MgSGlnaCBDb250cmFzdCBNb2RlLiBDcmVkaXQ6IEFkcmlhbiBSb3NlbGxpIGh0dHBzOi8vdHdpdHRlci5jb20vYWFyZHJpYW4vc3RhdHVzLzEwMjEzNzIxMzk5OTAxMzQ3ODUgKi9cbn1cblxuLmN1c3RvbS10b2dnbGVfX2xhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY3VzdG9tLXRvZ2dsZV9fcmFkaW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA1MCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jdXN0b20tdG9nZ2xlX19yYWRpbzpjaGVja2VkIHtcbiAgd2lkdGg6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmN1c3RvbS10b2dnbGVfX3JhZGlvICsgLmN1c3RvbS10b2dnbGVfX3JhZGlvOmNoZWNrZWQgfiAuY3VzdG9tLXRvZ2dsZV9fc3dpdGNoZXIge1xuICByaWdodDogMDtcbiAgbGVmdDogY2FsYyg1MCUgKyAzcHgpO1xufVxuXG4uY3VzdG9tLXRvZ2dsZV9fcmFkaW86bm90KDpjaGVja2VkKSB7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzO1xufVxuXG4uY3VzdG9tLXRvZ2dsZV9fd3JhcHBlciB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tYmFzZVNpemUpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiA1ZW07XG4gIGhlaWdodDogMi41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDIuNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5jdXN0b20tdG9nZ2xlX19zd2l0Y2hlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogM3B4O1xuICBsZWZ0OiAzcHg7XG4gIHJpZ2h0OiAxMDAlO1xuICB3aWR0aDogY2FsYyg1MCUgLSA2cHgpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDZweCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc1NzU3O1xufVxuXG4uY3VzdG9tLXRvZ2dsZV9fYmFja2dyb3VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMDtcbiAgYm9yZGVyLXJhZGl1czogMi41ZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAuY3VzdG9tLXRvZ2dsZV9fc3dpdGNoZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdpbmRvd1RleHQ7XG4gIH1cbn1cblxuLmNvbnRhY3QtcHJlZmVyZW5jZXMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBwYWRkaW5nOiAyNXB4IDAgMDtcbn1cblxuLmNvbnRhY3QtcHJlZmVyZW5jZXMtY29udGFpbmVyIC5jb250YWN0LXByZWZlcmVuY2VzLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmNvbnRhY3QtcHJlZmVyZW5jZXMtY29udGFpbmVyIC5jaGVja2JveC1saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7XG59XG5cbi5jb250YWN0LXByZWZlcmVuY2VzLWNvbnRhaW5lciAuY2hlY2tib3gtbGlzdC5jb250YWN0cyBsaSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmNvbnRhY3QtcHJlZmVyZW5jZXMtY29udGFpbmVyIC5jaGVja2JveC1saXN0IC5jdXN0b20tY2hlY2tib3ggbGFiZWw6OmJlZm9yZSB7XG4gIGhlaWdodDogMThweDtcbiAgd2lkdGg6IDE4cHg7XG59XG5cbi5jb250YWN0LXByZWZlcmVuY2VzLWNvbnRhaW5lciAuY2hlY2tib3gtbGlzdCAuY3VzdG9tLWNoZWNrYm94IGxhYmVsIHtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbn1cblxuLmNvbnRhY3QtcHJlZmVyZW5jZXMtY29udGFpbmVyIC5jaGVja2JveC1saXN0IC5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsOjphZnRlciB7XG4gIGxlZnQ6IDRweDtcbiAgdG9wOiA2cHg7XG59XG5cbi5jb250YWN0LXByZWZlcmVuY2VzLWNvbnRhaW5lciAuY2hlY2tib3gtbGlzdCAuZm9ybSBpbnB1dFt0eXBlPSdjaGVja2JveCddIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYXNwZWN0LXJhdGlvLXNxdWFyZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xufVxuXG4uYXNwZWN0LXJhdGlvLTJcXC8xIHtcbiAgcGFkZGluZy1ib3R0b206IDUwJTtcbn1cblxuLmFzcGVjdC1yYXRpby0zXFwvMiB7XG4gIHBhZGRpbmctYm90dG9tOiA2Ni42NjY3JTtcbn1cblxuLmFzcGVjdC1yYXRpby00XFwvMyB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG5cbi5hc3BlY3QtcmF0aW8tMTZcXC85IHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLmFzcGVjdC1yYXRpby0yMVxcLzkge1xuICBwYWRkaW5nLWJvdHRvbTogNDIuODYlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NjhweCkge1xuICAueHNcXDphc3BlY3QtcmF0aW8tc3F1YXJlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgfVxuICAueHNcXDphc3BlY3QtcmF0aW8tMlxcLzEge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gIH1cbiAgLnhzXFw6YXNwZWN0LXJhdGlvLTNcXC8yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYuNjY2NyU7XG4gIH1cbiAgLnhzXFw6YXNwZWN0LXJhdGlvLTRcXC8zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICB9XG4gIC54c1xcOmFzcGVjdC1yYXRpby0xNlxcLzkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIH1cbiAgLnhzXFw6YXNwZWN0LXJhdGlvLTIxXFwvOSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQyLjg2JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc21cXDphc3BlY3QtcmF0aW8tc3F1YXJlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgfVxuICAuc21cXDphc3BlY3QtcmF0aW8tMlxcLzEge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gIH1cbiAgLnNtXFw6YXNwZWN0LXJhdGlvLTNcXC8yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYuNjY2NyU7XG4gIH1cbiAgLnNtXFw6YXNwZWN0LXJhdGlvLTRcXC8zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICB9XG4gIC5zbVxcOmFzcGVjdC1yYXRpby0xNlxcLzkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIH1cbiAgLnNtXFw6YXNwZWN0LXJhdGlvLTIxXFwvOSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQyLjg2JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1kXFw6YXNwZWN0LXJhdGlvLXNxdWFyZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gIH1cbiAgLm1kXFw6YXNwZWN0LXJhdGlvLTJcXC8xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTAlO1xuICB9XG4gIC5tZFxcOmFzcGVjdC1yYXRpby0zXFwvMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDY2LjY2NjclO1xuICB9XG4gIC5tZFxcOmFzcGVjdC1yYXRpby00XFwvMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgfVxuICAubWRcXDphc3BlY3QtcmF0aW8tMTZcXC85IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICB9XG4gIC5tZFxcOmFzcGVjdC1yYXRpby0yMVxcLzkge1xuICAgIHBhZGRpbmctYm90dG9tOiA0Mi44NiU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5sZ1xcOmFzcGVjdC1yYXRpby1zcXVhcmUge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICB9XG4gIC5sZ1xcOmFzcGVjdC1yYXRpby0yXFwvMSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwJTtcbiAgfVxuICAubGdcXDphc3BlY3QtcmF0aW8tM1xcLzIge1xuICAgIHBhZGRpbmctYm90dG9tOiA2Ni42NjY3JTtcbiAgfVxuICAubGdcXDphc3BlY3QtcmF0aW8tNFxcLzMge1xuICAgIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIH1cbiAgLmxnXFw6YXNwZWN0LXJhdGlvLTE2XFwvOSB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgfVxuICAubGdcXDphc3BlY3QtcmF0aW8tMjFcXC85IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDIuODYlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNjBweCkge1xuICAueGxcXDphc3BlY3QtcmF0aW8tc3F1YXJlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgfVxuICAueGxcXDphc3BlY3QtcmF0aW8tMlxcLzEge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gIH1cbiAgLnhsXFw6YXNwZWN0LXJhdGlvLTNcXC8yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjYuNjY2NyU7XG4gIH1cbiAgLnhsXFw6YXNwZWN0LXJhdGlvLTRcXC8zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICB9XG4gIC54bFxcOmFzcGVjdC1yYXRpby0xNlxcLzkge1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIH1cbiAgLnhsXFw6YXNwZWN0LXJhdGlvLTIxXFwvOSB7XG4gICAgcGFkZGluZy1ib3R0b206IDQyLjg2JTtcbiAgfVxufVxuXG4uYmctZ3JhZGllbnQtZ29sZGVuLWhvdXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGNvbG9yOiAjMjkyOTI5O1xufVxuXG4uYmctZ3JhZGllbnQtYmx1ZS1ob3VyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjMzMzMzk5IDAlLCAjMzNjY2ZmIDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJnLWdyYWRpZW50LWF1cm9yYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgIzMzY2NmZiAwJSwgI2E1NDJlZiAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5iZy1ncmFkaWVudC1wbGVuLWFpciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgIzA0YTVmZiAwJSwgIzZjZmZhOSAxMDAlKTtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5cbi5iZy1ncmFkaWVudC1ncmVlbi1zaGFkZXMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICMxNjQ4MWEgMCUsICNhNWUyMjYgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmctZ3JhZGllbnQtc3RvbmUtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjAxLjE4ZGVnLCAjZmZmIDQ5JSwgI2IzYjNiMyAxNDElKTtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5cbi5iZy1vcmFuZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkY4MjAwO1xuICBjb2xvcjogIzI5MjkyOTtcbn1cblxuLmJnLWJsdWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkQ3MkY3O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJnLXB1cnBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTMzZmY7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmctbGlnaHQtYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzM0NDZmY7XG4gIGNvbG9yOiAjMjkyOTI5O1xufVxuXG4uYmctZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTVlMjI2O1xuICBjb2xvcjogIzI5MjkyOTtcbn1cblxuLmJnLXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRDNGMzk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmctd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzI5MjkyOTtcbn1cblxuLmJnLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI5MjkyOTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5iZy1zbW9rZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmctZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGNvbG9yOiAjMjkyOTI5O1xufVxuXG4uYmctZ29sZGVuLWhvdXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY4ZjFmO1xuICBjb2xvcjogIzI5MjkyOTtcbn1cblxuLmJnLWJsdWUtaG91ciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzcwYzI7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYmctYXVyb3JhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxOTVmOTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5iZy1wbGVuLWFpciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyZWM5ZGQ7XG4gIGNvbG9yOiAjMjkyOTI5O1xufVxuXG4uYmctZ3JlZW4tc2hhZGVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzRmODYxZjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5iZy1zdG9uZS13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWUxZTE7XG4gIGNvbG9yOiAjMjkyOTI5O1xufVxuXG4uY2FsbG91dC1ib3gsIC5wcm9kdWN0LWNhcmQge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwcHggNnB4IDM0cHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgcGFkZGluZzogNTBweDtcbn1cblxuLmNhcmF0LCAuYnJlYWRjcnVtYnMgbGk6YWZ0ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTg4MjViO1xuICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDNweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4uY2FyYXQubGVmdCwgLmJyZWFkY3J1bWJzIGxpLmxlZnQ6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG59XG5cbi5jYXJhdC51cCwgLmJyZWFkY3J1bWJzIGxpLnVwOmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG59XG5cbi5jYXJhdC5kb3duLCAuYnJlYWRjcnVtYnMgbGkuZG93bjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5icmVhZGNydW1icyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmJyZWFkY3J1bWJzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbn1cblxuLmJyZWFkY3J1bWJzIGxpOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmJyZWFkY3J1bWJzIGxpOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYnJlYWRjcnVtYnMgbGkgYSB7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmJyZWFkY3J1bWJzIGxpIGEge1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICB9XG59XG5cbi5icmVhZGNydW1icyBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYnJlYWRjcnVtYnMgbGk6bGFzdC1jaGlsZCBhIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYnJlYWRjcnVtYnMgLm5vLWxpbmsge1xuICBjb2xvcjogIzI5MjkyOTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbmZpZ3VyZS5xdW90ZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuZmlndXJlLnF1b3RlIGJsb2NrcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuZmlndXJlLnF1b3RlIGNpdGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxudWwucGFnaW5hdGlvbiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxudWwucGFnaW5hdGlvbiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxudWwucGFnaW5hdGlvbiBsaSBhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAyMHB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5cbnVsLnBhZ2luYXRpb24gbGkuc2VsZWN0ZWQgYSB7XG4gIGJhY2tncm91bmQ6ICNGRjgyMDA7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbnVsLnBhZ2luYXRpb24gbGkgLmNhcmF0LCB1bC5wYWdpbmF0aW9uIGxpIC5icmVhZGNydW1icyBsaTphZnRlciwgLmJyZWFkY3J1bWJzIHVsLnBhZ2luYXRpb24gbGkgbGk6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICM3OTg4ZTk7XG59XG5cbnVsLmNhcm91c2VsLW5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxudWwuY2Fyb3VzZWwtbmF2IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG51bC5jYXJvdXNlbC1uYXYgbGkgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1pbmRlbnQ6IC01MDAwMHB4O1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbnVsLmNhcm91c2VsLW5hdiBsaS5hY3RpdmUgYSB7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogI0ZGNkIwQjtcbn1cblxuLm1hc2std3JhcHBlciB7XG4gIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvY3VydmUtbWFzay5wbmcpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiA1MCUgMTAwJTtcbiAgbWFzay1zaXplOiBjb3Zlcjtcbn1cblxuLm1hc2std3JhcHBlciBhcnRpY2xlIHtcbiAgbWFzay1pbWFnZTogdXJsKC4uL2ltYWdlcy9jdXJ2ZS1tYXNrLnBuZyk7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IDUwJSAwO1xuICBtYXNrLXNpemU6IGNvdmVyO1xufVxuXG4uaW1hZ2UtcGxhY2Vob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW1hZ2UtcGxhY2Vob2xkZXIgPiAqIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NjhweCkge1xuICAueHNcXDppbWFnZS1wbGFjZWhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC54c1xcOmltYWdlLXBsYWNlaG9sZGVyID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc21cXDppbWFnZS1wbGFjZWhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5zbVxcOmltYWdlLXBsYWNlaG9sZGVyID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1kXFw6aW1hZ2UtcGxhY2Vob2xkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWRcXDppbWFnZS1wbGFjZWhvbGRlciA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5sZ1xcOmltYWdlLXBsYWNlaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxnXFw6aW1hZ2UtcGxhY2Vob2xkZXIgPiAqIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEzNjBweCkge1xuICAueGxcXDppbWFnZS1wbGFjZWhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC54bFxcOmltYWdlLXBsYWNlaG9sZGVyID4gKiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG5ib2R5LmlzLXNjcm9sbGluZyAuc2l0ZS1oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2JhYmFiYTtcbn1cblxuLnNpdGUtaGVhZGVyLmRlc2t0b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBoZWlnaHQ6IDEzNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgbWF4LXdpZHRoOiAxOTMwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zaXRlLWhlYWRlci5kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC51dGlsaXR5LW5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC51dGlsaXR5LW5hdiA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC51dGlsaXR5LW5hdiA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBjb2xvcjogIzZDNkM2Qztcbn1cblxuLnNpdGUtaGVhZGVyLmRlc2t0b3AgLnV0aWxpdHktbmF2ID4gbGkgPiBhLnNlbGVjdGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAudXRpbGl0eS1uYXYgPiBsaSA+IGEuc2VsZWN0ZWQ6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgI2ZmNjYzMyAwJSwgI2ZmY2MwMCAxMDAlKTtcbn1cblxuLnNpdGUtaGVhZGVyLmRlc2t0b3AgLmxvZ28ge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDU2cHg7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9zdW5ub3ZhLWxvZ28ucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgdGV4dC1pbmRlbnQ6IC01MDAwcHg7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC5tYWluLW5hdi13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbWFyZ2luLXRvcDogNnB4O1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNpdGUtaGVhZGVyLmRlc2t0b3AgLm1haW4tbmF2IHVsID4gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCAxMHB4O1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTVweCAxMHB4O1xuICBjb2xvcjogIzI5MjkyOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaS5nZXQtcXVvdGUgYSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgI2ZmNjYzMyAwJSwgI2ZmY2MwMCAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDEwcHggMzBweDtcbn1cblxuLnNpdGUtaGVhZGVyLmRlc2t0b3AgLm1haW4tbmF2IHVsID4gbGkuaXMtYWN0aXZlOm5vdCguZ2V0LXF1b3RlKSwgLnNpdGUtaGVhZGVyLmRlc2t0b3AgLm1haW4tbmF2IHVsID4gbGk6aG92ZXI6bm90KC5nZXQtcXVvdGUpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaS5pcy1hY3RpdmU6bm90KC5nZXQtcXVvdGUpOmJlZm9yZSwgLnNpdGUtaGVhZGVyLmRlc2t0b3AgLm1haW4tbmF2IHVsID4gbGk6aG92ZXI6bm90KC5nZXQtcXVvdGUpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC5tYWluLW5hdiB1bCA+IGxpLmlzLWFjdGl2ZTpub3QoLmdldC1xdW90ZSkgPiBhLCAuc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaTpob3Zlcjpub3QoLmdldC1xdW90ZSkgPiBhIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC5tYWluLW5hdiB1bCA+IGxpLmlzLWFjdGl2ZTpub3QoLmdldC1xdW90ZSk6OmJlZm9yZSwgLnNpdGUtaGVhZGVyLmRlc2t0b3AgLm1haW4tbmF2IHVsID4gbGk6aG92ZXI6bm90KC5nZXQtcXVvdGUpOjpiZWZvcmUge1xuICBib3R0b206IDEwcHg7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC5tYWluLW5hdiB1bCA+IGxpLmhhcy1zdWItbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC5tYWluLW5hdiB1bCA+IGxpLmhhcy1zdWItbmF2ID4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG59XG5cbi5zaXRlLWhlYWRlci5kZXNrdG9wIC5tYWluLW5hdiB1bCA+IGxpLmhhcy1zdWItbmF2OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDVweDtcbiAgdG9wOiBjYWxjKDUwJSAtIDJweCk7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGNvbnRlbnQ6ICcnO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDQ1LCAxMTQsIDI0NywgMCk7XG4gIGJvcmRlci10b3AtY29sb3I6ICMyOTI5Mjk7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgYWxsO1xuICBib3JkZXItbGVmdC13aWR0aDogNHB4O1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDRweDtcbn1cblxuLnNpdGUtaGVhZGVyLmRlc2t0b3AgLm1haW4tbmF2IHVsID4gbGkuaGFzLXN1Yi1uYXY6aG92ZXIgPiB1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaS5oYXMtc3ViLW5hdiA+IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwcHggMTVweCAzNHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wMik7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgbWluLXdpZHRoOiAxODBweDtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xufVxuXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCAubWFpbi1uYXYgdWwgPiBsaS5oYXMtc3ViLW5hdiA+IHVsIGxpIHtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNpdGUtaGVhZGVyLmRlc2t0b3AgLm1haW4tbmF2IHVsID4gbGkuaGFzLXN1Yi1uYXYgPiB1bCBhIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnNpdGUtaGVhZGVyLm1vYmlsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMTBweCAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB6LWluZGV4OiAxMDA7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWhlYWRlci5tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyLm1vYmlsZSAubG9nbyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTQ0cHg7XG4gIGhlaWdodDogNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9zdW5ub3ZhLWxvZ28ucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgdGV4dC1pbmRlbnQ6IC01MDAwcHg7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgLm1vYmlsZS1tZW51IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgc3Bhbi5oYW1idXJnZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTlweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNpdGlvbjogLjVzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMjRweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIHNwYW4uaGFtYnVyZ2VyIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGhlaWdodDogM3B4O1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB0cmFuc2l0aW9uOiAuMjVzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNpdGUtaGVhZGVyLm1vYmlsZSBzcGFuLmhhbWJ1cmdlciBzcGFuOm50aC1jaGlsZCgxKSB7XG4gIHRvcDogMDtcbn1cblxuLnNpdGUtaGVhZGVyLm1vYmlsZSBzcGFuLmhhbWJ1cmdlciBzcGFuOm50aC1jaGlsZCgyKSB7XG4gIHRvcDogOHB4O1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIHNwYW4uaGFtYnVyZ2VyIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgdG9wOiA4cHg7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgc3Bhbi5oYW1idXJnZXIgc3BhbjpudGgtY2hpbGQoNCkge1xuICB0b3A6IDE2cHg7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgc3Bhbi5oYW1idXJnZXIub3BlbiBzcGFuOm50aC1jaGlsZCgxKSB7XG4gIHRvcDogOHB4O1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAwO1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIHNwYW4uaGFtYnVyZ2VyLm9wZW4gc3BhbjpudGgtY2hpbGQoMikge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgc3Bhbi5oYW1idXJnZXIub3BlbiBzcGFuOm50aC1jaGlsZCgzKSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgc3Bhbi5oYW1idXJnZXIub3BlbiBzcGFuOm50aC1jaGlsZCg0KSB7XG4gIHRvcDogOHB4O1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAwO1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNpdGUtaGVhZGVyLm1vYmlsZSBuYXYgdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxNXB4IDA7XG4gIGNvbG9yOiAjMjkyOTI5O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNpdGUtaGVhZGVyLm1vYmlsZSBuYXYgdWwgbGkuZ2V0LXF1b3RlIGEge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDIwcHg7XG4gIHBhZGRpbmc6IDEwcHggMCAxMnB4O1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bCBsaSA+IHVsIHtcbiAgYmFja2dyb3VuZDogI2YzZjNmMztcbiAgcGFkZGluZzogNXB4IDIwcHg7XG4gIG1hcmdpbjogMCAtMjBweDtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGhlaWdodDtcbn1cblxuLnNpdGUtaGVhZGVyLm1vYmlsZSBuYXYgdWwgbGkuaGFzLXN1Yi1uYXYgPiBhIHtcbiAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bC51dGlsaXR5LW5hdiB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bC51dGlsaXR5LW5hdiBsaSB7XG4gIHBhZGRpbmc6IDVweCAwO1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bC51dGlsaXR5LW5hdiBsaSBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA1cHggMDtcbiAgY29sb3I6ICMyOTI5Mjk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bC51dGlsaXR5LW5hdiBsaSBhLnNlbGVjdGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIG5hdiB1bC51dGlsaXR5LW5hdiBsaSBhLnNlbGVjdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgW2RhdGEtYWNjb3JkaW9uLXRyaWdnZXJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB0b3A6IDIycHg7XG4gIHJpZ2h0OiAtNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IDA7XG4gIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUgW2RhdGEtYWNjb3JkaW9uLXRyaWdnZXJdOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29udGVudDogXCIgXCI7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3JkZXItY29sb3I6IHJnYmEoNDUsIDExNCwgMjQ3LCAwKTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzI5MjkyOTtcbiAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICBtYXJnaW4tdG9wOiA2cHg7XG4gIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCB0cmFuc2Zvcm07XG4gIHRyYW5zZm9ybS1vcmlnaW46IDVweCAzcHg7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiA2cHg7XG4gIGJvcmRlci1yaWdodC13aWR0aDogNnB4O1xufVxuXG4uc2l0ZS1oZWFkZXIubW9iaWxlIFtkYXRhLWFjY29yZGlvbi10cmlnZ2VyXVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZVooLTE4MGRlZyk7XG59XG5cbi5zaXRlLWhlYWRlci5tb2JpbGUub3BlbiB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnNpdGUtZm9vdGVyIHtcbiAgcGFkZGluZzogMCAwIDUwcHggMDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2l0ZS1mb290ZXIgLmlubmVyIHtcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMTApICsgMTgwcHggLSAuMXB4KTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyggKCgoMTAwJSAtIDIyMHB4KSAvIDEyKSAqIDEpICsgMHB4ICsgMjBweCkgIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1mb290ZXIgLmlubmVyOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyggKCgoMTAwJSAtIDIyMHB4KSAvIDEyKSAqIDEpICsgMHB4ICsgMjBweCkgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2l0ZS1mb290ZXIgaDQge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyOTI5Mjk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtZm9vdGVyIGRpdi5jb2wtMSB7XG4gICAgd2lkdGg6IGNhbGMoKCgoMTAwJSAtIDE4MHB4KSAvIDEwKSAqIDMpICsgNDBweCAtIC4xcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1mb290ZXIgZGl2LmNvbC0xOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtZm9vdGVyIGRpdi5jb2wtMiB7XG4gICAgd2lkdGg6IGNhbGMoKCgoMTAwJSAtIDE4MHB4KSAvIDEwKSAqIDMpICsgNDBweCAtIC4xcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1mb290ZXIgZGl2LmNvbC0yOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaXRlLWZvb3RlciBkaXYuY29sLTM6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNpdGUtZm9vdGVyIGRpdi5jb2wtMyB7XG4gICAgd2lkdGg6IGNhbGMoKCgoMTAwJSAtIDE4MHB4KSAvIDEwKSAqIDQpICsgNjBweCAtIC4xcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxuICAuc2l0ZS1mb290ZXIgZGl2LmNvbC0zOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaXRlLWZvb3RlciBkaXYuY29sLTMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSA2MHB4KSAvIDQpICogMikgKyAyMHB4IC0gLjFweCk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xufVxuXG4uc2l0ZS1mb290ZXIgZGl2LmNvbC0zIHVsOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLnNpdGUtZm9vdGVyIC5mb290bm90ZXMge1xuICBmb250LXNpemU6IDEzcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGNvbG9yOiAjOEY4RjhGO1xufVxuXG4uc2l0ZS1mb290ZXIgLmZvb3Rub3RlcyBwIHtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4uc2l0ZS1mb290ZXIgLmNvcHlyaWdodCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLnNpdGUtZm9vdGVyIC5jb3B5cmlnaHQgcCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zaXRlLWZvb3RlciAuY29weXJpZ2h0IHAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zaXRlLWZvb3RlciAuY29weXJpZ2h0IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5zaXRlLWZvb3RlciAuY29weXJpZ2h0IHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNpdGUtZm9vdGVyIC5jb3B5cmlnaHQgdWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8qIFRoaXMgZmlsZSBpcyB3aGVyZSB0aGUgc3R5bGluZyBmb3IgbW9kdWxlcyB3aWxsIGdvLiBUaGlzIGVtcGxveWVzIHRoZSBjb25jZXB0cyBvZiBPT0NTUywgY3JlYXRpbmcgY29tbW9uIGJhc2UgY2xhc3NlcyAodXNpbmcgPGFydGljbGU+IGFzIHRoZSBiYXNlKSwgYW5kIGV4dGVuZGluZyBhcyBuZWNlc3NhcnkgKi9cbi8qXHJcblxyXG48YXJ0aWNsZSBjbGFzcz1cIm1vZHVsZS1uYW1lXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgIDxoZWFkZXI+XHJcbiAgICAgICAgICAgIDxoMj5Nb2R1bGUgTmFtZTwvaDI+XHJcbiAgICAgICAgPC9oZWFkZXI+XHJcbiAgICAgICAgPCEtLSBDb250ZW50IGhlcmUgLS0+XHJcbiAgICA8L2Rpdj5cclxuPC9hcnRpY2xlPlxyXG5cclxuKi9cbmFydGljbGUge1xuICBtYXJnaW46IDEwMHB4IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZSB7XG4gICAgbWFyZ2luOiA2MHB4IDA7XG4gIH1cbn1cblxuLmxheW91dCA+IGFydGljbGU6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1haW5Db250ZW50ID4gKiwgLmV4dHJhQ29udGVudCA+ICosIC5zaWRlYmFyID4gKiB7XG4gICAgbWFyZ2luOiAyMHB4IDAgNTBweCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBhcnRpY2xlLmFib3V0LXN1bm5vdmEge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBhcnRpY2xlLmFib3V0LXN1bm5vdmEgLmNvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA2KSArIDEwMHB4IC0gLjFweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICB9XG4gIGFydGljbGUuYWJvdXQtc3Vubm92YSAuY29udGVudDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGFydGljbGUuYWJvdXQtc3Vubm92YSAuY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuXG5hcnRpY2xlLmFib3V0LXN1bm5vdmEgLmNvbnRlbnQgaDEsIGFydGljbGUuYWJvdXQtc3Vubm92YSAuY29udGVudCBoMiwgYXJ0aWNsZS5hYm91dC1zdW5ub3ZhIC5jb250ZW50IGgzLCBhcnRpY2xlLmFib3V0LXN1bm5vdmEgLmNvbnRlbnQgaDQsIGFydGljbGUuYWJvdXQtc3Vubm92YSAuY29udGVudCBoNSwgYXJ0aWNsZS5hYm91dC1zdW5ub3ZhIC5jb250ZW50IGg2IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMzM2NjZmYgMCUsICNhNTQyZWYgMTAwJSk7XG4gIGNvbG9yOiAjNjE5NWY5O1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDQ4cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5hYm91dC1zdW5ub3ZhIC5jb250ZW50IGgxLCBhcnRpY2xlLmFib3V0LXN1bm5vdmEgLmNvbnRlbnQgaDIsIGFydGljbGUuYWJvdXQtc3Vubm92YSAuY29udGVudCBoMywgYXJ0aWNsZS5hYm91dC1zdW5ub3ZhIC5jb250ZW50IGg0LCBhcnRpY2xlLmFib3V0LXN1bm5vdmEgLmNvbnRlbnQgaDUsIGFydGljbGUuYWJvdXQtc3Vubm92YSAuY29udGVudCBoNiB7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICB9XG59XG5cbmFydGljbGUuYWJvdXQtc3Vubm92YSAuY29udGVudCAuYnV0dG9uIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGFydGljbGUuYWJvdXQtc3Vubm92YSAubG9nb3Mge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA2KSArIDEwMHB4IC0gLjFweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICB9XG4gIGFydGljbGUuYWJvdXQtc3Vubm92YSAubG9nb3M6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuYXJ0aWNsZS5hYm91dC1zdW5ub3ZhIC5sb2dvcyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbjogLTI1cHggMDtcbn1cblxuYXJ0aWNsZS5hYm91dC1zdW5ub3ZhIC5sb2dvcyB1bCBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDAgMjVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgMCAyNXB4IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5hYm91dC1zdW5ub3ZhIC5sb2dvcyB1bCBsaSB7XG4gICAgbWFyZ2luLXRvcDogMjVweDtcbiAgfVxufVxuXG5hcnRpY2xlLmFib3V0LXN1bm5vdmEgLmxvZ29zIHVsIGxpIGltZyB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLmFib3V0LXN1bm5vdmEgLmxvZ29zIHVsIGxpIGltZyB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgfVxufVxuXG5hcnRpY2xlLmJyZWFkY3J1bWJzLXdyYXBwZXIge1xuICBtYXJnaW46IC01MHB4IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5icmVhZGNydW1icy13cmFwcGVyIHtcbiAgICBtYXJnaW46IC0yNXB4IDA7XG4gIH1cbn1cblxuYXJ0aWNsZS5icmVhZGNydW1icy13cmFwcGVyIGEge1xuICBjb2xvcjogI0ZGNkIwQjtcbiAgdHJhbnNpdGlvbjogLjJzIGxpbmVhciBvcGFjaXR5O1xufVxuXG5hcnRpY2xlLmJyZWFkY3J1bWJzLXdyYXBwZXIgYTpob3ZlciwgYXJ0aWNsZS5icmVhZGNydW1icy13cmFwcGVyIGE6Zm9jdXMge1xuICBvcGFjaXR5OiAuNztcbn1cblxuYXJ0aWNsZS5jYWxsb3V0cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYXJ0aWNsZS5jYWxsb3V0cyB7XG4gICAgbWFyZ2luOiAtMzAwcHggMCAyMDBweCAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5jYWxsb3V0cyB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUuY2FsbG91dHMgZGl2LnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUuY2FsbG91dHMgZGl2LmNhbGxvdXQtYm94LCBhcnRpY2xlLmNhbGxvdXRzIGRpdi5wcm9kdWN0LWNhcmQge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA1KSArIDgwcHggLSAuMXB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206IC0xNTBweDtcbiAgfVxuICBhcnRpY2xlLmNhbGxvdXRzIGRpdi5jYWxsb3V0LWJveDpmaXJzdC1jaGlsZCwgYXJ0aWNsZS5jYWxsb3V0cyBkaXYucHJvZHVjdC1jYXJkOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIGFydGljbGUuY2FsbG91dHMgZGl2LmNhbGxvdXQtYm94OmZpcnN0LWNoaWxkLCBhcnRpY2xlLmNhbGxvdXRzIGRpdi5wcm9kdWN0LWNhcmQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMSkgKyAwcHggKyAyMHB4KSAhaW1wb3J0YW50O1xuICB9XG4gIGFydGljbGUuY2FsbG91dHMgZGl2LmNhbGxvdXQtYm94OmZpcnN0LWNoaWxkOmZpcnN0LWNoaWxkLCBhcnRpY2xlLmNhbGxvdXRzIGRpdi5wcm9kdWN0LWNhcmQ6Zmlyc3QtY2hpbGQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMSkgKyAwcHggKyAyMHB4KSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5jYWxsb3V0cyBkaXYuY2FsbG91dC1ib3gsIGFydGljbGUuY2FsbG91dHMgZGl2LnByb2R1Y3QtY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG5hcnRpY2xlLmNhbGxvdXRzIGRpdi5jYWxsb3V0LWJveCBoMywgYXJ0aWNsZS5jYWxsb3V0cyBkaXYucHJvZHVjdC1jYXJkIGgzIHtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG5hcnRpY2xlLmNhbGxvdXRzIGRpdi5jYWxsb3V0LWJveCB1bCwgYXJ0aWNsZS5jYWxsb3V0cyBkaXYucHJvZHVjdC1jYXJkIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbmFydGljbGUuY2FsbG91dHMgZGl2LmNhbGxvdXQtYm94IHVsIGxpLCBhcnRpY2xlLmNhbGxvdXRzIGRpdi5wcm9kdWN0LWNhcmQgdWwgbGkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0M0QzRDNDtcbn1cblxuYXJ0aWNsZS5jYWxsb3V0cyBkaXYuY2FsbG91dC1ib3ggdWwgbGk6bGFzdC1jaGlsZCwgYXJ0aWNsZS5jYWxsb3V0cyBkaXYucHJvZHVjdC1jYXJkIHVsIGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG5hcnRpY2xlLmNhbGxvdXRzIGRpdi5jYWxsb3V0LWJveCB1bCBsaSBhLCBhcnRpY2xlLmNhbGxvdXRzIGRpdi5wcm9kdWN0LWNhcmQgdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZmY2NjMzIDAlLCAjZmZjYzAwIDEwMCUpO1xuICBjb2xvcjogI2ZmOGYxZjtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgZm9udC1zaXplOiAyNHB4O1xufVxuXG5hcnRpY2xlLmNhbGxvdXRzIGRpdi5jYWxsb3V0LWJveCB1bCBsaSBhOmFmdGVyLCBhcnRpY2xlLmNhbGxvdXRzIGRpdi5wcm9kdWN0LWNhcmQgdWwgbGkgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U4ODI1YjtcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAzcHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLmNhcm91c2VsLWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uY2Fyb3VzZWwgLnRucy1vdXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsIC50bnMtY29udHJvbHMgW2RhdGEtY29udHJvbHNdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygyNSUgLSAzMHB4KTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBvdXRsaW5lOiAwO1xufVxuXG4uY2Fyb3VzZWwgLnRucy1jb250cm9scyBbZGF0YS1jb250cm9scz1cIm5leHRcIl0ge1xuICByaWdodDogMDtcbn1cblxuLmNhcm91c2VsIC50bnMtY29udHJvbHMgW2RhdGEtY29udHJvbHNdW2Rpc2FibGVkXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jYXJvdXNlbCAudG5zLW5hdiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLmNhcm91c2VsIFtkYXRhLWNvbnRyb2xzXSwgLmNhcm91c2VsIFtkYXRhLW5hdl0ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNhcm91c2VsIFtkYXRhLW5hdl0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luOiAycHg7XG59XG5cbi5jYXJvdXNlbCBbZGF0YS1uYXZdLnRucy1uYXYtYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAjRkY2QjBCO1xuICBiYWNrZ3JvdW5kOiAjRkY2QjBCO1xufVxuXG4uY2Fyb3VzZWwgLnRucy1zbGlkZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY2Fyb3VzZWwgLnRucy1zbGlkZXIgLnRucy1pdGVtIHtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IG9wYWNpdHk7XG4gIG9wYWNpdHk6IC4zNTtcbn1cblxuLmNhcm91c2VsIC50bnMtc2xpZGVyIC50bnMtaXRlbS5pcy1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY2Fyb3VzZWwgLnRucy1zbGlkZXIgLnRucy1pdGVtIGltZyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4uY2hhcml0eS1saXN0aW5nLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNoYXJpdHktbGlzdGluZyBpbWcge1xuICBtYXJnaW4tYm90dG9tOiA0NXB4O1xufVxuXG4uY2hhcml0eS1saXN0aW5nLWdyaWQge1xuICBtYXJnaW4tYm90dG9tOiAtNDVweDtcbn1cblxuLmNoYXJpdHktbGlzdGluZy1ncmlkIGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBtaW4td2lkdGg6IDA7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogNTAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLmNoYXJpdHktbGlzdGluZy1ncmlkIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2hhcml0eS1saXN0aW5nLWdyaWQgbGkge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuY2hhcml0eS1saXN0aW5nLWdyaWQgbGkge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NiU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NiU7XG4gIH1cbn1cblxuLmNvbXBhcmlzb24ge1xuICBtYXgtd2lkdGg6IDk0MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZm9udDogMTZweC8xLjQgXCJIZWx2ZXRpY2EgTmV1ZVwiLEhlbHZldGljYSxBcmlhbCxzYW5zLXNlcmlmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jb21wYXJpc29uIHRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0NDQztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQ0NDO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0NDQztcbn1cblxuLmNvbXBhcmlzb24gdGQsIC5jb21wYXJpc29uIHRoIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI0NDQztcbiAgZW1wdHktY2VsbHM6IHNob3c7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG5cbi5jb21wYXJlLWhlYWRpbmcge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMTBweCAhaW1wb3J0YW50O1xufVxuXG4uY29tcGFyaXNvbiAuY29tcGFyZS1yb3cge1xuICBiYWNrZ3JvdW5kOiAjRjVGNUY1O1xufVxuXG4uY29tcGFyaXNvbiAudGlja2JsdWUge1xuICBjb2xvcjogIzAwNzhDMTtcbn1cblxuLmNvbXBhcmlzb24gLnRpY2tncmVlbiB7XG4gIGNvbG9yOiAjMDA5RTJDO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uY29tcGFyaXNvbiB0aCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQ0NDO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jb21wYXJpc29uIHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNvbXBhcmlzb24gLnFic2UsIC5jb21wYXJpc29uIC5xYm8sIC5jb21wYXJpc29uIC50bCB7XG4gIGNvbG9yOiAjRkZGO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNDQ0M7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jb21wYXJpc29uIC50bDIge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi5jb21wYXJpc29uIC5xYnNlIHtcbiAgYmFja2dyb3VuZDogIzYzNjM2MztcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogM3B4O1xuICBib3JkZXItbGVmdDogMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jb21wYXJpc29uIC5wbGF0aW51bSB7XG4gIGJhY2tncm91bmQ6ICNGMzZGMjE7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLWxlZnQ6IDBweDtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5jb21wYXJpc29uIC5xYm8ge1xuICBiYWNrZ3JvdW5kOiAjMDA5RTJDO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4O1xuICBib3JkZXItcmlnaHQ6IDBweDtcbn1cblxuLmNvbXBhcmlzb24gLnByaWNlLWluZm8ge1xuICBwYWRkaW5nOiA1cHggMTVweCAxNXB4IDE1cHg7XG59XG5cbi5jb21wYXJpc29uIC5wcmljZS13YXMge1xuICBjb2xvcjogIzk5OTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi5jb21wYXJpc29uIC5wcmljZS1ub3csIC5jb21wYXJpc29uIC5wcmljZS1ub3cgc3BhbiB7XG4gIGNvbG9yOiAjZmY1NDA2O1xufVxuXG4uY29tcGFyaXNvbiAucHJpY2Utbm93IHNwYW4ge1xuICBmb250LXNpemU6IDMycHg7XG59XG5cbi5jb21wYXJpc29uIC5wcmljZS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTExcHg7XG4gIGxlZnQ6IDJweDtcbn1cblxuLmNvbXBhcmlzb24gLnByaWNlLWJ1eSB7XG4gIGJhY2tncm91bmQ6ICNmZjU0MDY7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luOiA1cHggMCAxMHB4IDA7XG59XG5cbi5jb21wYXJpc29uIC5wcmljZS10cnkge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5jb21wYXJpc29uIC5wcmljZS10cnkgYSB7XG4gIGNvbG9yOiAjMjAyMDIwO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNvbXBhcmlzb24gdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICBiYWNrZ3JvdW5kOiAjRjdGN0Y3O1xuICB9XG4gIC5jb21wYXJpc29uIC5yb3cge1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gIH1cbiAgLmNvbXBhcmlzb24gdGQsIC5jb21wYXJpc29uIHRoIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICB9XG4gIC5wcmljZS1pbmZvIHtcbiAgICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5jb21wYXJpc29uIC5wcmljZS1idXkge1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICB9XG4gIC5jb21wYXJpc29uIHRkLCAuY29tcGFyaXNvbiB0aCB7XG4gICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICB9XG4gIC5jb21wYXJpc29uIC5oaWRlLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuY29tcGFyaXNvbiAucHJpY2Utbm93IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICAuY29tcGFyaXNvbiAucHJpY2Utc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5jb21wYXJpc29uIC5xYnNlLCAuY29tcGFyaXNvbiAucWJvIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZzogMTBweCA1cHg7XG4gIH1cbiAgLmNvbXBhcmlzb24gLnByaWNlLWJ1eSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxuICAuY29tcGFyZS1oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbn1cblxuLmZpbHRlci1iYXItbGlzdC1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjMwLjIxZGVnLCAjMzNDQ0ZGIDcuOTklLCAjMzMzMzk5IDEwMCUpO1xuICBib3gtc2hhZG93OiAwcHggMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTQpO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAzMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZmlsdGVyLWJhci1saXN0LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMzBweDtcbiAgfVxufVxuXG4uZmlsdGVyLWJhci1oZWFkaW5nIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5maWx0ZXItYmFyLWhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZpbHRlci1iYXIgLmNvbDpub3QoLnRucy1pdGVtKSB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB9XG4gIC5maWx0ZXItYmFyIC5jb2w6bm90KC50bnMtaXRlbSk6bnRoLWNoaWxkKG4rNSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmZpbHRlci1iYXItbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMHB4LCAwcHgpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDI1cHggMCAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5maWx0ZXItYmFyLWxpc3QgYSwgLmZpbHRlci1iYXItbGlzdCBhOmZvY3VzLCAuZmlsdGVyLWJhci1saXN0IGE6aG92ZXIsIC5maWx0ZXItYmFyLWxpc3QgYTphY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZmlsdGVyLWJhci1saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmZpbHRlci1iYXItbGlzdCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY291bnRlci1pbmNyZW1lbnQ6IHJlYWRpbmctbGlzdC1jb3VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZpbHRlci1iYXItbGlzdCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5maWx0ZXItYmFyLWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5maWx0ZXItYmFyLWxpc3QgbGkuaXMtc2VsZWN0ZWQge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZmlsdGVyLWJhci1saXN0IGxpOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmZpbHRlci1iYXItbGlzdCB7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5maWx0ZXItYmFyLmlzLXNpZGViYXIge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZmlsdGVyLWJhci5pcy1zaWRlYmFyIC5maWx0ZXItYmFyLWxpc3QtY29udGFpbmVyIHtcbiAgcGFkZGluZzogNDVweCAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNoYWRvdzogMHB4IDZweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG59XG5cbi5maWx0ZXItYmFyLmlzLXNpZGViYXIgLmZpbHRlci1iYXItbGlzdC1jb250YWluZXIgbGkge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5maWx0ZXItYmFyLmlzLXNpZGViYXIgLmZpbHRlci1iYXItaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMjhweDtcbn1cblxuLmZpbHRlci1iYXIgLmN1c3RvbS1kcm9wZG93biB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ibG9nLWxpc3RpbmctaGVhZGluZyB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5ibG9nLWxpc3RpbmctaGVhZGluZyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5ibG9nLWxpc3RpbmctbGlzdCB7XG4gIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBoZWlnaHQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ibG9nLWxpc3RpbmctbGlzdCB7XG4gICAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIH1cbn1cblxuLmJsb2ctbGlzdGluZyBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGFsbDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ibG9nLWxpc3RpbmcgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxuLmJsb2ctbGlzdGluZyBsaS5pcy1oaWRpbmcge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uYmxvZy1saXN0aW5nIGxpLmlzLWhpZGluZyAuaW5mby1jYXJkIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblxuLmJsb2ctbGlzdGluZyBsaS5pcy1oaWRkZW4ge1xuICBmbGV4LWJhc2lzOiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYmxvZy1saXN0aW5nIC5pbmZvLWNhcmQge1xuICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgYWxsO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmJsb2ctbGlzdGluZyAuaW5mby1jYXJkIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4OiAxO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuYmxvZy1saXN0aW5nIC5pbmZvLWNhcmQtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5ibG9nLWxpc3RpbmcgLmluZm8tY2FyZC1tZXRhIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICB9XG59XG5cbi5ibG9nLWxpc3RpbmcgLmxvYWQtbW9yZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmJsb2ctbGlzdGluZyAubG9hZC1tb3JlIGJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi5ibG9nLWxpc3RpbmctLXYyIC5ibG9nLWxpc3RpbmctaGVhZGluZyB7XG4gIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICBjb2xvcjogIzI5MjkyOTtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZ1bGx3aWR0aC1jYWxsb3V0IHtcbiAgICBtYXJnaW46IDEwMHB4IDA7XG4gIH1cbn1cblxuLmZ1bGx3aWR0aC1jYWxsb3V0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZ1bGx3aWR0aC1jYWxsb3V0LWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG59XG5cbi5mdWxsd2lkdGgtY2FsbG91dC1jb250ZW50IHtcbiAgcGFkZGluZzogNjBweCA1MyUgNjBweCAxNTBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNDQwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5mdWxsd2lkdGgtY2FsbG91dC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA2MHB4IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZnVsbHdpZHRoLWNhbGxvdXQtY29udGVudCB7XG4gICAgcGFkZGluZzogNjBweCA0MHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5mdWxsd2lkdGgtY2FsbG91dC1jb250ZW50IHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG59XG5cbi5mdWxsd2lkdGgtY2FsbG91dC1jb250ZW50IC5idXR0b24ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uZnVsbHdpZHRoLWNhbGxvdXQtY29udGVudC13cmFwcGVyID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZ1bGx3aWR0aC1jYWxsb3V0LW1hc2sge1xuICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgYm90dG9tIHJpZ2h0IHVybCguLi9pbWFnZXMvc2VydmljZXMtbWFzay5zdmcpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuLmZ1bGx3aWR0aC1jYWxsb3V0LWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmZ1bGx3aWR0aC1jYWxsb3V0LWltYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5mdWxsd2lkdGgtY2FsbG91dC5pcy1pbWFnZS1jZW50ZXJlZCAuZnVsbHdpZHRoLWNhbGxvdXQtaW1hZ2Uge1xuICBib3R0b206IGF1dG87XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5mdWxsd2lkdGgtY2FsbG91dC5pcy1pbWFnZS1sZWZ0IC5mdWxsd2lkdGgtY2FsbG91dC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA2MHB4IDg1cHggNjBweCA1OSU7XG4gIH1cbn1cblxuLmZ1bGx3aWR0aC1jYWxsb3V0LmlzLWltYWdlLWxlZnQgLmZ1bGx3aWR0aC1jYWxsb3V0LWltYWdlIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbmFydGljbGUuZ2V0LXF1b3RlIHtcbiAgcGFkZGluZzogMTAwcHggMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjZmY2NjMzIDAlLCAjZmZjYzAwIDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3MsIGFydGljbGUuZ2V0LXF1b3RlIC5lcnJvci1tZXNzYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIsIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmc6IDYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIgcCwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1zdWNjZXNzIHAge1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbmFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtY29udGFpbmVyIGgzLCBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3MgaDMge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtY29udGFpbmVyLCBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3Mge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLWNvbnRhaW5lciwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1zdWNjZXNzIHtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICB9XG59XG5cbmFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtY29udGFpbmVyLnR3by1jb2x1bW4gLmNoZWNrYm94LWNvbnRhaW5lciwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1zdWNjZXNzLnR3by1jb2x1bW4gLmNoZWNrYm94LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIudHdvLWNvbHVtbiAuY2hlY2tib3gtY29udGFpbmVyIC5lcnJvciwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1zdWNjZXNzLnR3by1jb2x1bW4gLmNoZWNrYm94LWNvbnRhaW5lciAuZXJyb3Ige1xuICBsZWZ0OiBjYWxjKDUwJSAtIDIyN3B4KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLWNvbnRhaW5lci50d28tY29sdW1uIC5jaGVja2JveC1jb250YWluZXIgLmVycm9yOmJlZm9yZSwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1zdWNjZXNzLnR3by1jb2x1bW4gLmNoZWNrYm94LWNvbnRhaW5lciAuZXJyb3I6YmVmb3JlIHtcbiAgbGVmdDogY2FsYyg1MCUgLSA0NnB4KTtcbiAgdG9wOiBjYWxjKDUwJSAtIDQ4cHgpO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtY29udGFpbmVyLnR3by1jb2x1bW4gLmNoZWNrYm94LWNvbnRhaW5lciAuZXJyb3IsIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2Vzcy50d28tY29sdW1uIC5jaGVja2JveC1jb250YWluZXIgLmVycm9yIHtcbiAgICBsZWZ0OiAwcHg7XG4gIH1cbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIgLmNoZWNrYm94LWNvbnRhaW5lciAuZXJyb3IsIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2VzcyAuY2hlY2tib3gtY29udGFpbmVyIC5lcnJvciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIgLmNoZWNrYm94LWNvbnRhaW5lciAuZXJyb3I6YmVmb3JlLCBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3MgLmNoZWNrYm94LWNvbnRhaW5lciAuZXJyb3I6YmVmb3JlIHtcbiAgbGVmdDogNDBweDtcbiAgdG9wOiAtMjdweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLWNvbnRhaW5lci5vbmUtY29sdW1uIGZvcm0sIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2Vzcy5vbmUtY29sdW1uIGZvcm0ge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA4KSArIDE0MHB4IC0gLjFweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMikgKyAyMHB4ICsgMjBweCkgIWltcG9ydGFudDtcbiAgfVxuICBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLWNvbnRhaW5lci5vbmUtY29sdW1uIGZvcm06Zmlyc3QtY2hpbGQsIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2Vzcy5vbmUtY29sdW1uIGZvcm06Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIub25lLWNvbHVtbiBmb3JtOmZpcnN0LWNoaWxkLCBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3Mub25lLWNvbHVtbiBmb3JtOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyggKCgoMTAwJSAtIDIyMHB4KSAvIDEyKSAqIDIpICsgMjBweCArIDIwcHgpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIudHdvLWNvbHVtbiBoMiwgYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1zdWNjZXNzLnR3by1jb2x1bW4gaDIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIudHdvLWNvbHVtbiAuZmlyc3QtY29sdW1uLCBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3MudHdvLWNvbHVtbiAuZmlyc3QtY29sdW1uIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMCAzMHB4IDAgMTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLWNvbnRhaW5lci50d28tY29sdW1uIC5maXJzdC1jb2x1bW4sIGFydGljbGUuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtc3VjY2Vzcy50d28tY29sdW1uIC5maXJzdC1jb2x1bW4ge1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgfVxufVxuXG5hcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLWNvbnRhaW5lci50d28tY29sdW1uIC5zZWNvbmQtY29sdW1uLCBhcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLXN1Y2Nlc3MudHdvLWNvbHVtbiAuc2Vjb25kLWNvbHVtbiB7XG4gIHBhZGRpbmc6IDAgMTBweCAwIDMwcHg7XG59XG5cbmFydGljbGUuZ2V0LXF1b3RlIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSAuZ2V0LXF1b3RlLWFib3V0IHtcbiAgbWFyZ2luOiAzMHB4IDA7XG59XG5cbmFydGljbGUuZ2V0LXF1b3RlIHAuZ2V0LXF1b3RlLXJlcXVpcmVkIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSBmb3JtIHAuaW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSBmb3JtIC5pdGVtLmNpdHkge1xuICBmbGV4LWdyb3c6IDEuNTtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgZm9ybSBzZWxlY3Qge1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSBmb3JtIC5idXR0b25zIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgZm9ybSAuZGlzY2xhaW1lci1jaGVja2JveCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgZm9ybSAuZGlzY2xhaW1lci1jaGVja2JveCBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSBmb3JtIC5kaXNjbGFpbWVyLWNoZWNrYm94IGlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG5hcnRpY2xlLmdldC1xdW90ZSBmb3JtIHAubGVnYWwge1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuYXJ0aWNsZS5nZXQtcXVvdGUgZm9ybSBwLmxlZ2FsIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5nZXQtcXVvdGUgLmNoZWNrYm94LWxpc3Qge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLmNlbnRlci1xdW90ZSAuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtY29udGFpbmVyIC5jaGVja2JveC1jb250YWluZXIgLmVycm9yIHtcbiAgbGVmdDogY2FsYyg1MCUgLSAyMjdweCk7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY2VudGVyLXF1b3RlIC5nZXQtcXVvdGUgLmdldC1xdW90ZS1jb250YWluZXIgLmNoZWNrYm94LWNvbnRhaW5lciAuZXJyb3Ige1xuICAgIGxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuLmNlbnRlci1xdW90ZSAuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtY29udGFpbmVyIC5jaGVja2JveC1jb250YWluZXIgLmVycm9yOmJlZm9yZSB7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gNDZweCk7XG4gIHRvcDogY2FsYyg1MCUgLSA0OHB4KTtcbn1cblxuZGl2Lm92ZXJsYXkge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IDAuNXM7XG59XG5cbmRpdi5vdmVybGF5IC5vdmVybGF5LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDE4MHB4O1xuICB3aWR0aDogMzYwcHg7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMTgwcHgpO1xuICB0b3A6IGNhbGMoNTAlIC0gOTBweCk7XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogMzVweDtcbn1cblxuZGl2Lm92ZXJsYXkgLm92ZXJsYXktY29udGVudCAub3ZlcmxheS1zcGlubmVyIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJvcmRlcjogNXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgYmxhY2sgYmxhY2s7XG4gIGFuaW1hdGlvbjogbG9hZGluZ1NwaW5uZXIgLjdzIGluZmluaXRlIGxpbmVhcjtcbiAgLW8tYW5pbWF0aW9uOiBsb2FkaW5nU3Bpbm5lciAuN3MgaW5maW5pdGUgbGluZWFyO1xuICAtbXMtYW5pbWF0aW9uOiBsb2FkaW5nU3Bpbm5lciAuN3MgaW5maW5pdGUgbGluZWFyO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbG9hZGluZ1NwaW5uZXIgLjdzIGluZmluaXRlIGxpbmVhcjtcbiAgLW1vei1hbmltYXRpb246IGxvYWRpbmdTcGlubmVyIC43cyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbmRpdi5vdmVybGF5IC5vdmVybGF5LWNvbnRlbnQgLm92ZXJsYXktdGV4dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuZGl2Lm92ZXJsYXkgLm92ZXJsYXktY29udGVudCAub3ZlcmxheS10ZXh0IGg0IHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBtYXJnaW46IDIwcHggMCAwIDA7XG59XG5cbmRpdi5vdmVybGF5IC5vdmVybGF5LWNvbnRlbnQgLm92ZXJsYXktdGV4dCBwIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBtYXJnaW46IDA7XG59XG5cbkBrZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQC1vLWtleWZyYW1lcyBsb2FkaW5nU3Bpbm5lciB7XG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5ALW1zLWtleWZyYW1lcyBsb2FkaW5nU3Bpbm5lciB7XG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmdTcGlubmVyIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGxvYWRpbmdTcGlubmVyIHtcbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuLmhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oZXJvIC5tYXNrLXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuLmhlcm8gLm1hc2std3JhcHBlci50b3AtY3VydmUge1xuICBtYXNrLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2N1cnZlLW1hc2sucG5nKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogNTAlIDEwMCU7XG4gIG1hc2stc2l6ZTogY292ZXI7XG59XG5cbi5oZXJvIC5tYXNrLXdyYXBwZXIudG9wLWN1cnZlIC5iZyB7XG4gIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvY3VydmUtbWFzay5wbmcpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiA1MCUgMDtcbiAgbWFzay1zaXplOiBjb3Zlcjtcbn1cblxuLmhlcm8gLmJnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogNDY1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhlcm8gLmJnIHtcbiAgICBoZWlnaHQ6IDI0MHB4O1xuICB9XG59XG5cbi5oZXJvLmNlbnRlci1iZyAuYmcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcbn1cblxuLmhlcm8gLnZpZGVvLWJnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaGVybyAudGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICBtaW4taGVpZ2h0OiA0NjVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGVybyAudGl0bGUge1xuICAgIG1pbi1oZWlnaHQ6IDI0MHB4O1xuICB9XG59XG5cbi5oZXJvOm5vdCguaGVyby0tY29sdW1ucykgaDE6bm90KC5jbGVhci10aXRsZSkge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGVybzpub3QoLmhlcm8tLWNvbHVtbnMpIGgxOm5vdCguY2xlYXItdGl0bGUpID4gc3BhbiB7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBiYWNrZ3JvdW5kOiAjRkY4MjAwO1xufVxuXG4uaGVybzpub3QoLmhlcm8tLWNvbHVtbnMpIGgxOm5vdCguY2xlYXItdGl0bGUpID4gc3BhbiA+IHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IDVweCAyMHB4O1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgY29sb3I6ICNmZmY7XG4gIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlcm86bm90KC5oZXJvLS1jb2x1bW5zKSBoMTpub3QoLmNsZWFyLXRpdGxlKSA+IHNwYW4gPiBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQgdG9wLCAjRjE1NTIzIDIwJSwgI0ZGQkUwMSA4MCUpO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGVybzpub3QoLmhlcm8tLWNvbHVtbnMpIGgxOm5vdCguY2xlYXItdGl0bGUpID4gc3BhbiA+IHNwYW4ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICB9XG59XG5cbi5oZXJvLmlzLXNtYWxsIC50aXRsZSB7XG4gIG1pbi1oZWlnaHQ6IDM2NXB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oZXJvLmlzLXNtYWxsIC50aXRsZSB7XG4gICAgbWluLWhlaWdodDogMTY1cHg7XG4gIH1cbn1cblxuLmhlcm8udG9wIC50aXRsZSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4uaGVyby5taWRkbGUgLnRpdGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmhlcm8uYm90dG9tIC50aXRsZSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGVyby5ib3R0b20gLnRpdGxlIHtcbiAgICB0b3A6IDEwcHg7XG4gIH1cbn1cblxuLmhlcm8ubGVmdCAudGl0bGUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5oZXJvLmNlbnRlciAudGl0bGUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmhlcm8ucmlnaHQgLnRpdGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmhlcm8tLWNvbHVtbnMgLmJnIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uaGVyby0tY29sdW1ucyAudGl0bGUge1xuICBwYWRkaW5nOiA0MHB4IDA7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmhlcm8tLWNvbHVtbnMgLnRpdGxlIHtcbiAgICBwYWRkaW5nOiA0MHB4IDAgNjBweCAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaGVyby0tY29sdW1ucyAudGl0bGUgLmZsZXgtZ3JpZCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uaGVyby0tY29sdW1ucyAuaGVyby1oZWFkaW5nID4gKjpmaXJzdC1jaGlsZCwgLmhlcm8tLWNvbHVtbnMgLmhlcm8tY29udGVudCA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uaGVyby0tY29sdW1ucyAuaGVyby1oZWFkaW5nID4gKjpsYXN0LWNoaWxkLCAuaGVyby0tY29sdW1ucyAuaGVyby1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5oZXJvLS1jb2x1bW5zLnJpZ2h0IC5mbGV4LWdyaWQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuICAuaGVyby0tY29sdW1ucy5yaWdodCAuZmFxLWF1dG9jb21wbGV0ZS1mb3JtIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmhlcm8tLWNvbHVtbnMuY2VudGVyIC5mbGV4LWdyaWQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAuaGVyby0tY29sdW1ucy5jZW50ZXIgLmZhcS1hdXRvY29tcGxldGUtZm9ybSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlcm8tLWNvbHVtbnMuYm90dG9tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTdweDtcbiAgfVxufVxuXG4uaGVyby1jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cblxuLmhlcm8gLmZhcS1hdXRvY29tcGxldGUtZm9ybSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1heC13aWR0aDogNTE1cHg7XG59XG5cbmFydGljbGUuaG9tZXBhZ2UtaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMTEwcHg7XG59XG5cbmFydGljbGUuaG9tZXBhZ2UtaGVybyAubWFzay13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbmFydGljbGUuaG9tZXBhZ2UtaGVybyAubWFzay13cmFwcGVyLnRvcC1jdXJ2ZSB7XG4gIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvY3VydmUtbWFzay5wbmcpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiA1MCUgMTAwJTtcbiAgbWFzay1zaXplOiBjb3Zlcjtcbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIC5tYXNrLXdyYXBwZXIudG9wLWN1cnZlIC5iZyB7XG4gIG1hc2staW1hZ2U6IHVybCguLi9pbWFnZXMvY3VydmUtbWFzay5wbmcpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiA1MCUgMDtcbiAgbWFzay1zaXplOiBjb3Zlcjtcbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIC5iZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbmFydGljbGUuaG9tZXBhZ2UtaGVybyAud3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDE1MHB4IDBweDtcbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIC53cmFwcGVyLmhhcy12aWRlby1iZyB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIC5tYXNrLXdyYXBwZXIgfiAud3JhcHBlciB7XG4gIHBhZGRpbmc6IDEyNXB4IDBweDtcbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIGRpdi5oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIGRpdi5jdGEgLmJ1dHRvbiB7XG4gIG1hcmdpbjogNXB4IDMwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5ob21lcGFnZS1oZXJvIGRpdi5jdGEge1xuICAgIG1hcmdpbi10b3A6IDcycHg7XG4gIH1cbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIGgxIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuYXJ0aWNsZS5ob21lcGFnZS1oZXJvIGgxID4gc3BhbiB7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBiYWNrZ3JvdW5kOiAjRkY4MjAwO1xufVxuXG5hcnRpY2xlLmhvbWVwYWdlLWhlcm8gaDEgPiBzcGFuID4gc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgcGFkZGluZzogNXB4IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBjb2xvcjogI2ZmZjtcbiAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBhcnRpY2xlLmhvbWVwYWdlLWhlcm8gaDEgPiBzcGFuID4gc3BhbiB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0IHRvcCwgI0YxNTUyMyAyMCUsICNGRkJFMDEgODAlKTtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5ob21lcGFnZS1oZXJvIGgxID4gc3BhbiA+IHNwYW4ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICB9XG59XG5cbmFydGljbGUuaG9tZXBhZ2UtaGVybyAudmlkZW8tYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbmFydGljbGUuaG9tZXBhZ2UtaGVybyAubW9iaWxlLCBhcnRpY2xlLmhvbWVwYWdlLWhlcm8gLnRhYmxldCwgYXJ0aWNsZS5ob21lcGFnZS1oZXJvIC5kZXNrdG9wIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBhcnRpY2xlLmhvbWVwYWdlLWhlcm8gLm1vYmlsZSB7XG4gICAgZGlzcGxheTogaW5pdGlhbDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIGFydGljbGUuaG9tZXBhZ2UtaGVybyAudGFibGV0IHtcbiAgICBkaXNwbGF5OiBpbml0aWFsO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGFydGljbGUuaG9tZXBhZ2UtaGVybyAuZGVza3RvcCB7XG4gICAgZGlzcGxheTogaW5pdGlhbDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUuaG9tZXBhZ2UtaGVyby50b3AgLmhlYWRlciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgYXJ0aWNsZS5ob21lcGFnZS1oZXJvLm1pZGRsZSAuaGVhZGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIGFydGljbGUuaG9tZXBhZ2UtaGVyby5ib3R0b20gLmhlYWRlciB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG4gIGFydGljbGUuaG9tZXBhZ2UtaGVyby5sZWZ0IC5oZWFkZXIge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICBhcnRpY2xlLmhvbWVwYWdlLWhlcm8uY2VudGVyIC5oZWFkZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIGFydGljbGUuaG9tZXBhZ2UtaGVyby5yaWdodCAuaGVhZGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG59XG5cbmFydGljbGUuaG9tZXBhZ2UtaGVyby5ob21lcGFnZSB7XG4gIG1hcmdpbi10b3A6IDExMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGFydGljbGUuaG9tZXBhZ2UtaGVyby5ob21lcGFnZSB7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICB9XG59XG5cbmFydGljbGUuaHIge1xuICBtYXJnaW46IDAgMCA1MHB4IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS5ociB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLmltYWdlIHtcbiAgICBtYXJnaW46IDEwMHB4IDA7XG4gIH1cbn1cblxuLmltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaW1hZ2UtY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5pbWFnZSBpbWcge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5pbWFnZS1jb2xsYWdlLWdyaWQgPiBbY2xhc3MqPVwiaXMtXCJdIHtcbiAgbWluLXdpZHRoOiAwO1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkID4gW2NsYXNzKj1cImlzLVwiXTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmltYWdlLWNvbGxhZ2UtZ3JpZCAuaXMtZnVsbCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmltYWdlLWNvbGxhZ2UtZ3JpZCAuaXMtMVxcLzIge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkIC5pcy0xXFwvMyB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkIC5pcy0yXFwvMyB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDY2LjY2NjYlO1xuICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkIC5pcy0xXFwvNCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5pbWFnZS1jb2xsYWdlLWdyaWQgLmlzLTNcXC80IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLmltYWdlLWNvbGxhZ2UtZ3JpZCAuaXMtMVxcLzYge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAxNi42NjY2NiU7XG4gIG1heC13aWR0aDogMTYuNjY2NjYlO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkIC5pcy01XFwvNiB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkIC5pcy0xXFwvNSB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDIwJTtcbiAgbWF4LXdpZHRoOiAyMCU7XG59XG5cbi5pbWFnZS1jb2xsYWdlLWdyaWQgLmlzLTJcXC81IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogNDAlO1xuICBtYXgtd2lkdGg6IDQwJTtcbn1cblxuLmltYWdlLWNvbGxhZ2UtZ3JpZCAuaXMtM1xcLzUge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA2MCU7XG4gIG1heC13aWR0aDogNjAlO1xufVxuXG4uaW1hZ2UtY29sbGFnZS1ncmlkIC5pcy00XFwvNSB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDgwJTtcbiAgbWF4LXdpZHRoOiA4MCU7XG59XG5cbi5pbWFnZS1jb2xsYWdlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmltYWdlLWNvbGxhZ2Utd3JhcHBlciB7XG4gIG1hcmdpbjogMCAtMTBweDtcbn1cblxuLmltYWdlLWNvbGxhZ2UgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcGFkZGluZzogNXB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5pbWFnZS1jb2xsYWdlIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIHBhZGRpbmc6IDNweDtcbiAgfVxufVxuXG4uaW1hZ2UtY29sbGFnZSAuYXNwZWN0LXJhdGlvLTNcXC80IHtcbiAgcGFkZGluZy1ib3R0b206IDEzMy4zMzMlO1xufVxuXG4uaW5mby1jYXJkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaW5mby1jYXJkLW1lZGlhIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5pbmZvLWNhcmQtdGl0bGUge1xuICBjb2xvcjogIzJENzJGNztcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmluZm8tY2FyZC1tZXRhIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBtYXJnaW46IDAgLTVweDtcbn1cblxuLmluZm8tY2FyZC1tZXRhID4gc3BhbiB7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5pbmZvLWNhcmQtZGVzY3JpcHRpb24ge1xuICBwYWRkaW5nOiAwIDI1cHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5pbmZvLWNhcmQtZGVzY3JpcHRpb24gPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uaW5mby1jYXJkLWRlc2NyaXB0aW9uLmZhZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5pbmZvLWNhcmQtZGVzY3JpcHRpb24uZmFkZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA3MCU7XG4gIGhlaWdodDogMS41ZW07XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgd2hpdGUgNTAlKTtcbn1cblxuLmluZm8tY2FyZC1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmluZm8tY2FyZC10YWdzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAgLTVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmluZm8tY2FyZC10YWdzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgNXB4O1xufVxuXG4uaW5mby1jYXJkLXRhZ3MgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogIzJENzJGNztcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uaW5mby1jYXJkLmlzLW9wcG9zaXRlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaW5mby1jYXJkLmlzLWhvcml6b250YWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5pbmZvLWNhcmQuaXMtaG9yaXpvbnRhbCAuaW5mby1jYXJkLW1lZGlhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5pbmZvLWNhcmQuaXMtaG9yaXpvbnRhbCAuaW5mby1jYXJkLWRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5pbmZvLWNhcmQuaXMtaG9yaXpvbnRhbCAuaW5mby1jYXJkLWhlYWRlciB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgfVxuICAuaW5mby1jYXJkLmlzLWhvcml6b250YWwgLmluZm8tY2FyZC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gIC5pbmZvLWNhcmQuaXMtaG9yaXpvbnRhbCAuaW5mby1jYXJkLWhlYWRlciArIC5pbmZvLWNhcmQtY29udGVudCB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4O1xuICB9XG4gIC5pbmZvLWNhcmQuaXMtaG9yaXpvbnRhbC5pcy1wYWRkZWQgLmluZm8tY2FyZC1oZWFkZXIgKyAuaW5mby1jYXJkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDEwcHggMCAxMHB4IDQwcHg7XG4gIH1cbiAgLmluZm8tY2FyZC5pcy1wYWRkZWQge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbn1cblxuLmluZm8tY2FyZC5oYXMtc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbn1cblxuLmluZm8tY2FyZC5pcy1yb3VuZGVkIC5pbmZvLWNhcmQtbWVkaWEge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4uaW5mby1jYXJkLS12Mi5pcy1ob3Jpem9udGFsIC5pbmZvLWNhcmQtaGVhZGVyICsgLmluZm8tY2FyZC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW5mby1jYXJkLS12Mi5pcy1ob3Jpem9udGFsIC5pbmZvLWNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uaW5mby1jYXJkLS12Mi5pcy1ob3Jpem9udGFsIC5pbmZvLWNhcmQtY29udGVudCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMDEuMThkZWcsICNGRkZGRkYgNDguNzIlLCAjQjNCM0IzIDE0MS44JSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuaW5mby1jYXJkLS12Mi5pcy1ob3Jpem9udGFsIC5pbmZvLWNhcmQtbWVkaWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgLmluZm8tY2FyZC0tdjIuaXMtaG9yaXpvbnRhbCAuaW5mby1jYXJkLW1lZGlhIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmluZm8tY2FyZC0tdjIuaXMtaG9yaXpvbnRhbC5pcy1zbWFsbCAuaW5mby1jYXJkLWhlYWRlciArIC5pbmZvLWNhcmQtY29udGVudCB7XG4gICAgcGFkZGluZzogMzVweDtcbiAgfVxufVxuXG4uaW5mby1jYXJkLS12Mjpub3QoLmlzLWhvcml6b250YWwpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaW5mby1jYXJkLS12Mjpub3QoLmlzLWhvcml6b250YWwpOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyMHB4O1xuICBsZWZ0OiA0MHB4O1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBvcGFjaXR5OiAwLjM7XG4gIGZpbHRlcjogYmx1cigzMHB4KTtcbiAgei1pbmRleDogMDtcbn1cblxuLmluZm8tY2FyZC0tdjIgLmluZm8tY2FyZC1oZWFkZXIgKyAuaW5mby1jYXJkLWNvbnRlbnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmluZm8tY2FyZC0tdjIgLmluZm8tY2FyZC1oZWFkZXIgKyAuaW5mby1jYXJkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDUwcHggNTVweDtcbiAgfVxufVxuXG4uaW5mby1jYXJkLS12MiAuaW5mby1jYXJkLWRlc2NyaXB0aW9uIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmluZm8tY2FyZC0tdjIgLmluZm8tY2FyZC1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIyNi4zOWRlZywgI0ZGRkZGRiA0OC43MiUsICNCM0IzQjMgMTQxLjglKTtcbiAgcGFkZGluZzogMzVweCAzMHB4O1xufVxuXG4uaW5mby1jYXJkLS12MiAuaW5mby1jYXJkLWNvbnRlbnQgPiBhOmhvdmVyLCAuaW5mby1jYXJkLS12MiAuaW5mby1jYXJkLWNvbnRlbnQgPiBhOmZvY3VzLCAuaW5mby1jYXJkLS12MiAuaW5mby1jYXJkLWNvbnRlbnQgPiBhOmFjdGl2ZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmluZm8tY2FyZC0tdjIgLmluZm8tY2FyZC1tZWRpYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5pbmZvLWNhcmQtLXYyIC5pbmZvLWNhcmQtbWVkaWEgaW1nIHtcbiAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaW5mby1jYXJkLS12MiAuaW5mby1jYXJkLW1lZGlhLCAuaW5mby1jYXJkLS12MiAuaW5mby1jYXJkLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5pbmZvLWNhcmQtLXYyIC5pbmZvLWNhcmQtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaW5mby1jYXJkLS12MiAuaW5mby1jYXJkLXRpdGxlIHtcbiAgY29sb3I6ICMyOTI5Mjk7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cblxuLmluZm8tY2FyZC0tdjIgLmluZm8tY2FyZC10YWdzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmluZm8tY2FyZC0tdjIgLmluZm8tY2FyZC10YWdzIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5pbmZvLWNhcmQtLXYyIC5pbmZvLWNhcmQtbWV0YSB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5pbmZvZ3JhcGhpYyB7XG4gIC8qbWFyZ2luOiA3NXB4IDA7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgIG1hcmdpbjogMzVweCAwO1xyXG4gICAgfSovXG59XG5cbi5pbmZvZ3JhcGhpYy10YWJzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAtMjVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaW5mb2dyYXBoaWMtdGFicyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuXG4uaW5mb2dyYXBoaWMtdGFicyBbcm9sZT1cInRhYmxpc3RcIl0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB6LWluZGV4OiAxO1xufVxuXG4uaW5mb2dyYXBoaWMtdGFicyBbcm9sZT1cInRhYlwiXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAyNXB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0IGFsbDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5pbmZvZ3JhcGhpYy10YWJzIFtyb2xlPVwidGFiXCJdIHtcbiAgICBwYWRkaW5nOiAyNXB4IDEwcHg7XG4gIH1cbn1cblxuLmluZm9ncmFwaGljLXRhYnMgW3JvbGU9XCJ0YWJcIl06bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaW5mb2dyYXBoaWMtdGFicyBbcm9sZT1cInRhYlwiXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjVweDtcbiAgdG9wOiAyNXB4O1xuICB3aWR0aDogMXB4O1xuICByaWdodDogLTJweDtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgI0M0QzRDNDtcbiAgY29udGVudDogJyc7XG59XG5cbi5pbmZvZ3JhcGhpYy10YWJzIFtyb2xlPVwidGFiXCJdW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGNvbG9yOiAjZmY4ZjFmO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uaW5mb2dyYXBoaWMtdGFicyBbcm9sZT1cInRhYlwiXTpob3Zlcixcbi5pbmZvZ3JhcGhpYy10YWJzIFtyb2xlPVwidGFiXCJdOmZvY3VzLFxuLmluZm9ncmFwaGljLXRhYnMgW3JvbGU9XCJ0YWJcIl06YWN0aXZlIHtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmluZm9ncmFwaGljLXRhYnMgW3JvbGU9XCJ0YWJwYW5lbFwiXSB7XG4gIHBhZGRpbmc6IC41ZW0gLjVlbSAuN2VtO1xufVxuXG4uaW5mb2dyYXBoaWMtdGFicyBbcm9sZT1cInRhYnBhbmVsXCJdOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLmluZm9ncmFwaGljLXRhYnMgW3JvbGU9XCJ0YWJwYW5lbFwiXSBwIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uaW5mb2dyYXBoaWMtdGFicyBbcm9sZT1cInRhYnBhbmVsXCJdICogKyBwIHtcbiAgbWFyZ2luLXRvcDogMWVtO1xufVxuXG4uaW5mb2dyYXBoaWMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmluZm9ncmFwaGljLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogNzVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaW5mb2dyYXBoaWMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMzVweDtcbiAgfVxufVxuXG4uaW5mb2dyYXBoaWMgLndyYXBwZXItbWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbmZvZ3JhcGhpYy1iYWNrZ3JvdW5kLFxuLmluZm9ncmFwaGljIC5tYXNrLXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuLmluZm9ncmFwaGljLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZGRkZGIDQzLjE3JSwgIzkwQzVGRiAxMDAlKTtcbn1cblxuLmluZm9ncmFwaGljLWJhY2tncm91bmQuaXMtbmlnaHQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMUMxQzFDIDUzLjE3JSwgIzJCMjc2QiA4NC45OSUpO1xufVxuXG4uaW5mb2dyYXBoaWMtdG9nZ2xlIHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcbn1cblxuLmluZm9ncmFwaGljIFtyb2xlPVwidGFicGFuZWxcIl0gW2RhdGEtdG9nZ2xlLXRyYW5zaXRpb25dIC5pbmZvZ3JhcGhpYy1iYWNrZ3JvdW5kIHtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGFsbDtcbn1cblxuLmluZm9ncmFwaGljIFtyb2xlPVwidGFicGFuZWxcIl0uZGF5IFtkYXRhLXRvZ2dsZS10cmFuc2l0aW9uPVwibmlnaHRcIl0gLmluZm9ncmFwaGljLWJhY2tncm91bmQge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaW5mb2dyYXBoaWMgW3JvbGU9XCJ0YWJwYW5lbFwiXS5kYXkgW2RhdGEtdG9nZ2xlLXRyYW5zaXRpb249XCJkYXlcIl0gLmluZm9ncmFwaGljLWJhY2tncm91bmQge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaW5mb2dyYXBoaWMgW3JvbGU9XCJ0YWJwYW5lbFwiXS5uaWdodCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uaW5mb2dyYXBoaWMgW3JvbGU9XCJ0YWJwYW5lbFwiXS5uaWdodCBbZGF0YS10b2dnbGUtdHJhbnNpdGlvbj1cIm5pZ2h0XCJdIC5pbmZvZ3JhcGhpYy1iYWNrZ3JvdW5kIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmluZm9ncmFwaGljIFtyb2xlPVwidGFicGFuZWxcIl0ubmlnaHQgW2RhdGEtdG9nZ2xlLXRyYW5zaXRpb249XCJkYXlcIl0gLmluZm9ncmFwaGljLWJhY2tncm91bmQge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaW5mb2dyYXBoaWMgW3JvbGU9XCJ0YWJsaXN0XCJdLm5pZ2h0IHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5pbmZvZ3JhcGhpYyAuY3VzdG9tLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uaW5mb2dyYXBoaWMgLmN1c3RvbS10b2dnbGVfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWluLXdpZHRoOiAxMjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaW5mb2dyYXBoaWMgLmN1c3RvbS10b2dnbGVfX2xhYmVsIHtcbiAgICBtaW4td2lkdGg6IDkwcHg7XG4gIH1cbn1cblxuLmluZm9ncmFwaGljIC5jdXN0b20tdG9nZ2xlX19sYWJlbCBpbWcge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5pbmZvZ3JhcGhpYyAuaXMtb2ZmOmNoZWNrZWQgfiAuY3VzdG9tLXRvZ2dsZV9fc3dpdGNoZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uaW5mb2dyYXBoaWMgLmlzLW9mZjpjaGVja2VkIH4gLmN1c3RvbS10b2dnbGVfX2JhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc1NzU3O1xufVxuXG4uaW5mb2dyYXBoaWMgLmlzLW9uOmNoZWNrZWQgfiAuY3VzdG9tLXRvZ2dsZV9fc3dpdGNoZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY0ODFhO1xufVxuXG4uaW5mb2dyYXBoaWMgLmlzLW9uOmNoZWNrZWQgfiAuY3VzdG9tLXRvZ2dsZV9fYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFOEU4RTg7XG59XG5cbi5uZXdzLXByZXNzLWhlYWRpbmcge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ubmV3cy1wcmVzcy12aWRlb3MtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLm5ld3MtcHJlc3MtdmlkZW9zLWNvbnRhaW5lciAudG5zLW5hdiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5ld3MtcHJlc3MtdmlkZW9zLWNvbnRhaW5lciAudG5zLWNvbnRyb2xzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ubmV3cy1wcmVzcy12aWRlb3MtY29udGFpbmVyIFtkYXRhLWNvbnRyb2xzXSwgLm5ld3MtcHJlc3MtdmlkZW9zLWNvbnRhaW5lciBbZGF0YS1uYXZdIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IGluaXRpYWw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5uZXdzLXByZXNzLXZpZGVvcy1jb250YWluZXIgW2RhdGEtbmF2XSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW46IDJweDtcbn1cblxuLm5ld3MtcHJlc3MtdmlkZW9zLWNvbnRhaW5lciBbZGF0YS1uYXZdLnRucy1uYXYtYWN0aXZlIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiAjRkY2QjBCO1xufVxuXG4ubmV3cy1wcmVzcy12aWRlb3MgLnZpZGVvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5ld3MtcHJlc3MtY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLm5ld3MtcHJlc3MtY29udGFpbmVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5ld3MtcHJlc3MgZGl2Lm5ld3Mge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA0KSArIDYwcHggLSAuMXB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoICgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiAxKSArIDBweCArIDIwcHgpICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5ld3MtcHJlc3MgZGl2Lm5ld3M6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5ld3MtcHJlc3MgZGl2Lm5ld3M6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMSkgKyAwcHggKyAyMHB4KSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5uZXdzLXByZXNzIGRpdi5uZXdzIGgxLCAubmV3cy1wcmVzcyBkaXYubmV3cyBoMiwgLm5ld3MtcHJlc3MgZGl2Lm5ld3MgaDMsIC5uZXdzLXByZXNzIGRpdi5uZXdzIGg0LCAubmV3cy1wcmVzcyBkaXYubmV3cyBoNSwgLm5ld3MtcHJlc3MgZGl2Lm5ld3MgaDYge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgIzMzY2NmZiAxMCUsICMzMzMzOTkgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm5ld3MtcHJlc3MgZGl2Lm5ld3MgaDEsIC5uZXdzLXByZXNzIGRpdi5uZXdzIGgyLCAubmV3cy1wcmVzcyBkaXYubmV3cyBoMywgLm5ld3MtcHJlc3MgZGl2Lm5ld3MgaDQsIC5uZXdzLXByZXNzIGRpdi5uZXdzIGg1LCAubmV3cy1wcmVzcyBkaXYubmV3cyBoNiB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5ld3MtcHJlc3MgZGl2LnByZXNzIHtcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogNCkgKyA2MHB4IC0gLjFweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMikgKyAyMHB4ICsgNDBweCkgIWltcG9ydGFudDtcbiAgfVxuICAubmV3cy1wcmVzcyBkaXYucHJlc3M6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5ld3MtcHJlc3MgZGl2LnByZXNzOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyggKCgoMTAwJSAtIDIyMHB4KSAvIDEyKSAqIDIpICsgMjBweCArIDQwcHgpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLm5ld3MtcHJlc3MgZGl2LnByZXNzIGgxLCAubmV3cy1wcmVzcyBkaXYucHJlc3MgaDIsIC5uZXdzLXByZXNzIGRpdi5wcmVzcyBoMywgLm5ld3MtcHJlc3MgZGl2LnByZXNzIGg0LCAubmV3cy1wcmVzcyBkaXYucHJlc3MgaDUsIC5uZXdzLXByZXNzIGRpdi5wcmVzcyBoNiB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjMzMzMzk5IDEwJSwgIzMzY2NmZiAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubmV3cy1wcmVzcyBkaXYucHJlc3MgaDEsIC5uZXdzLXByZXNzIGRpdi5wcmVzcyBoMiwgLm5ld3MtcHJlc3MgZGl2LnByZXNzIGgzLCAubmV3cy1wcmVzcyBkaXYucHJlc3MgaDQsIC5uZXdzLXByZXNzIGRpdi5wcmVzcyBoNSwgLm5ld3MtcHJlc3MgZGl2LnByZXNzIGg2IHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cbn1cblxuLm5ld3MtcHJlc3MgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5uZXdzLXByZXNzIHVsIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLm5ld3MtcHJlc3MgdWwgbGkgZGl2LnNvdXJjZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm5ld3MtcHJlc3MgdWwgbGkgYSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLm5ld3MtcHJlc3MgdWwgbGkgZGl2LmRhdGUge1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5uZXdzLXByZXNzIC5sb2FkLW1vcmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm5ld3MtcHJlc3MgLmxvYWQtbW9yZSB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5cbi5uZXdzLXByZXNzIC5sb2FkLW1vcmUgLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubmV3cy1wcmVzcyBbZGF0YS1sb2FkLW1vcmUtbGlzdF0ge1xuICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgaGVpZ2h0O1xufVxuXG4ucGFnZS1pbnRyby1oZWFkaW5nIHtcbiAgbWFyZ2luOiAwIDAgMzBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGNvbG9yOiAjZmY4ZjFmO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ucGFnZS1pbnRyby1oZWFkaW5nLnRleHQtY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYWdlLWludHJvLWhlYWRpbmcgaDEsIC5wYWdlLWludHJvLWhlYWRpbmcgaDIsIC5wYWdlLWludHJvLWhlYWRpbmcgaDMsIC5wYWdlLWludHJvLWhlYWRpbmcgaDQsIC5wYWdlLWludHJvLWhlYWRpbmcgaDUsIC5wYWdlLWludHJvLWhlYWRpbmcgaDYge1xuICBtYXJnaW46IDA7XG59XG5cbi5wYWdlLWludHJvLWhlYWRpbmcgcCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnBhZ2UtaW50cm8tc3ViaGVhZGluZyB7XG4gIG1hcmdpbjogMCAwIDMwcHg7XG59XG5cbi5wYWdlLWludHJvIC53cmFwcGVyID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0ge1xuICBwYWRkaW5nOiAxMDBweCAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLnBhcnRuZXItZm9ybS1zdWNjZXNzLCBhcnRpY2xlLnBhcnRuZXItZm9ybSAuZXJyb3ItbWVzc2FnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tY29udGFpbmVyLCBhcnRpY2xlLnBhcnRuZXItZm9ybSAucGFydG5lci1mb3JtLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBwYWRkaW5nOiA2MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tY29udGFpbmVyIHAsIGFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tc3VjY2VzcyBwIHtcbiAgZm9udC1zaXplOiAyNHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGFydGljbGUucGFydG5lci1mb3JtIC5wYXJ0bmVyLWZvcm0tY29udGFpbmVyLCBhcnRpY2xlLnBhcnRuZXItZm9ybSAucGFydG5lci1mb3JtLXN1Y2Nlc3Mge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICBhcnRpY2xlLnBhcnRuZXItZm9ybSAucGFydG5lci1mb3JtLWNvbnRhaW5lciwgYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLnBhcnRuZXItZm9ybS1zdWNjZXNzIHtcbiAgICBwYWRkaW5nOiA0MHB4O1xuICB9XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAucGFydG5lci1mb3JtLWFib3V0IHtcbiAgbWFyZ2luOiAzMHB4IDA7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIHAucGFydG5lci1mb3JtLXJlcXVpcmVkIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUucGFydG5lci1mb3JtIGZvcm0ge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA4KSArIDE0MHB4IC0gLjFweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMikgKyAyMHB4ICsgMjBweCkgIWltcG9ydGFudDtcbiAgfVxuICBhcnRpY2xlLnBhcnRuZXItZm9ybSBmb3JtOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIGFydGljbGUucGFydG5lci1mb3JtIGZvcm06Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCAoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogMikgKyAyMHB4ICsgMjBweCkgIWltcG9ydGFudDtcbiAgfVxufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSBmb3JtIHAuaW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSBmb3JtIC5pdGVtLmNpdHkge1xuICBmbGV4LWdyb3c6IDEuNTtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gZm9ybSBidXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogI2ZmOGYxZjtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gZm9ybSAuYnV0dG9ucyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIGZvcm0gcC5sZWdhbCB7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gZm9ybSBwLmxlZ2FsIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIGZvcm0gc2VsZWN0IHtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgcGFkZGluZzogMTdweCAxNXB4O1xuICBoZWlnaHQ6IDU4LjVweDtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gZm9ybSBpbnB1dCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlYWVhZWE7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cztcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gZm9ybSBpbnB1dDpmb2N1cywgYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gZm9ybSBpbnB1dDphY3RpdmUge1xuICBib3gtc2hhZG93OiAwIDAgMHB4IDFweCAjNTU1O1xuICBib3JkZXItY29sb3I6ICNlYWVhZWE7XG4gIG91dGxpbmU6IDA7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveC5hY3RpdmUtbWFya2V0cyB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLmNvbWJvYm94LmFjdGl2ZS1tYXJrZXRzIHVsIHtcbiAgei1pbmRleDogMTtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLm1hcmtldHMtbGFiZWwge1xuICB0b3A6IDEwcHggIWltcG9ydGFudDtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm8taW5wdXQtZGlzcGxheSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNTguNXB4O1xuICBwYWRkaW5nOiAzNXB4IDE1cHggMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VhZWFlYTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm8taW5wdXQtZGlzcGxheTpmb2N1cywgYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLmNvbWJvLWlucHV0LWRpc3BsYXk6YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogMCAwIDBweCAxcHggIzU1NTtcbiAgYm9yZGVyLWNvbG9yOiAjZWFlYWVhO1xuICBvdXRsaW5lOiAwO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtaW5wdXQtdGFnIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDZweCAxNXB4O1xuICBtYXJnaW46IDJweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjMmQ3MmY3O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuM3B4O1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3ggYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveCBpbnB1dCB7XG4gIGNvbG9yOiAjNzU3NTc1O1xuICBmb250LXNpemU6IDE2cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAxN3B4IDE1cHg7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBtYXgtaGVpZ2h0OiAxOGVtO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3ggLnRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE1cHg7XG4gIHRvcDogNTAlO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveCAudG9nZ2xlIHN2ZyB7XG4gIGhlaWdodDogMThweDtcbiAgY29sb3I6ICM1NTU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC50b2dnbGUtbGlzdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE1cHg7XG4gIHRvcDogNDUlO1xuICBoZWlnaHQ6IDE4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAudG9nZ2xlLWxpc3Qgc3ZnIHtcbiAgaGVpZ2h0OiAxOHB4O1xuICBjb2xvcjogIzU1NTtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLnRvZ2dsZS1hcnJvdy1maXgge1xuICB0b3A6IDI1cHggIWltcG9ydGFudDtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLmNvbWJvYm94IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMyMDIwMjA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDVweCk7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveCB1bDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwcHggMnB4ICM1NTU7XG4gIGJvcmRlci1jb2xvcjogIzU1NTtcbiAgb3V0bGluZTogMDtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLmNvbWJvYm94IGxpIHtcbiAgY29sb3I6ICM3NTc1NzU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcGFkZGluZzogMTVweCAwIDE1cHggMTVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3ggW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgY29sb3I6ICMzMzM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveCBbYXJpYS1zZWxlY3RlZD1cInRydWVcIl06YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCwgPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJz48cGF0aCBmaWxsPSclMjNhNWUyMjYnIGQ9J00xNzMuODk4IDQzOS40MDRsLTE2Ni40LTE2Ni40Yy05Ljk5Ny05Ljk5Ny05Ljk5Ny0yNi4yMDYgMC0zNi4yMDRsMzYuMjAzLTM2LjIwNGM5Ljk5Ny05Ljk5OCAyNi4yMDctOS45OTggMzYuMjA0IDBMMTkyIDMxMi42OSA0MzIuMDk1IDcyLjU5NmM5Ljk5Ny05Ljk5NyAyNi4yMDctOS45OTcgMzYuMjA0IDBsMzYuMjAzIDM2LjIwNGM5Ljk5NyA5Ljk5NyA5Ljk5NyAyNi4yMDYgMCAzNi4yMDRsLTI5NC40IDI5NC40MDFjLTkuOTk4IDkuOTk3LTI2LjIwNyA5Ljk5Ny0zNi4yMDQtLjAwMXonPjwvcGF0aD48L3N2Zz5cIik7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveCAuYWN0aXZlZGVzY2VuZGFudCB7XG4gIGJhY2tncm91bmQ6ICMyZDcyZjc7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAudGV4dC1ib3gge1xuICBwYWRkaW5nOiAxNHB4IDE1cHggMTVweCAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBtYXJnaW4tdG9wOiAxZW07XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC50ZXh0LWJveC5mbC1hY3RpdmUge1xuICBwYWRkaW5nOiAyNHB4IDE1cHggNXB4IDE1cHg7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC50ZXh0LWJveC5mbC1hY3RpdmUgdGV4dGFyZWEge1xuICBwYWRkaW5nLXRvcDogMHB4O1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAudGV4dC1ib3ggdGV4dGFyZWEge1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBtYXgtaGVpZ2h0OiA4MHB4O1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtb3B0aW9ucyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtb3B0aW9ucyB1bCB7XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveC1vcHRpb25zIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtb3B0aW9ucyBpbnB1dCB7XG4gIGNvbG9yOiAjNzU3NTc1O1xuICBmb250LXNpemU6IDE2cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAxN3B4IDE1cHg7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBtYXgtaGVpZ2h0OiAxOGVtO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtb3B0aW9ucyAudG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTVweDtcbiAgdG9wOiA1MCU7XG4gIGhlaWdodDogMThweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLmNvbWJvYm94LW9wdGlvbnMgLnRvZ2dsZSBzdmcge1xuICBoZWlnaHQ6IDE4cHg7XG4gIGNvbG9yOiAjNTU1O1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtb3B0aW9ucyB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjMjAyMDIwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbWF4LWhlaWdodDogMzAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyA1cHgpO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtb3B0aW9ucyB1bDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwcHggMnB4ICM1NTU7XG4gIGJvcmRlci1jb2xvcjogIzU1NTtcbiAgb3V0bGluZTogMDtcbn1cblxuYXJ0aWNsZS5wYXJ0bmVyLWZvcm0gLmNvbWJvYm94LW9wdGlvbnMgbGkge1xuICBjb2xvcjogIzc1NzU3NTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwYWRkaW5nOiAxNXB4IDAgMTVweCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveC1vcHRpb25zIFthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7XG4gIGNvbG9yOiAjMzMzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSAuY29tYm9ib3gtb3B0aW9ucyBbYXJpYS1zZWxlY3RlZD1cInRydWVcIl06YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGNvbnRlbnQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDsgdXRmOCwgPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJz48cGF0aCBmaWxsPSclMjNhNWUyMjYnIGQ9J00xNzMuODk4IDQzOS40MDRsLTE2Ni40LTE2Ni40Yy05Ljk5Ny05Ljk5Ny05Ljk5Ny0yNi4yMDYgMC0zNi4yMDRsMzYuMjAzLTM2LjIwNGM5Ljk5Ny05Ljk5OCAyNi4yMDctOS45OTggMzYuMjA0IDBMMTkyIDMxMi42OSA0MzIuMDk1IDcyLjU5NmM5Ljk5Ny05Ljk5NyAyNi4yMDctOS45OTcgMzYuMjA0IDBsMzYuMjAzIDM2LjIwNGM5Ljk5NyA5Ljk5NyA5Ljk5NyAyNi4yMDYgMCAzNi4yMDRsLTI5NC40IDI5NC40MDFjLTkuOTk4IDkuOTk3LTI2LjIwNyA5Ljk5Ny0zNi4yMDQtLjAwMXonPjwvcGF0aD48L3N2Zz5cIik7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5jb21ib2JveC1vcHRpb25zIC5hY3RpdmVkZXNjZW5kYW50IHtcbiAgYmFja2dyb3VuZDogIzJkNzJmNztcbiAgY29sb3I6ICNmZmY7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5zZWxlY3Rpb25zICsgc3Bhbi5lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmFydGljbGUucGFydG5lci1mb3JtIC5ub3QtcmVxdWlyZWQgKyBzcGFuLmVycm9yIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5hcnRpY2xlLnBhcnRuZXItZm9ybSBzcGFuI2J1c2luZXNzZm9jdXMtZXJyb3IgKyAudG9nZ2xlIHtcbiAgdG9wOiAyOS4yNXB4ICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wcm9kdWN0LWNhcmRzIHtcbiAgICBtYXJnaW46IDEwMHB4IDA7XG4gIH1cbn1cblxuLnByb2R1Y3QtY2FyZHMtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNjVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucHJvZHVjdC1jYXJkcy1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnByb2R1Y3QtY2FyZHMtaGVhZGVyIC5jb2wge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA1KSArIDgwcHggLSAuMXB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtaGVhZGVyIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtaGVhZGVyIC5jb2wgKyAuY29sIHtcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogNykgKyAxMjBweCAtIC4xcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1oZWFkZXIgLmNvbCArIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtaGVhZGVyIC5yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4ucHJvZHVjdC1jYXJkcy1maWx0ZXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuLnByb2R1Y3QtY2FyZHMtZmlsdGVycy1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ucHJvZHVjdC1jYXJkcy1maWx0ZXJzLWZvcm0gPiAqIHtcbiAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnByb2R1Y3QtY2FyZHMtZmlsdGVycy1mb3JtIHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1maWx0ZXJzLWZvcm0gPiAqIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gIH1cbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogMHB4IDZweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ucHJvZHVjdC1jYXJkcy1saXN0ID4gW2NsYXNzKj1cImlzLVwiXSB7XG4gIG1pbi13aWR0aDogMDtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMTAwJTtcbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCA+IFtjbGFzcyo9XCJpcy1cIl06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5wcm9kdWN0LWNhcmRzLWxpc3QgLmlzLWZ1bGwge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9kdWN0LWNhcmRzLWxpc3QgLmlzLTFcXC8yIHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogNTAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCAuaXMtMVxcLzMge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCAuaXMtMlxcLzMge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCAuaXMtMVxcLzQge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAyNSU7XG4gIG1heC13aWR0aDogMjUlO1xufVxuXG4ucHJvZHVjdC1jYXJkcy1saXN0IC5pcy0zXFwvNCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDc1JTtcbiAgbWF4LXdpZHRoOiA3NSU7XG59XG5cbi5wcm9kdWN0LWNhcmRzLWxpc3QgLmlzLTFcXC82IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCAuaXMtNVxcLzYge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgbWF4LXdpZHRoOiA4My4zMzMzJTtcbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCAuaXMtMVxcLzUge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAyMCU7XG4gIG1heC13aWR0aDogMjAlO1xufVxuXG4ucHJvZHVjdC1jYXJkcy1saXN0IC5pcy0yXFwvNSB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDQwJTtcbiAgbWF4LXdpZHRoOiA0MCU7XG59XG5cbi5wcm9kdWN0LWNhcmRzLWxpc3QgLmlzLTNcXC81IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogNjAlO1xuICBtYXgtd2lkdGg6IDYwJTtcbn1cblxuLnByb2R1Y3QtY2FyZHMtbGlzdCAuaXMtNFxcLzUge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA4MCU7XG4gIG1heC13aWR0aDogODAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NjhweCkge1xuICAucHJvZHVjdC1jYXJkcy1saXN0IC54c1xcOmlzLWZ1bGwge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54c1xcOmlzLTFcXC8yIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhzXFw6aXMtMVxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhzXFw6aXMtMlxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhzXFw6aXMtMVxcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAueHNcXDppcy0zXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54c1xcOmlzLTFcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhzXFw6aXMtNVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhzXFw6aXMtMVxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAueHNcXDppcy0yXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54c1xcOmlzLTNcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhzXFw6aXMtNFxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4MCU7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAuc21cXDppcy1mdWxsIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAuc21cXDppcy0xXFwvMiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5zbVxcOmlzLTFcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5zbVxcOmlzLTJcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NiU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5zbVxcOmlzLTFcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnNtXFw6aXMtM1xcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAuc21cXDppcy0xXFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5zbVxcOmlzLTVcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5zbVxcOmlzLTFcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnNtXFw6aXMtMlxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAuc21cXDppcy0zXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5zbVxcOmlzLTRcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODAlO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucHJvZHVjdC1jYXJkcy1saXN0IC5tZFxcOmlzLWZ1bGwge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5tZFxcOmlzLTFcXC8yIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLm1kXFw6aXMtMVxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLm1kXFw6aXMtMlxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLm1kXFw6aXMtMVxcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubWRcXDppcy0zXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5tZFxcOmlzLTFcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLm1kXFw6aXMtNVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLm1kXFw6aXMtMVxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubWRcXDppcy0yXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5tZFxcOmlzLTNcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLm1kXFw6aXMtNFxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4MCU7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLmxnXFw6aXMtZnVsbCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLmxnXFw6aXMtMVxcLzIge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubGdcXDppcy0xXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubGdcXDppcy0yXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjYlO1xuICAgIG1heC13aWR0aDogNjYuNjY2NiU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubGdcXDppcy0xXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5sZ1xcOmlzLTNcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLmxnXFw6aXMtMVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NiU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NiU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubGdcXDppcy01XFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMyU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubGdcXDppcy0xXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC5sZ1xcOmlzLTJcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNDAlO1xuICAgIG1heC13aWR0aDogNDAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLmxnXFw6aXMtM1xcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAubGdcXDppcy00XFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMzYwcHgpIHtcbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAueGxcXDppcy1mdWxsIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAueGxcXDppcy0xXFwvMiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54bFxcOmlzLTFcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54bFxcOmlzLTJcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NiU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54bFxcOmlzLTFcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhsXFw6aXMtM1xcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAueGxcXDppcy0xXFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54bFxcOmlzLTVcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54bFxcOmlzLTFcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3QgLnhsXFw6aXMtMlxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZHMtbGlzdCAueGxcXDppcy0zXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgfVxuICAucHJvZHVjdC1jYXJkcy1saXN0IC54bFxcOmlzLTRcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODAlO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wcm9kdWN0LWNhcmRzLWxpc3Quc2luZ2xlLWNhcmQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLnByb2R1Y3QtY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnByb2R1Y3QtY2FyZCB7XG4gICAgcGFkZGluZzogMzBweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAucHJvZHVjdC1jYXJkLmlzLTFcXC8yIC5wcm9kdWN0LWNhcmQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnByb2R1Y3QtY2FyZC5pcy0xXFwvMiAucHJvZHVjdC1jYXJkLWhlYWRlciBpbWcge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxufVxuXG4ucHJvZHVjdC1jYXJkLWhlYWRlciBoMSwgLnByb2R1Y3QtY2FyZC1oZWFkZXIgaDIsIC5wcm9kdWN0LWNhcmQtaGVhZGVyIGgzLCAucHJvZHVjdC1jYXJkLWhlYWRlciBoNCwgLnByb2R1Y3QtY2FyZC1oZWFkZXIgaDUsIC5wcm9kdWN0LWNhcmQtaGVhZGVyIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLnByb2R1Y3QtY2FyZC10YWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICMyRDcyRjc7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbn1cblxuLnByb2R1Y3QtY2FyZC1jb250ZW50IHVsLCAucHJvZHVjdC1jYXJkLWNvbnRlbnQgb2wge1xuICBsaXN0LXN0eWxlLXR5cGU6IGluaXRpYWw7XG59XG5cbi5wcm9kdWN0LWNhcmQtYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbn1cblxuLnByb2R1Y3QtY2FyZC1idXR0b24gLmJ1dHRvbiB7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMge1xuICAgIG1hcmdpbjogMTAwcHggMDtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzIC5jb2wge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA1KSArIDgwcHggLSAuMXB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cyAuY29sOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMgLmNvbCArIC5jb2wge1xuICAgIHdpZHRoOiBjYWxjKCgoKDEwMCUgLSAyMjBweCkgLyAxMikgKiA3KSArIDEyMHB4IC0gLjFweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMjBweCAhaW1wb3J0YW50O1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMgLmNvbCArIC5jb2w6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucHJvZHVjdC1oaWdobGlnaHRzLWhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1oZWFkaW5nLnRpdGxlLXRvcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1pbnRybyB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtaW50cm8ge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICB9XG59XG5cbi5wcm9kdWN0LWhpZ2hsaWdodHMtaW50cm86OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAycHggc29saWQgYmxhY2s7XG4gIGZsZXg6IDE7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4ucHJvZHVjdC1oaWdobGlnaHRzLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luOiAwIC0yNXB4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCA+IFtjbGFzcyo9XCJpcy1cIl0ge1xuICBwYWRkaW5nOiAwIDI1cHg7XG4gIG1pbi13aWR0aDogMDtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgPiBbY2xhc3MqPVwiaXMtXCJdOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmlzLWZ1bGwge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuaXMtMVxcLzIge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4ucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmlzLTFcXC8zIHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMyU7XG59XG5cbi5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuaXMtMlxcLzMge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5pcy0xXFwvNCB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuaXMtM1xcLzQge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA3NSU7XG4gIG1heC13aWR0aDogNzUlO1xufVxuXG4ucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmlzLTFcXC82IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5pcy01XFwvNiB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xufVxuXG4ucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmlzLTFcXC81IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogMjAlO1xuICBtYXgtd2lkdGg6IDIwJTtcbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5pcy0yXFwvNSB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtYmFzaXM6IDQwJTtcbiAgbWF4LXdpZHRoOiA0MCU7XG59XG5cbi5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuaXMtM1xcLzUge1xuICBmbGV4LWdyb3c6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWJhc2lzOiA2MCU7XG4gIG1heC13aWR0aDogNjAlO1xufVxuXG4ucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmlzLTRcXC81IHtcbiAgZmxleC1ncm93OiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgZmxleC1iYXNpczogODAlO1xuICBtYXgtd2lkdGg6IDgwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTY4cHgpIHtcbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54c1xcOmlzLWZ1bGwge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnhzXFw6aXMtMVxcLzIge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54c1xcOmlzLTFcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnhzXFw6aXMtMlxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueHNcXDppcy0xXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnhzXFw6aXMtM1xcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54c1xcOmlzLTFcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueHNcXDppcy01XFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMyU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54c1xcOmlzLTFcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueHNcXDppcy0yXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnhzXFw6aXMtM1xcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54c1xcOmlzLTRcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODAlO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuc21cXDppcy1mdWxsIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5zbVxcOmlzLTFcXC8yIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuc21cXDppcy0xXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5zbVxcOmlzLTJcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NiU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnNtXFw6aXMtMVxcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5zbVxcOmlzLTNcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuc21cXDppcy0xXFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnNtXFw6aXMtNVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuc21cXDppcy0xXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnNtXFw6aXMtMlxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5zbVxcOmlzLTNcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAuc21cXDppcy00XFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5tZFxcOmlzLWZ1bGwge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLm1kXFw6aXMtMVxcLzIge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5tZFxcOmlzLTFcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLm1kXFw6aXMtMlxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAubWRcXDppcy0xXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLm1kXFw6aXMtM1xcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5tZFxcOmlzLTFcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjYlO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjYlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAubWRcXDppcy01XFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMyU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5tZFxcOmlzLTFcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAubWRcXDppcy0yXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDQwJTtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLm1kXFw6aXMtM1xcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5tZFxcOmlzLTRcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODAlO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyODBweCkge1xuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmxnXFw6aXMtZnVsbCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAubGdcXDppcy0xXFwvMiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmxnXFw6aXMtMVxcLzMge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAubGdcXDppcy0yXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjYlO1xuICAgIG1heC13aWR0aDogNjYuNjY2NiU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5sZ1xcOmlzLTFcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAubGdcXDppcy0zXFwvNCB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmxnXFw6aXMtMVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NiU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NiU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5sZ1xcOmlzLTVcXC82IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogODMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmxnXFw6aXMtMVxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC5sZ1xcOmlzLTJcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNDAlO1xuICAgIG1heC13aWR0aDogNDAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAubGdcXDppcy0zXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDYwJTtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLmxnXFw6aXMtNFxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4MCU7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTM2MHB4KSB7XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueGxcXDppcy1mdWxsIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54bFxcOmlzLTFcXC8yIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueGxcXDppcy0xXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54bFxcOmlzLTJcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NiU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnhsXFw6aXMtMVxcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54bFxcOmlzLTNcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueGxcXDppcy0xXFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnhsXFw6aXMtNVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueGxcXDppcy0xXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAucHJvZHVjdC1oaWdobGlnaHRzLWxpc3QgLnhsXFw6aXMtMlxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbiAgLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IC54bFxcOmlzLTNcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAueGxcXDppcy00XFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtbGlzdCAucHJvZHVjdC1oaWdobGlnaHQge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1saXN0IHAge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5wcm9kdWN0LWhpZ2hsaWdodHMtZGlzY2xhaW1lciB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtZGlzY2xhaW1lciB7XG4gICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gIH1cbn1cblxuLnByb2R1Y3QtaGlnaGxpZ2h0cy1hbHQgLnByb2R1Y3QtaGlnaGxpZ2h0cy1oZWFkaW5nIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5wcm9kdWN0LWhpZ2hsaWdodHMtYWx0IC5wcm9kdWN0LWhpZ2hsaWdodHMtaGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zZXJ2aWNlcy1hdmFpbGFiaWxpdHkge1xuICAgIG1hcmdpbjogMTAwcHggMDtcbiAgfVxufVxuXG4uc2VydmljZXMtYXZhaWxhYmlsaXR5IC5zZXJ2aWNlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogNDBweDtcbn1cblxuLnNlcnZpY2VzLWF2YWlsYWJpbGl0eSAuc2VydmljZXMtY29udGVudCB7XG4gIHBhZGRpbmc6IDYwcHggMTIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAuc2VydmljZXMtYXZhaWxhYmlsaXR5IC5zZXJ2aWNlcy1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA2MHB4IDgwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2VydmljZXMtYXZhaWxhYmlsaXR5IC5zZXJ2aWNlcy1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XG4gIH1cbn1cblxuLnNlcnZpY2VzLWF2YWlsYWJpbGl0eSAuc2VydmljZXMtbWFzayB7XG4gIGJhY2tncm91bmQ6IG5vLXJlcGVhdCBib3R0b20gcmlnaHQgdXJsKC4uL2ltYWdlcy9zZXJ2aWNlcy1tYXNrLnN2Zyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4uc2VydmljZXMtYXZhaWxhYmlsaXR5IC5zZXJ2aWNlcy1oZWFkaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcbn1cblxuLnNlcnZpY2VzLWF2YWlsYWJpbGl0eSAuc2VydmljZXMgZm9ybSB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uc2VydmljZXMtYXZhaWxhYmlsaXR5IC5zZXJ2aWNlcyBmb3JtIC5pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2VydmljZXMtYXZhaWxhYmlsaXR5IC5zZXJ2aWNlcyBmb3JtIC5pdGVtICsgLml0ZW0ge1xuICBmbGV4OiAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zZXJ2aWNlcy1hdmFpbGFiaWxpdHkgLnNlcnZpY2VzIGZvcm0gLml0ZW0gKyAuaXRlbSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuXG4uc2VydmljZXMtYXZhaWxhYmlsaXR5IC5zZXJ2aWNlcyBmb3JtIGxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0yMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5zZXJ2aWNlcy1hdmFpbGFiaWxpdHkgLnNlcnZpY2VzIGZvcm0gaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5zZXJ2aWNlcy1hdmFpbGFiaWxpdHkgLnNlcnZpY2VzIGZvcm0gYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjMzNjY2ZmIDAlLCAjYTU0MmVmIDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNlcnZpY2VzLWF2YWlsYWJpbGl0eSAuc2VydmljZXMgZm9ybSB7XG4gICAgd2lkdGg6IDc1MHB4O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5zZXR1cC1zdGVwcyB7XG4gICAgbWFyZ2luOiAxMDBweCAwO1xuICB9XG59XG5cbi5zZXR1cC1zdGVwcy1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNldHVwLXN0ZXBzLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4uc2V0dXAtc3RlcHMgb2wge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGNvdW50ZXItcmVzZXQ6IHNldHVwLXN0ZXBzLWNvdW50ZXI7XG59XG5cbi5zZXR1cC1zdGVwcyBvbCA+IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb3VudGVyLWluY3JlbWVudDogc2V0dXAtc3RlcHMtY291bnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgbWFyZ2luLWxlZnQ6IDIwJTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc2V0dXAtc3RlcHMgb2wgPiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG4uc2V0dXAtc3RlcHMgb2wgPiBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNldHVwLXN0ZXBzIG9sID4gbGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGNvdW50ZXIoc2V0dXAtc3RlcHMtY291bnRlcik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZmY2NjMzIDAlLCAjZmZjYzAwIDEwMCUpO1xuICBjb2xvcjogI2ZmOGYxZjtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogNDZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTAlO1xuICB0b3A6IC0xMnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zZXR1cC1zdGVwcyBvbCA+IGxpOjpiZWZvcmUge1xuICAgIGxlZnQ6IC01NnB4O1xuICB9XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IG5hdiB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDBweCAxNXB4IDM0cHggcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjAyKTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgcGFkZGluZzogMjBweCA0MHB4O1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgdWwgPiBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMjBweCAwO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGkgPiBhOmhvdmVyIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGk6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bCA+IGxpOm5vdCguaGFzLXN1Yi1uYXYpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bCA+IGxpOm5vdCguaGFzLXN1Yi1uYXYpID4gYTpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjZmY2NjMzIDAlLCAjZmZjYzAwIDEwMCUpO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGk6bm90KC5oYXMtc3ViLW5hdikgPiBhOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgdWwgPiBsaTpub3QoLmhhcy1zdWItbmF2KSA+IGE6aG92ZXIgPiBhLCBhcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGk6bm90KC5oYXMtc3ViLW5hdikgPiBhLnNlbGVjdGVkID4gYSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzAwMDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bCA+IGxpOm5vdCguaGFzLXN1Yi1uYXYpID4gYTpob3Zlcjo6YmVmb3JlLCBhcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGk6bm90KC5oYXMtc3ViLW5hdikgPiBhLnNlbGVjdGVkOjpiZWZvcmUge1xuICBib3R0b206IDE0cHg7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgdWwgPiBsaS5oYXMtc3ViLW5hdiA+IGEsIGFydGljbGUuc2lkZWJhci1uYXYgdWwgPiBsaS5oYXMtc3ViLW5hdi5zZWxlY3RlZCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgdWwgPiBsaS5oYXMtc3ViLW5hdiA+IGE6YmVmb3JlLCBhcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGkuaGFzLXN1Yi1uYXYuc2VsZWN0ZWQgPiBhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICNmZjY2MzMgMCUsICNmZmNjMDAgMTAwJSk7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgdWwgPiBsaS5oYXMtc3ViLW5hdiA+IGE6OmJlZm9yZSwgYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bCA+IGxpLmhhcy1zdWItbmF2LnNlbGVjdGVkID4gYTo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMDtcbiAgYm90dG9tOiAxMXB4O1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsID4gbGkuaGFzLXN1Yi1uYXYgPiBhOmhvdmVyOjpiZWZvcmUsIGFydGljbGUuc2lkZWJhci1uYXYgdWwgPiBsaS5oYXMtc3ViLW5hdi5zZWxlY3RlZCA+IGE6aG92ZXI6OmJlZm9yZSB7XG4gIGJvdHRvbTogMTFweDtcbiAgb3BhY2l0eTogMTtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bCB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAyMnB4O1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsLmlzLWRpdmlkZWQgPiBsaS5oYXMtc3ViLW5hdiA+IGE6aG92ZXI6OmJlZm9yZSB7XG4gIGJvdHRvbTogLTJweDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bC5pcy1kaXZpZGVkID4gbGkuaGFzLXN1Yi1uYXYuc2VsZWN0ZWQgPiBhOjpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsLmlzLWRpdmlkZWQgPiBsaSA+IGE6aG92ZXI6OmJlZm9yZSB7XG4gIGJvdHRvbTogLTJweDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiB1bC5oYXMtZGVzY3JpcHRpb246bm90KC5pcy1kaXZpZGVkKSA+IGxpID4gYTpob3Zlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiAxNHB4O1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsLmhhcy1kZXNjcmlwdGlvbi5pcy1kaXZpZGVkID4gbGk6aG92ZXIgPiBhIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IHVsLmhhcy1kZXNjcmlwdGlvbi5pcy1kaXZpZGVkID4gbGk6aG92ZXIgPiBhOjpiZWZvcmUge1xuICBib3R0b206IC0ycHg7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgLnNpZGViYXItbmF2LWxpc3Qge1xuICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgYWxsO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IC5zaWRlYmFyLW5hdi1saXN0LmlzLWRpdmlkZWQgPiBsaSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IC5zaWRlYmFyLW5hdi1saXN0LmlzLWRpdmlkZWQgPiBsaTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgLnNpZGViYXItbmF2LWxpc3QuaXMtZGl2aWRlZCA+IGxpID4gYSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgLnNpZGViYXItbmF2LWxpc3QuaXMtZGl2aWRlZCA+IGxpLnNlbGVjdGVkOjpiZWZvcmUsIGFydGljbGUuc2lkZWJhci1uYXYgLnNpZGViYXItbmF2LWxpc3QuaXMtZGl2aWRlZCA+IGxpOm5vdCguaGFzLXN1Yi1uYXYpOmhvdmVyOjpiZWZvcmUge1xuICBib3R0b206IC0ycHg7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgLnNpZGViYXItbmF2LWxpc3QgLmhhcy1zdWItbmF2ID4gYSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbmFydGljbGUuc2lkZWJhci1uYXYgLnNpZGViYXItbmF2LWxpc3QgLmhhcy1zdWItbmF2ID4gc3Bhbjpub3QoW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSkgKyBhLFxuYXJ0aWNsZS5zaWRlYmFyLW5hdiAuc2lkZWJhci1uYXYtbGlzdCAuaGFzLXN1Yi1uYXYgPiBzcGFuOm5vdChbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdKSArIGE6aG92ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiAuc2lkZWJhci1uYXYtbGlzdCAuaGFzLXN1Yi1uYXYgPiBzcGFuOm5vdChbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdKSArIGE6OmJlZm9yZSxcbmFydGljbGUuc2lkZWJhci1uYXYgLnNpZGViYXItbmF2LWxpc3QgLmhhcy1zdWItbmF2ID4gc3Bhbjpub3QoW2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSkgKyBhOmhvdmVyOjpiZWZvcmUge1xuICBib3R0b206IDRweDtcbiAgb3BhY2l0eTogMTtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiAuc2lkZWJhci1uYXYtbGlzdCAuaGFzLXN1Yi1uYXY6aG92ZXIgPiAuc2lkZWJhci1hY2NvcmRpb24tdG9nZ2xlOjphZnRlciB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDAwO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IC5zaWRlYmFyLWFjY29yZGlvbi10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHRvcDogMjJweDtcbiAgbGVmdDogLTIwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogMDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiBbZGF0YS1hY2NvcmRpb24tdHJpZ2dlcl0ge1xuICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgYWxsO1xufVxuXG5hcnRpY2xlLnNpZGViYXItbmF2IFtkYXRhLWFjY29yZGlvbi10cmlnZ2VyXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb250ZW50OiBcIiBcIjtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogcmdiYSg0NSwgMTE0LCAyNDcsIDApO1xuICBib3JkZXItbGVmdC1jb2xvcjogIzJENzJGNztcbiAgYm9yZGVyLXdpZHRoOiAxMHB4O1xuICBtYXJnaW4tdG9wOiAtNnB4O1xuICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgdHJhbnNmb3JtO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA0cHggNXB4O1xuICBib3JkZXItdG9wLXdpZHRoOiA2cHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDZweDtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiBbZGF0YS1hY2NvcmRpb24tdHJpZ2dlcl1bYXJpYS1leHBhbmRlZD1cInRydWVcIl06OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGVaKDkwZGVnKTtcbn1cblxuYXJ0aWNsZS5zaWRlYmFyLW5hdiAuc2lkZWJhci1uYXYtbGluay1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG59XG5cbi5zdGF0ZS1saXN0aW5nIC5zdGF0ZS1saXN0aW5nLWhlYWRlciB7XG4gIG1hcmdpbjogMCBhdXRvIDUwcHg7XG4gIG1heC13aWR0aDogODE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnN0YXRlLWxpc3RpbmcgLnRpdGxlIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2ZmNjYzMyAwJSwgI2ZmY2MwMCAxMDAlKTtcbiAgY29sb3I6ICNmZjhmMWY7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnN0YXRlLWxpc3RpbmcgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN1Yi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc3RhdGUtbGlzdGluZyAuc3ViLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlLWxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGUtbGlzdGluZyAuc3RhdGUtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlLWl0ZW0ge1xuICBmbGV4OiAwIDAgMzMuMzMzMyU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlIHtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlLW1lZGlhIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc3RhdGUtbGlzdGluZyAuc3RhdGUtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogIzJENzJGNztcbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlLWRlc2NyaXB0aW9uIHtcbiAgcGFkZGluZzogMCAzMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5zdGF0ZS1saXN0aW5nIC5zdGF0ZS1tYXAge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cblxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSB7XG4gIC5zdGF0ZS1saXN0aW5nICNtYXAge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTE1OHB4O1xuICAgIGhlaWdodDogNjQzcHg7XG4gIH1cbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlIHtcbiAgZmlsbDogI0QzRDNEMztcbiAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0IGFsbDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2Zvcm0tYm94OiBmaWxsLWJveDtcbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlLmlzLWFjdGl2ZSB7XG4gIGZpbGw6ICNGRjgyMDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnN0YXRlLWxpc3RpbmcgLnN0YXRlLmlzLWFjdGl2ZS5pcy1ob3ZlciB7XG4gIGZpbGw6ICMyOTI5Mjk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gIHN0cm9rZTogI2ZmZjtcbiAgc3Ryb2tlLXdpZHRoOiAuNzU7XG59XG5cbi5zdGF0ZS1saXN0aW5nIC5zdGF0ZS10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogNXB4IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZjY2MzMgMjAlLCAjZmZjYzAwIDgwJSk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnN0YXRlLWxpc3RpbmcgLnN0YXRlLXRvb2x0aXAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc3RhdGUtbGlzdGluZyBhIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4uc3RhdGUtaXRlbSAuaW5mby1jYXJkLXRpdGxlIHtcbiAgZm9udC1zaXplOiAyNHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUudGVzdGltb25pYWwge1xuICAgIG1hcmdpbjogMTAwcHggMDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUudGVzdGltb25pYWwgLnRpdGxlIHtcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gMjIwcHgpIC8gMTIpICogNikgKyAxMDBweCAtIC4xcHgpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxuICBhcnRpY2xlLnRlc3RpbW9uaWFsIC50aXRsZTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5hcnRpY2xlLnRlc3RpbW9uaWFsIC50aXRsZSBoMSwgYXJ0aWNsZS50ZXN0aW1vbmlhbCAudGl0bGUgaDIsIGFydGljbGUudGVzdGltb25pYWwgLnRpdGxlIGgzLCBhcnRpY2xlLnRlc3RpbW9uaWFsIC50aXRsZSBoNCwgYXJ0aWNsZS50ZXN0aW1vbmlhbCAudGl0bGUgaDUsIGFydGljbGUudGVzdGltb25pYWwgLnRpdGxlIGg2IHtcbiAgZm9udC1zaXplOiA1NnB4O1xuICBsaW5lLWhlaWdodDogNzJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMzM2NjZmYgMCUsICNhNTQyZWYgMTAwJSk7XG4gIGNvbG9yOiAjNjE5NWY5O1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGFydGljbGUudGVzdGltb25pYWwgLnRpdGxlIGgxLCBhcnRpY2xlLnRlc3RpbW9uaWFsIC50aXRsZSBoMiwgYXJ0aWNsZS50ZXN0aW1vbmlhbCAudGl0bGUgaDMsIGFydGljbGUudGVzdGltb25pYWwgLnRpdGxlIGg0LCBhcnRpY2xlLnRlc3RpbW9uaWFsIC50aXRsZSBoNSwgYXJ0aWNsZS50ZXN0aW1vbmlhbCAudGl0bGUgaDYge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICB9XG59XG5cbmFydGljbGUudGVzdGltb25pYWwgLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYXJ0aWNsZS50ZXN0aW1vbmlhbCAuY29udGVudCB7XG4gICAgd2lkdGg6IGNhbGMoKCgoMTAwJSAtIDIyMHB4KSAvIDEyKSAqIDYpICsgMTAwcHggLSAuMXB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgYXJ0aWNsZS50ZXN0aW1vbmlhbCAuY29udGVudDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5hcnRpY2xlLnRlc3RpbW9uaWFsIC5jb250ZW50IGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG59XG5cbmFydGljbGUudGVzdGltb25pYWwgLmNvbnRlbnQgZmlndXJlLnF1b3RlIHtcbiAgcGFkZGluZzogNDBweCAwIDYwcHggMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBhcnRpY2xlLnRlc3RpbW9uaWFsIC5jb250ZW50IGZpZ3VyZS5xdW90ZSB7XG4gICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG4gIH1cbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAuY29udGVudCBmaWd1cmUucXVvdGUgcCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAudG5zLW5hdiBidXR0b24sIGFydGljbGUudGVzdGltb25pYWwgLnRucy1jb250cm9scyBidXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzMzMztcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAudG5zLXNsaWRlci5pcy10cmFuc2l0aW9uaW5nIC50bnMtaXRlbSB7XG4gIHRyYW5zaXRpb246IDFzIGVhc2UtaW4tb3V0IG9wYWNpdHk7XG59XG5cbmFydGljbGUudGVzdGltb25pYWwgLnRucy1uYXYge1xuICBjb3VudGVyLXJlc2V0OiB0ZXN0aW1vbmlhbC1uYXYtY291bnRlcjtcbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAudG5zLW5hdiBidXR0b24ge1xuICBjb3VudGVyLWluY3JlbWVudDogdGVzdGltb25pYWwtbmF2LWNvdW50ZXI7XG4gIG1pbi13aWR0aDogMzJweDtcbiAgbWluLWhlaWdodDogMzJweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5hcnRpY2xlLnRlc3RpbW9uaWFsIC50bnMtbmF2IGJ1dHRvbjpiZWZvcmUge1xuICBjb250ZW50OiBjb3VudGVyKHRlc3RpbW9uaWFsLW5hdi1jb3VudGVyKTtcbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAudG5zLW5hdiAudG5zLW5hdi1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICMzM2NjZmYgMCUsICNhNTQyZWYgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5hcnRpY2xlLnRlc3RpbW9uaWFsIC50bnMtbmF2LWNvbnRyb2xzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzJweDtcbiAgcGFkZGluZy1yaWdodDogMzJweDtcbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAudG5zLW5hdi1jb250cm9scy1jb250YWluZXIuZmlyc3Qtc2VsZWN0ZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbmFydGljbGUudGVzdGltb25pYWwgLnRucy1jb250cm9scyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbmFydGljbGUudGVzdGltb25pYWwgLnRucy1jb250cm9scyBbZGF0YS1jb250cm9scz1cInByZXZcIl0sXG5hcnRpY2xlLnRlc3RpbW9uaWFsIC50bnMtY29udHJvbHMgW2RhdGEtY29udHJvbHM9XCJuZXh0XCJdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtaW4td2lkdGg6IDMycHg7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG59XG5cbmFydGljbGUudGVzdGltb25pYWwgLnRucy1jb250cm9scyBbZGF0YS1jb250cm9scz1cInByZXZcIl0ge1xuICBsZWZ0OiAwO1xufVxuXG5hcnRpY2xlLnRlc3RpbW9uaWFsIC50bnMtY29udHJvbHMgW2RhdGEtY29udHJvbHM9XCJuZXh0XCJdIHtcbiAgcmlnaHQ6IDA7XG59XG5cbmFydGljbGUudGVzdGltb25pYWwgLnRucy1jb250cm9scyBidXR0b25bZGlzYWJsZWRdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAudG5zLWl0ZW0ge1xuICBvcGFjaXR5OiAwO1xufVxuXG5hcnRpY2xlLnRlc3RpbW9uaWFsIC50bnMtc2xpZGUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuYXJ0aWNsZS50ZXN0aW1vbmlhbCAudG5zLW91dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5hcnRpY2xlLnRleHQtY29sdW1ucyBoNCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBhcnRpY2xlLnRleHQtY29sdW1ucyAuY29sIHtcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gMTA1JSkgLyA4KSAqIDQpICsgNDUlIC0gLjFweCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMTUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgYXJ0aWNsZS50ZXh0LWNvbHVtbnMgLmNvbDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5hcnRpY2xlLnRleHQtY29sdW1uc1tjbGFzcyo9XCJiZy1cIl0ge1xuICBwYWRkaW5nOiA0MHB4IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLnRleHQtY29sdW1uc1tjbGFzcyo9XCJiZy1cIl0ge1xuICAgIHBhZGRpbmc6IDYwcHggMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYXJ0aWNsZS50ZXh0LWNvbHVtbnMuYWxpZ24tbWlkZGxlIC53cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuYXJ0aWNsZS50ZXh0LWNvbHVtbnMuZ2V0LWluLXRvdWNoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYXJ0aWNsZS50ZXh0LWNvbHVtbnMuZ2V0LWluLXRvdWNoIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUudGV4dCB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgfVxufVxuXG5hcnRpY2xlLnRleHQgLnNpZGViYXIge1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYXJ0aWNsZS50ZXh0IC5zaWRlYmFyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1oZWFkZXIgaDEge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBtYXJnaW4tdG9wOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgI2ZmNjYzMyAwJSwgI2ZmY2MwMCAxMDAlKTtcbiAgY29sb3I6ICNmZjhmMWY7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogNDhweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS50ZXh0IC50ZXh0LWhlYWRlciBoMSB7XG4gICAgZm9udC1zaXplOiAzNnB4O1xuICB9XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1oZWFkZXItZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG5hcnRpY2xlLnRleHQgLnRleHQtY29udGVudCBoMiB7XG4gIGZvbnQtc2l6ZTogMzZweDtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBhcnRpY2xlLnRleHQgLnRleHQtY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IGgzIHtcbiAgZm9udC1zaXplOiAyOHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIGFydGljbGUudGV4dCAudGV4dC1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbn1cblxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgaDQge1xuICBmb250LXNpemU6IDI0cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuXG5hcnRpY2xlLnRleHQgLnRleHQtY29udGVudCBpbWcgKyBwIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgYSB7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLW1zLXdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICAtbXMtaHlwaGVuczogYXV0bztcbiAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gIGh5cGhlbnM6IG5vbmU7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IHVsIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG5hcnRpY2xlLnRleHQgLnRleHQtY29udGVudCAuYm94LFxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJsb2NrcXVvdGUsXG5hcnRpY2xlLnRleHQgLnRleHQtY29udGVudCAuYmxvY2txdW90ZS1ibHVlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIG1hcmdpbjogNTBweCAwO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBib3gtc2hhZG93OiA1cHggMTBweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLnRleHQgLnRleHQtY29udGVudCAuYm94LFxuICBhcnRpY2xlLnRleHQgLnRleHQtY29udGVudCAuYmxvY2txdW90ZSxcbiAgYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJsb2NrcXVvdGUtYmx1ZSB7XG4gICAgcGFkZGluZzogNTBweDtcbiAgICBib3gtc2hhZG93OiAxMHB4IDE1cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICB9XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IC5ib3gtZ29sZGVuLWhvdXIsXG5hcnRpY2xlLnRleHQgLnRleHQtY29udGVudCAuYmxvY2txdW90ZS1nb2xkZW4taG91ciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgI2ZmNjYzMyAwJSwgI2ZmY2MwMCAxMDAlKTtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IC5ib3gtYmx1ZS1ob3VyLFxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJsb2NrcXVvdGUtYmx1ZS1ob3VyLFxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJsb2NrcXVvdGUtYmx1ZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMGRlZywgIzMzMzM5OSAwJSwgIzMzY2NmZiAxMDAlKTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IC5ib3gtYXVyb3JhLFxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJsb2NrcXVvdGUtYXVyb3JhIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjMzNjY2ZmIDAlLCAjYTU0MmVmIDEwMCUpO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJveC1wbGVuLWFpcixcbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IC5ibG9ja3F1b3RlLXBsZW4tYWlyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEwZGVnLCAjMDRhNWZmIDAlLCAjNmNmZmE5IDEwMCUpO1xuICBjb2xvcjogIzI5MjkyOTtcbn1cblxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJveC1ncmVlbi1zaGFkZXMsXG5hcnRpY2xlLnRleHQgLnRleHQtY29udGVudCAuYmxvY2txdW90ZS1ncmVlbi1zaGFkZXMge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICMxNjQ4MWEgMCUsICNhNWUyMjYgMTAwJSk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5hcnRpY2xlLnRleHQgLnRleHQtY29udGVudCAuYm94LXN0b25lLXdoaXRlLFxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmJsb2NrcXVvdGUtc3RvbmUtd2hpdGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjAxLjE4ZGVnLCAjZmZmIDQ5JSwgI2IzYjNiMyAxNDElKTtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IC5pbWFnZS1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMTBweCAzMHB4IDIwcHggMDtcbn1cblxuYXJ0aWNsZS50ZXh0IC50ZXh0LWNvbnRlbnQgLmltYWdlLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDEwcHggMCAyMHB4IDMwcHg7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50IC5pbWFnZS1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDMwcHg7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuYXJ0aWNsZS50ZXh0IC50ZXh0LW1ldGEge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAjNzY3Njc2O1xuICBmb250LXNpemU6IDEycHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBhcnRpY2xlLnRleHQgLnRleHQtbWV0YSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5hcnRpY2xlLnRleHQgLnRleHQtbWV0YSBsaSB7XG4gIG1hcmdpbi1yaWdodDogMzRweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICBhcnRpY2xlLnRleHQgLnRleHQtbWV0YSBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGFydGljbGUudGV4dCAuYWRkdGhpc19pbmxpbmVfc2hhcmVfdG9vbGJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG5hcnRpY2xlLnRleHQgLnRleHQtaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG5hcnRpY2xlLnRleHQgLnRleHQtaW1hZ2UgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuYXJ0aWNsZS50ZXh0IC50ZXh0LWRpc2NsYWltZXIge1xuICBmb250LXNpemU6IDEzcHg7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1kaXNjbGFpbWVyLmJsYWNrIHtcbiAgY29sb3I6ICMyOTI5Mjk7XG59XG5cbmFydGljbGUudGV4dCAudGV4dC1kaXNjbGFpbWVyLmdyZXkge1xuICBjb2xvcjogIzhmOGY4Zjtcbn1cblxuYXJ0aWNsZS50ZXh0IC53cmFwcGVyID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYXJ0aWNsZS50ZXh0Lmhhcy1zaWRlYmFyIC50ZXh0LWhlYWRlciB7XG4gICAgd2lkdGg6IGNhbGMoKCgoMTAwJSAtIDYwNXB4KSAvIDEyKSAqIDkpICsgNDQwcHggLSAuMXB4KTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiA1NXB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgYXJ0aWNsZS50ZXh0Lmhhcy1zaWRlYmFyIC50ZXh0LWhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBhcnRpY2xlLnRleHQuaXMtYmxvZy1hcnRpY2xlIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbn1cblxuYXJ0aWNsZS50ZXh0LmlzLWZhcS1hcnRpY2xlIGhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLnRleHQuaXMtZmFxLWFydGljbGUgaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG5cbmFydGljbGUudGV4dC5pcy1mYXEtYXJ0aWNsZSBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbmFydGljbGUudGV4dC5pcy1mYXEtYXJ0aWNsZSAucG9wdWxhci1mYXFzLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xufVxuXG5hcnRpY2xlLnRleHQuaXMtZmFxLWFydGljbGUgLm1haW5Db250ZW50ICo6bGFzdC1jaGlsZCwgYXJ0aWNsZS50ZXh0LmlzLWZhcS1hcnRpY2xlIC5zaWRlYmFyICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLnRleHQuaXMtZmFxLWFydGljbGUgLm1haW5Db250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICB9XG59XG5cbmFydGljbGUudGV4dC5pcy1mYXEtc2VhcmNoIGhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICBhcnRpY2xlLnRleHQuaXMtZmFxLXNlYXJjaCBoZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuYXJ0aWNsZS50ZXh0LmlzLWZhcS1zZWFyY2ggLmZhcS1saXN0aW5nIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgYXJ0aWNsZS52aWRlbyB7XG4gICAgbWFyZ2luOiAxMDBweCAwO1xuICB9XG59XG5cbi52aWRlbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnZpZGVvLWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4udmlkZW8tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4udmlkZW8tY29udGFpbmVyLmlzLTE2eDkge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4udmlkZW8tY29udGFpbmVyID4gKiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYXQtb25seTpub3QoOmZvY3VzKTpub3QoOmFjdGl2ZSkge1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBjbGlwLXBhdGg6IGluc2V0KDEwMCUpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMXB4O1xufVxuXG5bZGF0YS1tb2RhbC1vcGVuXVtoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYm9keS5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmpzIFtkYXRhLW1vZGFsXSxcbi5hMTF5LW1vZGFsIHtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBsZWZ0OiAyMHB4O1xuICByaWdodDogMjBweDtcbiAgdG9wOiAyMHB4O1xuICBib3gtc2hhZG93OiAwIDAgMTgwMHB4IDE4MDAwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBtYXJnaW46IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogNjYwcHg7XG4gIG9wYWNpdHk6IDE7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBwYWRkaW5nOiA0MHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHotaW5kZXg6IDEwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmpzIFtkYXRhLW1vZGFsXSxcbiAgLmExMXktbW9kYWwge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmpzIFtkYXRhLW1vZGFsXVtoaWRkZW5dIC5hMTF5LW1vZGFsW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNXZoKTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uYTExeS1tb2RhbF9fY2xvc2UtYnRuIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmlzLWljb24tYnRuIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBoZWlnaHQ6IDJlbTtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogLjc1ZW07XG4gIHRvcDogLjc1ZW07XG4gIHdpZHRoOiAyZW07XG59XG5cbltkYXRhLW1vZGFsLXhdIHtcbiAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQ7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMmVtO1xuICBsZWZ0OiAwO1xuICBtYXJnaW46IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgd2lkdGg6IDJweDtcbn1cblxuW2RhdGEtbW9kYWwteF06YWZ0ZXIge1xuICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ibG9nLWZlYXR1cmVkLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvZy1mZWF0dXJlZC1oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICB9XG59XG5cbi5ibG9nLWZlYXR1cmVkLWNhcmRzIHtcbiAgbWFyZ2luLWJvdHRvbTogLTMwcHg7XG59XG5cbi5ibG9nLWZlYXR1cmVkLWNhcmRzIC5mbGV4LWdyaWQgPiAqID4gKiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ibG9nLWZlYXR1cmVkLWNhcmRzIC5mbGV4LWdyaWQgPiAqIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5ibG9nLWZlYXR1cmVkLWNhcmRzIC5mbGV4LWdyaWQgPiAqIC5pbmZvLWNhcmQge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cblxuLmJsb2ctZmVhdHVyZWQuaXMtbGFyZ2Uge1xuICBtYXJnaW4tdG9wOiAtMjVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmJsb2ctZmVhdHVyZWQuaXMtbGFyZ2Uge1xuICAgIG1hcmdpbi10b3A6IC00NXB4O1xuICB9XG59XG5cbi5ibG9nLWZlYXR1cmVkLmlzLWxhcmdlIC5ibG9nLWZlYXR1cmVkLWNhcmRzIC5mbGV4LWdyaWQgPiAqID4gKiB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ibG9nLWZlYXR1cmVkLmlzLWxhcmdlIC5ibG9nLWZlYXR1cmVkLWNhcmRzIC5mbGV4LWdyaWQgPiAqID4gKiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYmxvZy1mZWF0dXJlZC5pcy1sYXJnZSAuYmxvZy1mZWF0dXJlZC1jYXJkcyAuaW5mby1jYXJkLWNvbnRlbnQge1xuICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICAgIHBhZGRpbmc6IDYwcHggMTAwcHg7XG4gIH1cbn1cblxuLnJlYWRpbmctbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNGNUY1RjU7XG4gIHBhZGRpbmc6IDYwcHggMDtcbn1cblxuLnJlYWRpbmctbGlzdC10aXRsZSB7XG4gIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICBjb2xvcjogIzI5MjkyOTtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cblxuLnJlYWRpbmctbGlzdC1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDBweCwgMHB4KTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJlYWRpbmctbGlzdCAuY29sOm5vdCgudG5zLWl0ZW0pIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgLnJlYWRpbmctbGlzdCAuY29sOm5vdCgudG5zLWl0ZW0pOm50aC1jaGlsZChuKzUpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5yZWFkaW5nLWxpc3QtY2FyZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMzAuMjFkZWcsICMzM0NDRkYgNy45OSUsICMzMzMzOTkgMTAwJSk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xNCk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMzUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQ6aG92ZXIsIC5yZWFkaW5nLWxpc3QtY2FyZDpmb2N1cywgLnJlYWRpbmctbGlzdC1jYXJkOmFjdGl2ZSwgLnJlYWRpbmctbGlzdC1jYXJkOnZpc2l0ZWQge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQgLmluZm8tY2FyZC1oZWFkZXIgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQgLmluZm8tY2FyZC10aXRsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi5yZWFkaW5nLWxpc3QtY2FyZCAuaW5mby1jYXJkLWRlc2NyaXB0aW9uIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnJlYWRpbmctbGlzdC1jYXJkIC5pbmZvLWNhcmQtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQgLmluZm8tY2FyZC1tZXRhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQgLmluZm8tY2FyZC1tZXRhLWNvdW50IHtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDlweDtcbiAgbGVmdDogOXB4O1xuICBib3R0b206IC05cHg7XG4gIHJpZ2h0OiAtOXB4O1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIzMC4yMWRlZywgIzMzQ0NGRiA3Ljk5JSwgIzMzMzM5OSAxMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQtbGlzdGluZyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMjVweCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvdW50ZXItcmVzZXQ6IHJlYWRpbmctbGlzdC1jb3VudGVyO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQtbGlzdGluZyBhLCAucmVhZGluZy1saXN0LWNhcmQtbGlzdGluZyBhOmZvY3VzLCAucmVhZGluZy1saXN0LWNhcmQtbGlzdGluZyBhOmhvdmVyLCAucmVhZGluZy1saXN0LWNhcmQtbGlzdGluZyBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQtbGlzdGluZyBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY291bnRlci1pbmNyZW1lbnQ6IHJlYWRpbmctbGlzdC1jb3VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5yZWFkaW5nLWxpc3QtY2FyZC1saXN0aW5nIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucmVhZGluZy1saXN0LWNhcmQtbGlzdGluZyBsaS5pcy1jdXJyZW50IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnJlYWRpbmctbGlzdC1jYXJkLWxpc3RpbmcgbGk6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgY29udGVudDogY291bnRlcihyZWFkaW5nLWxpc3QtY291bnRlcikgXCIuXCI7XG59XG5cbi5yZWFkaW5nLWxpc3QgLnRucy1vdmgge1xuICBwYWRkaW5nLWJvdHRvbTogOXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA5cHg7XG4gIG92ZXJmbG93LXk6IHZpc2libGU7XG4gIGJveC1zaGFkb3c6IDAgMCA0NHB4IHJnYmEoOTUsIDk1LCA5NSwgMC41Nyk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNjYpO1xuICBib3JkZXItcmFkaXVzOiA4cHggMjBweDtcbn1cblxuLnJlYWRpbmctbGlzdCAudG5zLWNvbnRyb2xzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDM1cHggLTVweCAwO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ucmVhZGluZy1saXN0IFtkYXRhLWNvbnRyb2xzXSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgY29sb3I6ICM1OTU4NTg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDExcHggMjBweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbjogMCA1cHg7XG59XG5cbi5yZWFkaW5nLWxpc3QgW2RhdGEtY29udHJvbHNdOmRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uZmFxIHtcbiAgbWFyZ2luLWxlZnQ6IDg1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5mYXEge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB9XG59XG5cbi5mYXEtaGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5mYXEtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5mYXEtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuXG4uZmFxLWxpc3QtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5mYXEtbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5idXR0b24uZmFxLXRyaWdnZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgb3V0bGluZTogMDtcbn1cblxuLmZhcS10cmlnZ2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogYWN1bWluLXByby1jb25kZW5zZWQsIGFjdW1pbi1wcm8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cblxuLmZhcS10cmlnZ2VyW2RhdGEtYWNjb3JkaW9uLXRyaWdnZXJdIHtcbiAgbWFyZ2luLWxlZnQ6IC04NXB4O1xuICBwYWRkaW5nLWxlZnQ6IDg1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmZhcS10cmlnZ2VyW2RhdGEtYWNjb3JkaW9uLXRyaWdnZXJdIHtcbiAgICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICB9XG59XG5cbi5mYXEtdHJpZ2dlcltkYXRhLWFjY29yZGlvbi10cmlnZ2VyXTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMTJweDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29udGVudDogXCIgXCI7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3JkZXItY29sb3I6IHJnYmEoNDUsIDExNCwgMjQ3LCAwKTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMyRDcyRjc7XG4gIGJvcmRlci13aWR0aDogMTBweDtcbiAgbWFyZ2luLXRvcDogLTZweDtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGFsbDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNHB4IDVweDtcbiAgYm9yZGVyLXRvcC13aWR0aDogNnB4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiA2cHg7XG59XG5cbi5mYXEtdHJpZ2dlcltkYXRhLWFjY29yZGlvbi10cmlnZ2VyXVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpO1xufVxuXG4uZmFxLXBhbmVsIHtcbiAgY29sb3I6ICM3Njc2NzY7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGFsbDtcbn1cblxuLmZhcS1wYW5lbCA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZmFxLXBhbmVsID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZhcSA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5mYXEuaGFzLW5vLXBhZGRpbmcge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmZhcS5oYXMtbm8tcGFkZGluZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZhcS1jYXRlZ29yaWVzIHtcbiAgYmFja2dyb3VuZDogI0Y1RjVGNTtcbiAgcGFkZGluZzogNDVweCAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZhcS1jYXRlZ29yaWVzIHtcbiAgICBwYWRkaW5nOiA2MHB4IDA7XG4gIH1cbn1cblxuLmZhcS1jYXRlZ29yaWVzLWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xufVxuXG4uZmFxLWNhdGVnb3JpZXMtdGl0bGUge1xuICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgY29sb3I6ICMyOTI5Mjk7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5mYXEtY2F0ZWdvcmllcy10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4uZmFxLWNhdGVnb3JpZXMtbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMHB4LCAwcHgpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZmFxLWNhdGVnb3JpZXMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgfVxuICAuZmFxLWNhdGVnb3JpZXMgLmNvbDpub3QoLnRucy1pdGVtKSB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICB9XG4gIC5mYXEtY2F0ZWdvcmllcyAuY29sOm5vdCgudG5zLWl0ZW0pOm50aC1jaGlsZChuKzUpIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5mYXEtY2F0ZWdvcmllcy1jYXJkIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMyOTI5Mjk7XG4gIGJveC1zaGFkb3c6IDBweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xNCk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogNDVweCAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDM1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpIHRyYW5zZm9ybTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbWFyZ2luOiAxNXB4IDE1cHggMzBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5mYXEtY2F0ZWdvcmllcy1jYXJkIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmZhcS1jYXRlZ29yaWVzLWNhcmQ6aG92ZXIsIC5mYXEtY2F0ZWdvcmllcy1jYXJkOmZvY3VzIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNDgsIDEuMDQ4LCAxKSB0cmFuc2xhdGVaKDApO1xuICB9XG4gIC5mYXEtY2F0ZWdvcmllcy1jYXJkOmhvdmVyIC5pbmZvLWNhcmQtYWN0aW9ucywgLmZhcS1jYXRlZ29yaWVzLWNhcmQ6Zm9jdXMgLmluZm8tY2FyZC1hY3Rpb25zIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mYXEtY2F0ZWdvcmllcy1jYXJkOmhvdmVyLCAuZmFxLWNhdGVnb3JpZXMtY2FyZDpmb2N1cywgLmZhcS1jYXRlZ29yaWVzLWNhcmQ6YWN0aXZlLCAuZmFxLWNhdGVnb3JpZXMtY2FyZDp2aXNpdGVkIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzI5MjkyOTtcbn1cblxuLmZhcS1jYXRlZ29yaWVzLWNhcmQgLmluZm8tY2FyZC10aXRsZSB7XG4gIGNvbG9yOiAjMjkyOTI5O1xufVxuXG4uZmFxLWNhdGVnb3JpZXMtY2FyZCAuaW5mby1jYXJkLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mYXEtY2F0ZWdvcmllcy1jYXJkIC5pbmZvLWNhcmQtY29udGVudDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogNDZweDtcbiAgbWFyZ2luLWxlZnQ6IC0yM3B4O1xuICBoZWlnaHQ6IDBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IC0xNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0ZDRkNGO1xufVxuXG4uZmFxLWNhdGVnb3JpZXMtY2FyZCAuaW5mby1jYXJkLWFjdGlvbnMge1xuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSkgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBjb2xvcjogIzJENzJGNztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmZhcS1jYXRlZ29yaWVzLWNhcmQtbGlzdGluZyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMjVweCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIGNvdW50ZXItcmVzZXQ6IHJlYWRpbmctbGlzdC1jb3VudGVyO1xufVxuXG4uZmFxLWNhdGVnb3JpZXMtY2FyZC1saXN0aW5nIGEsIC5mYXEtY2F0ZWdvcmllcy1jYXJkLWxpc3RpbmcgYTpmb2N1cywgLmZhcS1jYXRlZ29yaWVzLWNhcmQtbGlzdGluZyBhOmhvdmVyLCAuZmFxLWNhdGVnb3JpZXMtY2FyZC1saXN0aW5nIGE6YWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5mYXEtY2F0ZWdvcmllcy1jYXJkLWxpc3RpbmcgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvdW50ZXItaW5jcmVtZW50OiByZWFkaW5nLWxpc3QtY291bnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZmFxLWNhdGVnb3JpZXMtY2FyZC1saXN0aW5nIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZmFxLWNhdGVnb3JpZXMtY2FyZC1saXN0aW5nIGxpLmlzLWN1cnJlbnQge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZmFxLWNhdGVnb3JpZXMtY2FyZC1saXN0aW5nIGxpOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGNvbnRlbnQ6IGNvdW50ZXIocmVhZGluZy1saXN0LWNvdW50ZXIpIFwiLlwiO1xufVxuXG4uZmFxLWNhdGVnb3JpZXMgLnRucy1jb250cm9scyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZmFxLWNhdGVnb3JpZXMgW2RhdGEtY29udHJvbHNdIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBjb2xvcjogIzU5NTg1ODtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogMTFweCAyMHB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwIDVweDtcbn1cblxuLmZhcS1jYXRlZ29yaWVzIFtkYXRhLWNvbnRyb2xzXTpkaXNhYmxlZCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnBvcHVsYXItZmFxcyB7XG4gIG1hcmdpbi10b3A6IC0yNXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnBvcHVsYXItZmFxcyB7XG4gICAgbWFyZ2luLXRvcDogLTQ1cHg7XG4gIH1cbn1cblxuLnBvcHVsYXItZmFxcy1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5wb3B1bGFyLWZhcXMtaGVhZGluZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4ucG9wdWxhci1mYXFzIC5mYXEtbGlzdGluZyB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmZhcS1hdXRvY29tcGxldGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mYXEtYXV0b2NvbXBsZXRlLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mYXEtYXV0b2NvbXBsZXRlLXN1Ym1pdCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBpbml0aWFsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDIycHg7XG59XG5cbi5mYXEtYXV0b2NvbXBsZXRlLXN1Ym1pdDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAyNXB4O1xuICB3aWR0aDogMzhweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjIzOCUyMiUyMGhlaWdodCUzRCUyMjM2JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMzglMjAzNiUyMiUyMGZpbGwlM0QlMjJub25lJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0yNC4zNTAzJTIwMjIuOTQ5NUwzNiUyMDM0TTI3Ljc1JTIwMTUuMjEyMUMyNy43NSUyMDIxLjk1NjclMjAyMi4yMDk1JTIwMjcuNDI0MiUyMDE1LjM3NSUyMDI3LjQyNDJDOC41NDA0OCUyMDI3LjQyNDIlMjAzJTIwMjEuOTU2NyUyMDMlMjAxNS4yMTIxQzMlMjA4LjQ2NzU1JTIwOC41NDA0OCUyMDMlMjAxNS4zNzUlMjAzQzIyLjIwOTUlMjAzJTIwMjcuNzUlMjA4LjQ2NzU1JTIwMjcuNzUlMjAxNS4yMTIxWiUyMiUyMHN0cm9rZSUzRCUyMiUyMzhGOEY4RiUyMiUyMHN0cm9rZS13aWR0aCUzRCUyMjUlMjIlMkYlM0UlM0MlMkZzdmclM0VcIik7XG59XG5cbi5mYXEtYXV0b2NvbXBsZXRlLXN1Ym1pdC5pcy1sb2FkaW5nOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJTIyJTIwd2lkdGglM0QlMjIzOCUyMiUyMGhlaWdodCUzRCUyMjM4JTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwMzglMjAzOCUyMiUyMHN0cm9rZSUzRCUyMiUyMzJENzJGNyUyMiUzRSUzQ2clMjBmaWxsJTNEJTIybm9uZSUyMiUyMGZpbGwtcnVsZSUzRCUyMmV2ZW5vZGQlMjIlM0UlM0NnJTIwdHJhbnNmb3JtJTNEJTIydHJhbnNsYXRlJTI4MSUyMDElMjklMjIlMjBzdHJva2Utd2lkdGglM0QlMjI0JTIyJTNFJTNDY2lyY2xlJTIwc3Ryb2tlLW9wYWNpdHklM0QlMjIuNSUyMiUyMGN4JTNEJTIyMTglMjIlMjBjeSUzRCUyMjE4JTIyJTIwciUzRCUyMjE2JTIyJTJGJTNFJTNDcGF0aCUyMGQlM0QlMjJNMzQlMjAxOGMwLTkuOTQtOC4wNi0xNi0xOC0xNiUyMiUzRSUzQ2FuaW1hdGVUcmFuc2Zvcm0lMjBhdHRyaWJ1dGVOYW1lJTNEJTIydHJhbnNmb3JtJTIyJTIwdHlwZSUzRCUyMnJvdGF0ZSUyMiUyMGZyb20lM0QlMjIwJTIwMTglMjAxOCUyMiUyMHRvJTNEJTIyMzYwJTIwMTglMjAxOCUyMiUyMGR1ciUzRCUyMjFzJTIyJTIwcmVwZWF0Q291bnQlM0QlMjJpbmRlZmluaXRlJTIyJTJGJTNFJTNDJTJGcGF0aCUzRSUzQyUyRmclM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuXG4uZmFxLWF1dG9jb21wbGV0ZS1pbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwcHg7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgcGFkZGluZzogMjVweCA2NXB4IDI1cHggMjVweDtcbiAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLmF1dG9jb21wbGV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwcztcbiAgbWF4LWhlaWdodDogMDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDEsIDAuNSwgMSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgYm94LXNoYWRvdzogMHB4IDRweCA0cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmF1dG9jb21wbGV0ZTphY3RpdmUsIC5hdXRvY29tcGxldGU6Zm9jdXMsIC5hdXRvY29tcGxldGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDBzO1xufVxuXG4uYXV0b2NvbXBsZXRlOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmF1dG9jb21wbGV0ZSA+IHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGNvbG9yOiAjMjkyOTI5O1xufVxuXG4uYXV0b2NvbXBsZXRlID4gdWwgYSxcbi5hdXRvY29tcGxldGUgPiB1bCBhOmhvdmVyLFxuLmF1dG9jb21wbGV0ZSA+IHVsIGE6Zm9jdXMge1xuICBjb2xvcjogIzI5MjkyOTtcbn1cblxuLmF1dG9jb21wbGV0ZSA+IHVsIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5cbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAxMnB4IDE1cHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbn1cblxuLmF1dG9jb21wbGV0ZSA+IHVsID4gbGkuYWN0aXZlLCAuYXV0b2NvbXBsZXRlID4gdWwgPiBsaTphY3RpdmUsIC5hdXRvY29tcGxldGUgPiB1bCA+IGxpOmZvY3VzLCAuYXV0b2NvbXBsZXRlID4gdWwgPiBsaTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UgMHM7XG59XG5cbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpLmFjdGl2ZSBhOmFjdGl2ZSxcbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpOmFjdGl2ZSBhOmFjdGl2ZSxcbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpOmZvY3VzIGE6YWN0aXZlLFxuLmF1dG9jb21wbGV0ZSA+IHVsID4gbGk6aG92ZXIgYTphY3RpdmUsXG4uYXV0b2NvbXBsZXRlID4gdWwgPiBsaS5hY3RpdmUgYTpmb2N1cyxcbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpOmFjdGl2ZSBhOmZvY3VzLFxuLmF1dG9jb21wbGV0ZSA+IHVsID4gbGk6Zm9jdXMgYTpmb2N1cyxcbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpOmhvdmVyIGE6Zm9jdXMsXG4uYXV0b2NvbXBsZXRlID4gdWwgPiBsaS5hY3RpdmUgYTpob3Zlcixcbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpOmFjdGl2ZSBhOmhvdmVyLFxuLmF1dG9jb21wbGV0ZSA+IHVsID4gbGk6Zm9jdXMgYTpob3Zlcixcbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpOmhvdmVyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5hdXRvY29tcGxldGUgPiB1bCA+IGxpLmxvY2tlZCB7XG4gIGN1cnNvcjogaW5oZXJpdDtcbn1cblxuLmF1dG9jb21wbGV0ZSA+IHVsID4gbGkgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiAjOEY4RjhGO1xuICBtYXJnaW4tdG9wOiA0cHg7XG59XG5cbi5hdXRvY29tcGxldGUub3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDBzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAxLCAwLjUsIDEpO1xuICB6LWluZGV4OiAxMDA7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5hdXRvY29tcGxldGUub3BlbjplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5hdXRvY29tcGxldGUtc2hvdy1hbGwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDZweDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uYXV0b2NvbXBsZXRlLXNob3ctYWxsIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBpbml0aWFsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LWZhbWlseTogYWN1bWluLXBybywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEycHggMTVweDtcbn1cblxuLmF1dG9jb21wbGV0ZS1zaG93LWFsbDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtM3B4O1xuICBsZWZ0OiAxNXB4O1xuICByaWdodDogMTVweDtcbn1cblxuLmF1dG9jb21wbGV0ZS1zaG93LWFsbDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA0MXB4O1xuICBoZWlnaHQ6IDMzcHg7XG4gIHJpZ2h0OiAxNXB4O1xuICB0b3A6IDExcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnJTIwd2lkdGglM0QlMjI0MSUyMiUyMGhlaWdodCUzRCUyMjMzJTIyJTIwdmlld0JveCUzRCUyMjAlMjAwJTIwNDElMjAzMyUyMiUyMGZpbGwlM0QlMjJub25lJTIyJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmclMjIlM0UlM0NwYXRoJTIwZCUzRCUyMk0wLjUlMjAxNkgzOC4zNTM2TTM4LjM1MzYlMjAxNkwyMy42NDY0JTIwMk0zOC4zNTM2JTIwMTZMMjMuMzUzNiUyMDMxJTIyJTIwc3Ryb2tlJTNEJTIyJTIzQjJCMkIyJTIyJTIwc3Ryb2tlLXdpZHRoJTNEJTIyMyUyMiUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbn1cblxuLmZhcS1saXN0aW5nIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5mYXEtbGlzdGluZyB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgfVxufVxuXG4uZmFxLWxpc3RpbmctbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5mYXEtbGlzdGluZy1saXN0Lmhhcy1jb2x1bW5zIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luOiAwIC01MHB4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAuZmFxLWxpc3RpbmctbGlzdC5oYXMtY29sdW1ucyA+IFtjbGFzcyo9XCJpcy1cIl0ge1xuICAgIHBhZGRpbmc6IDAgNTBweDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5mYXEtbGlzdGluZy1saXN0Lmhhcy1jb2x1bW5zID4gW2NsYXNzKj1cImlzLVwiXTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5mYXEtbGlzdGluZy1saXN0Lmhhcy1jb2x1bW5zIC5pcy1mdWxsIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmZhcS1saXN0aW5nLWxpc3QuaGFzLWNvbHVtbnMgLmlzLTFcXC8yIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5mYXEtbGlzdGluZy1saXN0Lmhhcy1jb2x1bW5zIC5pcy0xXFwvMyB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMyU7XG4gIH1cbiAgLmZhcS1saXN0aW5nLWxpc3QuaGFzLWNvbHVtbnMgLmlzLTJcXC8zIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NiU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2JTtcbiAgfVxuICAuZmFxLWxpc3RpbmctbGlzdC5oYXMtY29sdW1ucyAuaXMtMVxcLzQge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmZhcS1saXN0aW5nLWxpc3QuaGFzLWNvbHVtbnMgLmlzLTNcXC80IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5mYXEtbGlzdGluZy1saXN0Lmhhcy1jb2x1bW5zIC5pcy0xXFwvNiB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2JTtcbiAgfVxuICAuZmFxLWxpc3RpbmctbGlzdC5oYXMtY29sdW1ucyAuaXMtNVxcLzYge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMlO1xuICB9XG4gIC5mYXEtbGlzdGluZy1saXN0Lmhhcy1jb2x1bW5zIC5pcy0xXFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAuZmFxLWxpc3RpbmctbGlzdC5oYXMtY29sdW1ucyAuaXMtMlxcLzUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbiAgLmZhcS1saXN0aW5nLWxpc3QuaGFzLWNvbHVtbnMgLmlzLTNcXC81IHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZmxleC1iYXNpczogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xuICB9XG4gIC5mYXEtbGlzdGluZy1saXN0Lmhhcy1jb2x1bW5zIC5pcy00XFwvNSB7XG4gICAgZmxleC1ncm93OiAwO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsZXgtYmFzaXM6IDgwJTtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZhcS1saXN0aW5nLWxpc3QuaGFzLWNvbHVtbnMgLmZhcS1saXN0aW5nLWxpc3QtaXRlbTphZnRlciB7XG4gICAgcmlnaHQ6IDUwcHg7XG4gIH1cbn1cblxuLmZhcS1saXN0aW5nLWhlYWRpbmcge1xuICBtYXJnaW46IDAgMCA2MHB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZhcS1saXN0aW5nLWhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XG4gICAgbWFyZ2luLXRvcDogLTMwcHg7XG4gIH1cbn1cblxuLmZhcS1saXN0aW5nLWxpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZhcS1saXN0aW5nLWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDM1cHggMDtcbn1cblxuLmZhcS1saXN0aW5nLWNhcmQ6YmVmb3JlLCAuZmFxLWxpc3RpbmctY2FyZDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQ0ZDRkNGO1xufVxuXG4uZmFxLWxpc3RpbmctY2FyZDphZnRlciB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAtMXB4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmZhcS1saXN0aW5nLWNhcmQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZmFxLWxpc3RpbmctY2FyZCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmbGV4OiAxO1xufVxuXG4uZmFxLWxpc3RpbmctY2FyZCBhICsgdWwge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uZmFxLWxpc3RpbmctY2FyZC10aXRsZSB7XG4gIGxldHRlci1zcGFjaW5nOiAtLjA1cHg7XG4gIGNvbG9yOiAjMjkyOTI5O1xuICBtYXJnaW46IDA7XG4gIHRyYW5zaXRpb246IC4ycyBlYXNlLWluLW91dCBjb2xvcjtcbiAgZm9udC1mYW1pbHk6IGFjdW1pbi1wcm8tY29uZGVuc2VkLCBhY3VtaW4tcHJvLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG4uZmFxLWxpc3RpbmctY2FyZC10aXRsZTpob3ZlciwgLmZhcS1saXN0aW5nLWNhcmQtdGl0bGU6Zm9jdXMge1xuICBjb2xvcjogIzJENzJGNztcbn1cblxuLmV4cGVyaWVuY2UtZWRpdG9yIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5leHBlcmllbmNlLWVkaXRvciAuc2l0ZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5leHBlcmllbmNlLWVkaXRvciBhcnRpY2xlLmFib3V0LXN1bm5vdmEgLmNvbnRlbnQgaDIge1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLmV4cGVyaWVuY2UtZWRpdG9yIGFydGljbGUudGV4dCBoMSB7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZXhwZXJpZW5jZS1lZGl0b3IgYXJ0aWNsZS5uZXdzLXByZXNzIGgzIHtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGluaGVyaXQ7XG59XG5cbi5leHBlcmllbmNlLWVkaXRvciAucGFnZS1pbnRyby1oZWFkaW5nIHtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGluaGVyaXQ7XG59XG5cbi5leHBlcmllbmNlLWVkaXRvciAuc3RhdGUtbGlzdGluZyAudGl0bGUge1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLmV4cGVyaWVuY2UtZWRpdG9yIGFydGljbGUudGVzdGltb25pYWwgLnRpdGxlIGgxIHtcbiAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGluaGVyaXQ7XG59XG5cbi5leHBlcmllbmNlLWVkaXRvciAuaW1hZ2UtcGxhY2Vob2xkZXIgPiAqIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uZXhwZXJpZW5jZS1lZGl0b3IgLmZ1bGx3aWR0aC1jYWxsb3V0LWltYWdlIHtcbiAgei1pbmRleDogMTtcbn1cbiIsIi8qXHJcbiAqIEdyaWQgU3lzdGVtXHJcbiAqXHJcbiAqIFRoaXMgaXMgYSBncmlkIHN5c3RlbSBiYXNlZCBvZmYgb2YgZmxvYXRzIGFuZCBDU1MgY2FsYygpIHRvIGNhbGN1bGF0ZSBwZXJjZW50YWdlLWJhc2VkIHdpZHRocyBhbmQgbWFyZ2lucy4gVGhpcyBhbGxvd3MgdGhlIGdyaWQgY29sdW1ucyB0byBiZSBmbGV4aWJsZSB0byBhIHJlc3BvbnNpdmUgdmlld3BvcnQsIHdpdGggZml4ZWQgZ2FwcyBiZXR3ZWVuIGVhY2ggY29sdW1uLiBHcmlkcyBjYW4gYWxzbyBiZSBuZXN0ZWQgYW5kIHN0aWxsIG1haW50YWluIHRoZSBjb25zaXN0ZW50IGdhcCBmb3IgY29uc2lzdGVudCBsYXlvdXQuXHJcbiAqXHJcbiAqIFNldHVwOlxyXG4gKlxyXG4gKiBTZXQgdXAgdGhlIGdyaWQgdmFyaWFibGVzIHRvIHNwZWNpZnkgdGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zLCBhcyB3ZWxsIGFzIHRoZSBnYXAgc2l6ZSBiZXR3ZWVuIGVhY2ggY29sdW1uLlxyXG4gKlxyXG4gKiBVc2FnZTpcclxuICogXHJcbiAqIEBpbmNsdWRlIGdyaWQtY29sdW1ucygkbnVtLCAkbWF4X2NvbHVtbnMsICRjb2x1bW5fZ2FwKVxyXG4gKiAgICAgVGhpcyBpcyB1c2VkIHRvIHNldCBhIGNvbHVtbiBhbmQgc3BlY2lmeSBob3cgbWFueSBjb2x1bW5zIGl0IHNob3VsZCBzcGFuXHJcbiAqIFxyXG4gKiAgIE9wdGlvbnNcclxuICogICAgICRudW0gW3JlcXVpcmVkXSAtPiBUb3RhbCBudW1iZXIgb2YgY29sdW1ucyB0byBzcGFuXHJcbiAqICAgICAkbWF4X2NvbHVtbnMgW29wdGlvbmFsXSAtPiBEZWZhdWx0cyB0byB0aGUgZ2xvYmFsIHZhcmlhYmxlLCBidXQgY2FuIGJlIHNldCBpZiB5b3Ugd2FudCB0byBlc3RhYmxpc2ggYSBuZXcgZ3JpZCBjb250ZXh0XHJcbiAqICAgICAkY29sdW1uX2dhcCBbb3B0aW9uYWxdIC0+IERlZmF1bHRzIHRvIHRoZSBnbG9iYWwgdmFyaWFibGUsIGJ1dCBjYW4gYmUgc2V0IGlmIHlvdSB3YW50IHRvIGVzdGFibGlzaCBhIG5ldyBjb2x1bW4gZ2FwXHJcbiAqXHJcbiAqIEBpbmNsdWRlIGdyaWQtd2lkdGgoJG51bSwgJG1heF9jb2x1bW5zLCAkY29sdW1uX2dhcClcclxuICogICAgIFRoaXMgaXMgdXNlZCB0byByZXR1cm4gYSB3aWR0aCBiYXNlZCBvbiB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgc3BlY2lmaWVkXHJcbiAqXHJcbiAqICAgT3B0aW9uc1xyXG4gKiAgICAgJG51bSBbcmVxdWlyZWRdIC0+IFRvdGFsIG51bWJlciBvZiBjb2x1bW5zIHRvIHNwYW5cclxuICogICAgICRtYXhfY29sdW1ucyBbb3B0aW9uYWxdIC0+IERlZmF1bHRzIHRvIHRoZSBnbG9iYWwgdmFyaWFibGUsIGJ1dCBjYW4gYmUgc2V0IGlmIHlvdSB3YW50IHRvIGVzdGFibGlzaCBhIG5ldyBncmlkIGNvbnRleHRcclxuICogICAgICRjb2x1bW5fZ2FwIFtvcHRpb25hbF0gLT4gRGVmYXVsdHMgdG8gdGhlIGdsb2JhbCB2YXJpYWJsZSwgYnV0IGNhbiBiZSBzZXQgaWYgeW91IHdhbnQgdG8gZXN0YWJsaXNoIGEgbmV3IGNvbHVtbiBnYXBcclxuICpcclxuICogL1xyXG5cclxuLyogLS0tIEdyaWQgdmFyaWFibGVzIC0tLSovXHJcbiRtYXhfY29sdW1uczogMTI7IC8vIFRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkXHJcbiRjb2x1bW5fZ2FwOiAyMHB4OyAvLyBHYXAgc2l6ZSBiZXR3ZWVuIGVhY2ggY29sdW1uLlxyXG5cclxuQG1peGluIGdyaWQtd2lkdGgoJG51bSwgJG1heF9jb2x1bW5zOiAkbWF4X2NvbHVtbnMsICRjb2x1bW5fZ2FwOiAkY29sdW1uX2dhcCkge1xyXG4gICAgLy8gRWRnZSBkb2Vzbid0IGNhbGN1bGF0ZSBjb3JyZWN0bHksIHNvIGFkZCBhIC4xcHggb2Zmc2V0XHJcbiAgICB3aWR0aDogY2FsYygoKCgxMDAlIC0gI3soJGNvbHVtbl9nYXAgKiAoJG1heF9jb2x1bW5zIC0gMSkpfSkgLyAjeyRtYXhfY29sdW1uc30pICogI3skbnVtfSkgKyAjeygkY29sdW1uX2dhcCAqICgkbnVtIC0gMSkpfSAtIC4xcHgpO1xyXG59XHJcblxyXG5AbWl4aW4gcHVzaCgkbnVtLCAkZXh0cmFfZ2FwOiBmYWxzZSwgJG1heF9jb2x1bW5zOiAkbWF4X2NvbHVtbnMsICRkaXJlY3Rpb246ICdsZWZ0JywgJGNvbHVtbl9nYXA6ICRjb2x1bW5fZ2FwKSB7XHJcbiAgICAkZXh0cmFfZ2FwX3NpemU6IDBweDtcclxuICAgIEBpZigkZXh0cmFfZ2FwKSB7XHJcbiAgICAgICAgJGV4dHJhX2dhcF9zaXplOiAkY29sdW1uX2dhcDtcclxuICAgIH1cclxuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiBjYWxjKCAoKCgxMDAlIC0gI3soJGNvbHVtbl9nYXAgKiAoJG1heF9jb2x1bW5zIC0gMSkpfSkgLyAjeyRtYXhfY29sdW1uc30pICogI3skbnVtfSkgKyAjeygkY29sdW1uX2dhcCAqICgkbnVtIC0gMSkpfSArICN7JGNvbHVtbl9nYXAgKyAkZXh0cmFfZ2FwX3NpemV9ICkgIWltcG9ydGFudDtcclxuICAgIC8vIFNhbWUgdmFsdWUsIGJ1dCB1c2VkIHRvIG92ZXJyaWRlIHRoZSAmOmZpcnN0LWNoaWxkIHNlbGVjdG9yIGluIGdyaWQtY29sdW1ucygpXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogY2FsYyggKCgoMTAwJSAtICN7KCRjb2x1bW5fZ2FwICogKCRtYXhfY29sdW1ucyAtIDEpKX0pIC8gI3skbWF4X2NvbHVtbnN9KSAqICN7JG51bX0pICsgI3soJGNvbHVtbl9nYXAgKiAoJG51bSAtIDEpKX0gKyAjeyRjb2x1bW5fZ2FwICsgJGV4dHJhX2dhcF9zaXplfSApICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBwdWxsKCRudW0sICRleHRyYV9nYXA6IGZhbHNlLCAkbWF4X2NvbHVtbnM6ICRtYXhfY29sdW1ucywgJGRpcmVjdGlvbjogJ2xlZnQnLCAkY29sdW1uX2dhcDogJGNvbHVtbl9nYXApIHtcclxuICAgICRleHRyYV9nYXBfc2l6ZTogMHB4O1xyXG4gICAgQGlmKCRleHRyYV9nYXApIHtcclxuICAgICAgICAkZXh0cmFfZ2FwX3NpemU6ICRjb2x1bW5fZ2FwO1xyXG4gICAgfVxyXG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06IGNhbGMoICgoKCgxMDAlIC0gI3soJGNvbHVtbl9nYXAgKiAoJG1heF9jb2x1bW5zIC0gMSkpfSkgLyAjeyRtYXhfY29sdW1uc30pICogI3skbnVtfSkgKyAjeygkY29sdW1uX2dhcCAqICgkbnVtIC0gMSkpfSArICN7JGNvbHVtbl9nYXAgKyAkZXh0cmFfZ2FwX3NpemV9KSAqIC0xICkgIWltcG9ydGFudDtcclxuICAgIC8vIFNhbWUgdmFsdWUsIGJ1dCB1c2VkIHRvIG92ZXJyaWRlIHRoZSAmOmZpcnN0LWNoaWxkIHNlbGVjdG9yIGluIGdyaWQtY29sdW1ucygpXHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogY2FsYyggKCgoKDEwMCUgLSAjeygkY29sdW1uX2dhcCAqICgkbWF4X2NvbHVtbnMgLSAxKSl9KSAvICN7JG1heF9jb2x1bW5zfSkgKiAjeyRudW19KSArICN7KCRjb2x1bW5fZ2FwICogKCRudW0gLSAxKSl9ICsgI3skY29sdW1uX2dhcCArICRleHRyYV9nYXBfc2l6ZX0pICogLTEgKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gZ3JpZC1jb250YWluZXIge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGdyaWQtY29sdW1ucygkbnVtLCAkbWF4X2NvbHVtbnM6ICRtYXhfY29sdW1ucywgJGNvbHVtbl9nYXA6ICRjb2x1bW5fZ2FwKSB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXdpZHRoKCRudW0sICRtYXhfY29sdW1ucywgJGNvbHVtbl9nYXApO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb2x1bW5fZ2FwICFpbXBvcnRhbnQ7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucm93IHtcclxuICAgIEBpbmNsdWRlIGdyaWQtY29udGFpbmVyKCk7XHJcbn1cclxuXHJcbi8qXHJcbi5jb2wge1xyXG4gICAgQGluY2x1ZGUgY29sO1xyXG4gICAgbWFyZ2luLWxlZnQ6ICRjb2x1bW5fZ2FwICFpbXBvcnRhbnQ7XHJcbiAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59Ki9cclxuXHJcbi8qIERlYnVnICovXHJcblxyXG4uZ3JpZC1kZWJ1ZyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgd2lkdGg6ICRjb250ZW50d2lkdGg7XHJcbiAgICBtYXJnaW4tbGVmdDogJGNvbnRlbnR3aWR0aCAvIDIgKiAtMTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgLmNvbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDEpO1xyXG4gICAgICAgIC8vQGluY2x1ZGUgZ3JpZC13aWR0aCgxKTtcclxuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LDAsMCwuMSk7XHJcbiAgICB9XHJcbn0iLCIkY29sdW1uX2dhcDogMjBweCAhZGVmYXVsdDsgXHJcbiRjbGFzc1ByZWZpeDogJ2lzLScgIWRlZmF1bHQ7XHJcbiRyb3dOYW1lOiAnLnJvdycgIWRlZmF1bHQ7XHJcblxyXG5AbWl4aW4gZmxleC1ncmlkKCRjbGFzc1ByZWZpeDogJGNsYXNzUHJlZml4LCAkZ3V0dGVyOiAkY29sdW1uX2dhcCwgJHJvd05hbWU6ICRyb3dOYW1lLCAkaXNTZWxmOiBmYWxzZSwgJGluY2x1ZGVCcmVha3BvaW50czogdHJ1ZSkge1xyXG4gICAgQGluY2x1ZGUgbGF5b3V0LWxpc3QoKTtcclxuXHJcbiAgICBAaWYoJGlzU2VsZikge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIEBpZigkZ3V0dGVyICE9IDAgYW5kICRndXR0ZXIgIT0gMHB4KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAoJGd1dHRlciAvIDIpICogLTE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICAjeyRyb3dOYW1lfSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgICAgICBAaWYoJGd1dHRlciAhPSAwIGFuZCAkZ3V0dGVyICE9IDBweCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwICgkZ3V0dGVyIC8gMikgKiAtMTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtYnJlYWtwb2ludHMoJGluY2x1ZGVCcmVha3BvaW50czogJGluY2x1ZGVCcmVha3BvaW50cywgJGNsYXNzUHJlZml4OiAkY2xhc3NQcmVmaXgsICRndXR0ZXI6ICRndXR0ZXIpO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1ncmlkLWNvbHVtbnMoJGNsYXNzUHJlZml4LCAkZ3V0dGVyKSB7XHJcbiAgICBAZWFjaCAkbmFtZSwgJHBlcmNlbnRhZ2UgaW4gJGZsZXgtY29sdW1ucyB7XHJcbiAgICAgICAgLiN7XCIjeyRjbGFzc1ByZWZpeH0jeyRuYW1lfVwifSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oJHBlcmNlbnRhZ2U6ICRwZXJjZW50YWdlLCAkZ3V0dGVyOiAkZ3V0dGVyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5AbWl4aW4gZmxleC1ncmlkLWNvbHVtbigkcGVyY2VudGFnZSwgJGd1dHRlcjogJGNvbHVtbl9nYXApIHtcclxuICAgIGZsZXgtZ3JvdzogMDtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgIEBpZigkZ3V0dGVyID09IDAgb3IgJGd1dHRlciA9PSAwcHgpIHtcclxuICAgICAgICBmbGV4LWJhc2lzOiAkcGVyY2VudGFnZTtcclxuICAgICAgICBtYXgtd2lkdGg6ICRwZXJjZW50YWdlO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogJHBlcmNlbnRhZ2U7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAkcGVyY2VudGFnZTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGZsZXgtZ3JpZC1pdGVtKCRndXR0ZXI6ICRjb2x1bW5fZ2FwKSB7XHJcblxyXG4gICAgQGlmKCRndXR0ZXIgIT0gMCBhbmQgJGd1dHRlciAhPSAwcHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAwICgkZ3V0dGVyIC8gMik7XHJcbiAgICB9XHJcblxyXG4gICAgbWluLXdpZHRoOiAwOyAvLyBmaXhlcyBhIHdlaXJkIGJ1ZyB3aGVyZSBvdmVyZmxvd2luZyBjb250ZW50IGJyZWFrcyBmbGV4LXdyYXBcclxuICAgIGZsZXgtZ3JvdzogMDtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgIEBpZigkZ3V0dGVyID09IDAgb3IgJGd1dHRlciA9PSAwcHgpIHtcclxuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQG1peGluIGZsZXgtZ3JpZC1icmVha3BvaW50cygkaW5jbHVkZUJyZWFrcG9pbnRzLCAkY2xhc3NQcmVmaXg6ICRjbGFzc1ByZWZpeCwgJGd1dHRlcjogJGNvbHVtbl9nYXApIHtcclxuICAgICYgPiBbY2xhc3MqPVwiI3skY2xhc3NQcmVmaXh9XCJdIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtaXRlbSgkZ3V0dGVyOiAkZ3V0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1ucygkY2xhc3NQcmVmaXg6ICRjbGFzc1ByZWZpeCwgJGd1dHRlcjogJGd1dHRlcik7XHJcblxyXG4gICAgQGlmKCRpbmNsdWRlQnJlYWtwb2ludHMpIHtcclxuICAgICAgICBAZWFjaCAkbmFtZSwgJHJlc29sdXRpb24gaW4gJGJyZWFrcG9pbnRzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnAoJG5hbWUpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW5zKCRjbGFzc1ByZWZpeDogXCIjeyRuYW1lfVxcXFw6aXMtXCIsICRndXR0ZXI6ICRndXR0ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBDcmVhdGUgYSBkZWZhdWx0IGdyaWQgYW5kIHNldCBhIG1hcmdpbiBib3R0b20gZm9yIG1vYmlsZVxyXG4uZmxleC1ncmlkIHtcclxuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZCgkaXNTZWxmOiB0cnVlKTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsLW1lZGl1bSkge1xyXG4gICAgICAgICYgPiBbY2xhc3MqPVwiaXMtXCJdIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBMYXlvdXQgVmFyaWFibGVzXHJcbiRzaWRlYmFyOiAyNzVweDtcclxuXHJcbi5sYXlvdXQge1xyXG4gICAgQGV4dGVuZCAuY2xlYXJmaXg7XHJcbn1cclxuXHJcbi8vIExheW91dCBTdHlsZXNcclxuLmxheW91dC1jb2x1bW5zIHtcclxuICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICA+IHNlY3Rpb24ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoOSwgJGNvbHVtbl9nYXA6IDU1cHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBhc2lkZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1ucygzLCAkY29sdW1uX2dhcDogNTVweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2l0ZS13cmFwcGVyIHtcclxuICAgIG1heC13aWR0aDogJGNvbnRlbnRtYXh3aWR0aDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICYuZXhwZXJpZW5jZS1lZGl0b3Ige1xyXG4gICAgICAgIC5zaXRlLWhhZGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud3JhcHBlciB7XHJcbiAgICBAZXh0ZW5kIC5jbGVhcmZpeDtcclxuICAgIG1heC13aWR0aDogJGNvbnRlbnR3aWR0aDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogMCAyMHB4O1xyXG5cclxuICAgIC53cmFwcGVyLCBcclxuICAgIC53cmFwcGVyLWxnLCBcclxuICAgIC53cmFwcGVyLW1kLFxyXG4gICAgLndyYXBwZXItc20ge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEdlbmVyaWMgR3JpZFxyXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgLmdyaWQge1xyXG4gICAgICAgICRzcGFjaW5nOiAxMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC8vQGluY2x1ZGUgZXhwZXJpbWVudGFsLXZhbHVlKHdpZHRoLCBjYWxjKDEwMCUgKyAjeyRzcGFjaW5nICogMn0pKTsgLy8gQmV0dGVyIGFsaWdubWVudCBmb3IgZXZlcnl0aGluZyBleGNlcHQgSUU4IHdpdGggdGhpc1xyXG4gICAgICAgIGJvcmRlci1zcGFjaW5nOiAkc3BhY2luZztcclxuICAgICAgICBtYXJnaW46IC0kc3BhY2luZzsgLy8gT2Zmc2V0IHRoZSBib3JkZXItc3BhY2luZyBhcm91bmQgdGhlIG91dHNpZGVcclxuICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgLy8qYmVoYXZpb3I6IHVybCgvc3RhdGljL2Nzcy9odGMvYm94c2l6aW5nLmh0Yyk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYudGhyZWUgLmNvbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZm91ciAuY29sIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5ib3JkZXIgLmNvbCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2NjY2NjYztcclxuICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuYmcge1xyXG4gICAgICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmM2YzZjM7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ud3JhcHBlciB7XHJcbiAgICAmLWxnLFxyXG4gICAgJi1tZCxcclxuICAgICYtc20ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLndyYXBwZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWxnIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICdsZycpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLW1kIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICdtZCcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXNtIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICdzbScpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvKiBodHRwOi8vd3d3LmZvbnRzcHJpbmcuY29tL2Jsb2cvZnVydGhlci1oYXJkZW5pbmctb2YtdGhlLWJ1bGxldHByb29mLXN5bnRheCAqL1xyXG5cclxuaHRtbCB7XHJcbiAgICBmb250LWZhbWlseTogJHNhbnM7XHJcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbmJ1dHRvbixcclxuaW5wdXQsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gICAgZm9udC1mYW1pbHk6ICRzYW5zO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUsXHJcbmg2IHtcclxuICAgIGZvbnQtZmFtaWx5OiAkc2FucztcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBtYXJnaW46IDEwcHggMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xyXG59XHJcblxyXG5oMSB7XHJcbiAgICBmb250LXNpemU6IDQ4cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4xNTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xyXG59XHJcblxyXG5oMiB7XHJcbiAgICBmb250LXNpemU6IDM2cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcclxufVxyXG5cclxuaDMge1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbn1cclxuXHJcbmg0IHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG5cclxuaDUge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG5oNiB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbnAge1xyXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGgxIHtcclxuICAgICAgICBmb250LXNpemU6IDQwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1ZW07XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcclxuICAgIH1cclxuXHJcbiAgICBoNCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMXB4O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGg1IHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgaDYge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNzVlbTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgaDEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xyXG4gICAgfVxyXG5cclxuICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTUzODQ2MTVlbTtcclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjEzNjM2MzY0ZW07XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjFweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgIH1cclxuXHJcbiAgICBoNSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIGg2IHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDhweDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgfVxyXG59XHJcblxyXG51bCxcclxub2wge1xyXG4gICAgdWwsXHJcbiAgICBvbCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSB0ZXh0LXNpemVzKCk7XHJcblxyXG4uc3Itb25seSB7XHJcbiAgICBAaW5jbHVkZSBzci1vbmx5KCk7XHJcbn1cclxuIiwidGFibGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcblx0dGgsIHRkIHtcclxuXHRcdHBhZGRpbmc6IDEwcHggMDtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjREFEQURBO1xyXG5cdH1cclxuXHR0aCB7XHJcblx0XHRjb2xvcjogI2U4ODI1YjtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0fVxyXG5cdHRkIHtcclxuXHRcdFxyXG5cdH1cclxuXHR0aGVhZCB7XHJcblx0XHR0aCB7XHJcblx0XHRcdC8vYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTg4MjViO1xyXG5cdFx0fVxyXG5cdH1cclxuXHR0Ym9keSB7XHJcblx0XHR0cjpudGgtY2hpbGQoZXZlbikge1xyXG5cdFx0XHQvL2JhY2tncm91bmQ6ICNmM2YzZjM7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiJGlucHV0cy1saXN0OiAnaW5wdXRbdHlwZT1cInRleHRcIl0nLCAnaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdJywgJ2lucHV0W3R5cGU9XCJzZWFyY2hcIl0nLCAnaW5wdXRbdHlwZT1cIm51bWJlclwiXScsXHJcbiAgICAnaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdJywgJ2lucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXScsICdpbnB1dFt0eXBlPVwiZGF0ZVwiXScsICdpbnB1dFt0eXBlPVwibW9udGhcIl0nLFxyXG4gICAgJ2lucHV0W3R5cGU9XCJ0aW1lXCJdJywgJ2lucHV0W3R5cGU9XCJ3ZWVrXCJdJywgJ2lucHV0W3R5cGU9XCJlbWFpbFwiXScsICdpbnB1dFt0eXBlPVwidXJsXCJdJywgJ2lucHV0W3R5cGU9XCJ0ZWxcIl0nLFxyXG4gICAgJ2lucHV0W3R5cGU9XCJjb2xvclwiXSc7XHJcbiRpbnB1dC1zZWxlY3RvcnM6ICgpO1xyXG5cclxuQGVhY2ggJGl0ZW0gaW4gJGlucHV0cy1saXN0IHtcclxuICAgICRpbnB1dC1zZWxlY3RvcnM6IGpvaW4oJGlucHV0LXNlbGVjdG9ycywgdW5xdW90ZSgkaXRlbSksIGNvbW1hKSAhZ2xvYmFsO1xyXG59XHJcblxyXG4jeyRpbnB1dC1zZWxlY3RvcnN9LFxyXG50ZXh0YXJlYSxcclxuc2VsZWN0IHtcclxuICAgIHRyYW5zaXRpb246IGJvcmRlciBsaW5lYXIgMC4ycywgYm94LXNoYWRvdyBsaW5lYXIgMC4ycztcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAyNTBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlYWVhZWE7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAvLyBXZWJraXRcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICY6Zm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogI2FjYWNhYztcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5maWVsZHNldCB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcclxuICAgIHBhZGRpbmc6IDAgMjVweCAwIDVweDtcclxuICAgIC8vYmFja2dyb3VuZDogI2ZmZiBpbWFnZS11cmwoXCJpY29uL3NlYXJjaC5wbmdcIikgOTglIDUwJSBuby1yZXBlYXQ7XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAyMDBweDtcclxufVxyXG5cclxuc2VsZWN0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgLy9iYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4uL2ltYWdlcy9zZWxlY3QtYXJyb3cucG5nXCIpIG5vLXJlcGVhdCAxMDAlIDY1JTtcclxuICAgIC8vIE1vemlsbGFcclxuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIHRleHQtaW5kZW50OiAwLjAxcHg7XHJcbiAgICB0ZXh0LW92ZXJmbG93OiAnJztcclxuXHJcbiAgICAvLyBXZWJraXRcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG4vLyBJRVxyXG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxufVxyXG4ubHQtaWUxMCBzZWxlY3Qge1xyXG4gICAgcGFkZGluZzogMCAwIDAgNXB4O1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbn1cclxuXHJcbmJ1dHRvbixcclxuYS5idXR0b24ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAxNXB4IDUwcHg7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiBnZXRHcmFkaWVudChnb2xkZW4taG91cik7XHJcbiAgICBib3gtc2hhZG93OiAwcHggOHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgZm9udC1mYW1pbHk6IGFjdW1pbi1wcm8tY29uZGVuc2VkLCBhY3VtaW4tcHJvLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICYuc2Vjb25kYXJ5IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBnZXRHcmFkaWVudChhdXJvcmEpO1xyXG4gICAgfVxyXG5cclxuICAgIEBlYWNoICRuYW1lLCAkYmcgaW4gJGdyYWRpZW50cyB7XHJcbiAgICAgICAgJi4jeyRuYW1lfSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRiZztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgb3BhY2l0eTogMC41O1xyXG4gICAgfVxyXG59XHJcblxyXG5bcm9sZT0nYnV0dG9uJ10ge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ubG9hZGluZ1NwaW5uZXIge1xyXG4gICAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcclxuICAgIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYW5pbWF0aW9uOiBsb2FkaW5nU3Bpbm5lciAuN3MgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgLXdlYmtpdC1hbmltYXRpb246IGxvYWRpbmdTcGlubmVyIC43cyBpbmZpbml0ZSBsaW5lYXI7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xyXG4gICAgZnJvbSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpICAgfVxyXG4gICAgdG8gICB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgfVxyXG59XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xyXG4gICAgZnJvbSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgICB9XHJcbiAgICB0byAgIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIH1cclxufVxyXG5cclxuZm9ybSxcclxuLmZvcm0ge1xyXG4gICAgZGl2LnZhbGlkYXRpb25TdW1tYXJ5IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIGNvbG9yOiAjYmUzNDM4O1xyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxheW91dC1saXN0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaXRlbSB7XHJcbiAgICAgICAgQGV4dGVuZCAuY2xlYXJmaXg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cclxuICAgICAgICA+IGxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gdWwge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaG9yaXpvbnRhbCB7XHJcbiAgICAgICAgICAgID4gbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLml0ZW0uZmwtZW5hYmxlZCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICA+IGxhYmVsLFxyXG4gICAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAxcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgICAgICAgICAgY29sb3I6ICNhY2FjYWM7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRpbnB1dC1zZWxlY3RvcnN9LFxyXG4gICAgICAgIHRleHRhcmVhLFxyXG4gICAgICAgIHNlbGVjdCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxN3B4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTdweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5mbC1hY3RpdmUge1xyXG4gICAgICAgICAgICAjeyRpbnB1dC1zZWxlY3RvcnN9LFxyXG4gICAgICAgICAgICB0ZXh0YXJlYSxcclxuICAgICAgICAgICAgc2VsZWN0IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gbGFiZWwsXHJcbiAgICAgICAgICAgIC5sYWJlbCB7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmZsLWFuaW1hdGUge1xyXG4gICAgICAgICAgICAjeyRpbnB1dC1zZWxlY3RvcnN9LFxyXG4gICAgICAgICAgICB0ZXh0YXJlYSxcclxuICAgICAgICAgICAgc2VsZWN0LFxyXG4gICAgICAgICAgICA+IGxhYmVsLFxyXG4gICAgICAgICAgICAubGFiZWwge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ncm91cCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIC0xMHB4O1xyXG5cclxuICAgICAgICAgICAgLml0ZW0ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMTtcclxuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XHJcbiAgICAgICAgICAgICAgICAjeyRpbnB1dC1zZWxlY3RvcnN9LFxyXG4gICAgICAgICAgICAgICAgdGV4dGFyZWEsXHJcbiAgICAgICAgICAgICAgICBzZWxlY3Qge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5ncm91cCAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbnMge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgYnV0dG9uLFxyXG4gICAgICAgIC5idXR0b24ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDEwcHggMCAwIDEwcHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9J3JhZGlvJ10sXHJcbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5yYWRpby1saXN0LFxyXG4gICAgLmNoZWNrYm94LWxpc3Qge1xyXG4gICAgICAgIEBpbmNsdWRlIGxheW91dC1saXN0KCk7XHJcblxyXG4gICAgICAgIGlucHV0LFxyXG4gICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5pbmxpbmUge1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gc3BlY2lmaWNpdHkgbmVlZGVkIGJlY2F1c2UgalF1ZXJ5IHZhbGlkYXRlIGFkZHMgLmVycm9yIGNsYXNzIHRvIGJvdGggZmllbGQgYW5kIGVycm9yIG1lc3NhZ2VcclxuICAgIHNwYW4uZXJyb3Ige1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgd2hpdGUpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2VmMzAzOTtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE0cHgpO1xyXG4gICAgICAgICAgICBsZWZ0OiA0MHB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg0NSwgMTE0LCAyNDcsIDApO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjZWYzMDM5O1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY3VzdG9tLWNoZWNrYm94IHtcclxuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XHJcblxyXG4gICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSxcclxuICAgIGlucHV0W3R5cGU9J3JhZGlvJ10ge1xyXG4gICAgICAgIEBpbmNsdWRlIHNyLW9ubHkoKTtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbiAgICB9XHJcblxyXG4gICAgbGFiZWw6OmJlZm9yZSxcclxuICAgIGxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAvKk91dGVyIGJveCBvZiB0aGUgZmFrZSBjaGVja2JveCovXHJcbiAgICBsYWJlbDo6YmVmb3JlIHtcclxuICAgICAgICBoZWlnaHQ6IDIycHg7XHJcbiAgICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgIHRvcDogMXB4O1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNlY2VjZWM7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsOjpiZWZvcmUge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLypDaGVja21hcmsgb2YgdGhlIGZha2UgY2hlY2tib3gqL1xyXG4gICAgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgd2lkdGg6IDEzcHg7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjZmZmO1xyXG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgbGVmdDogNXB4O1xyXG4gICAgICAgIHRvcDogOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9J3JhZGlvJ10gKyBsYWJlbDo6YWZ0ZXIge1xyXG4gICAgICAgIGhlaWdodDogMTZweDtcclxuICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMmQ3MmY3O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgdG9wOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLypIaWRlIHRoZSBjaGVja21hcmsgYnkgZGVmYXVsdCovXHJcbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddICsgbGFiZWw6OmFmdGVyLFxyXG4gICAgaW5wdXRbdHlwZT0ncmFkaW8nXSArIGxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMmQ3MmY3O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogIzJkNzJmNztcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQgKyBsYWJlbDo6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcclxuICAgIH1cclxuXHJcbiAgICAvKlVuaGlkZSBvbiB0aGUgY2hlY2tlZCBzdGF0ZSovXHJcbiAgICBpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIsXHJcbiAgICBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQgKyBsYWJlbDo6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIC8qQWRkaW5nIGZvY3VzIHN0eWxlcyBvbiB0aGUgb3V0ZXItYm94IG9mIHRoZSBmYWtlIGNoZWNrYm94Ki9cclxuICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J106Zm9jdXMgKyBsYWJlbDo6YmVmb3JlLFxyXG4gICAgaW5wdXRbdHlwZT0ncmFkaW8nXTpmb2N1cyArIGxhYmVsOjpiZWZvcmUge1xyXG4gICAgICAgIG91dGxpbmU6IHJnYig1OSwgMTUzLCAyNTIpIGF1dG8gNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBDdXN0b20gZHJvcGRvd24gKi9cclxuLmN1c3RvbS1kcm9wZG93biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxOTIuODdkZWcsICNGRkZGRkYgNDguNzIlLCAjQjNCM0IzIDE0MS44JSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0ZDRkNGO1xyXG4gICAgYm94LXNoYWRvdzogNHB4IDFweCAxMXB4IHJnYmEoMCwgMCwgMCwgMC4xMyk7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJiA+IHNlbGVjdCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIGNvbG9yOiAgbWFwLWdldCgkY29sb3JzLCBibGFjayk7XHJcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHggMzVweCAxMnB4O1xyXG4gICAgICAgIHdpZHRoOiAzNTBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB0ZXh0LWluZGVudDogMC4wMXB4O1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6ICcnO1xyXG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiBoaWRlIGRlZmF1bHQgYXJyb3cgaW4gY2hyb21lIE9TWCAqL1xyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSxcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIC8qICBDdXN0b20gZHJvcGRvd24gYXJyb3cgKi9cclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICB3aWR0aDogMThweDtcclxuICAgICAgICBoZWlnaHQ6IDExcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgcmlnaHQ6IDMwcHg7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTUuNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGlubGluZS1zdmcoJzxzdmcgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjExXCIgdmlld0JveD1cIjAgMCAxOCAxMVwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxwYXRoIGQ9XCJNMTcgMUw5IDlMMSAwLjk5OTk5OVwiIHN0cm9rZT1cIiMyRDcyRjdcIiBzdHJva2Utd2lkdGg9XCIyXCIvPjwvc3ZnPicpO1xyXG4gICAgfVxyXG5cclxuICAgICYgc2VsZWN0W2Rpc2FibGVkXSB7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICAgIH1cclxuXHJcbiAgICAmIHNlbGVjdFtkaXNhYmxlZF06OmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xyXG4gICAgfVxyXG5cclxuICAgICYtbGFiZWwge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBsZWZ0OiAzNXB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgdG9wOiAxMnB4O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYtcmVkaXJlY3Qge1xyXG4gICAgICAgIC5jdXN0b20tZHJvcGRvd24tbGFiZWwge1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGN1c3RvbS10b2dnbGUoKTtcclxuXHJcbi5jb250YWN0LXByZWZlcmVuY2VzLWNvbnRhaW5lciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xyXG4gICAgcGFkZGluZzogMjVweCAwIDA7XHJcblxyXG4gICAgLmNvbnRhY3QtcHJlZmVyZW5jZXMtbGFiZWwge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmNoZWNrYm94LWxpc3Qge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xyXG5cclxuICAgICAgICAmLmNvbnRhY3RzIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY3VzdG9tLWNoZWNrYm94IGxhYmVsOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmN1c3RvbS1jaGVja2JveCBsYWJlbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICAgICAgfSAgXHJcblxyXG4gICAgICAgIC5jdXN0b20tY2hlY2tib3ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDRweDtcclxuICAgICAgICAgICAgdG9wOiA2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybSBpbnB1dFt0eXBlPSdjaGVja2JveCddIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8vIEZ1bmN0aW9uIHRvIHJlbW92ZSBkdXBsaWNhdGVzIGZyb20gYSBsaXN0XHJcbkBmdW5jdGlvbiByZW1vdmUtZHVwbGljYXRlcygkbGlzdCkge1xyXG5cdCRyZXN1bHQ6ICgpO1xyXG5cclxuXHRAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XHJcblx0XHRAaWYgbm90IGluZGV4KCRyZXN1bHQsICRpdGVtKSB7XHJcblx0XHRcdCRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCAkaXRlbSwgbGlzdC1zZXBhcmF0b3IoJGxpc3QpKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEByZXR1cm4gJHJlc3VsdDtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdldEdyYWRpZW50Q29sb3IoJGdyYWRpZW50TmFtZSkge1xyXG5cdEByZXR1cm4gbWFwLWdldCgkZ3JhZGllbnQtY29sb3JzLCAkZ3JhZGllbnROYW1lKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdldEdyYWRpZW50KCRncmFkaWVudE5hbWUpIHtcclxuXHRAcmV0dXJuIG1hcC1nZXQoJGdyYWRpZW50cywgJGdyYWRpZW50TmFtZSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBnZXRHcmFkaWVudEZhbGxiYWNrKCRncmFkaWVudE5hbWUpIHtcclxuXHRAcmV0dXJuIG1peChtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3IoJGdyYWRpZW50TmFtZSksIGxlZnQpLCBtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3IoJGdyYWRpZW50TmFtZSksIHJpZ2h0KSwgNjAlKTtcclxufVxyXG5cclxuXHJcbi8vIENhbGN1bGVhdGUgYnJpZ2h0bmVzcyBvZiBhIGdpdmVuIGNvbG9yLlxyXG5AZnVuY3Rpb24gYnJpZ2h0bmVzcygkY29sb3IpIHtcclxuICAgIEByZXR1cm4gKChyZWQoJGNvbG9yKSAqIC4yOTkpICsgKGdyZWVuKCRjb2xvcikgKiAuNTg3KSArIChibHVlKCRjb2xvcikgKiAuMTE0KSkgLyAyNTUgKiAxMDAlO1xyXG59XHJcbiAgXHJcbi8vIENvbXBhcmVzIGNvbnRyYXN0IG9mIGEgZ2l2ZW4gY29sb3IgdG8gdGhlIGxpZ2h0L2RhcmsgYXJndW1lbnRzIGFuZCByZXR1cm5zIHdoaWNoZXZlciBpcyBtb3N0IFwiY29udHJhc3R5XCJcclxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvciwgJGRhcms6IG1hcC1nZXQoJGNvbG9ycywgYmxhY2spLCAkbGlnaHQ6IG1hcC1nZXQoJGNvbG9ycywgd2hpdGUpKSB7XHJcbiAgICBAaWYgJGNvbG9yID09IG51bGwge1xyXG4gICAgICAgIEByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICAkY29sb3ItYnJpZ2h0bmVzczogYnJpZ2h0bmVzcygkY29sb3IpOyAgXHJcbiAgICAgICAgJGxpZ2h0LXRleHQtYnJpZ2h0bmVzczogYnJpZ2h0bmVzcygkbGlnaHQpO1xyXG4gICAgICAgICRkYXJrLXRleHQtYnJpZ2h0bmVzczogYnJpZ2h0bmVzcygkZGFyayk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgQHJldHVybiBpZihhYnMoJGNvbG9yLWJyaWdodG5lc3MgLSAkbGlnaHQtdGV4dC1icmlnaHRuZXNzKSA+IGFicygkY29sb3ItYnJpZ2h0bmVzcyAtICRkYXJrLXRleHQtYnJpZ2h0bmVzcyksICRsaWdodCwgJGRhcmspOyAgXHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFJlcGxhY2UgbGV0dGVyc1xyXG5AZnVuY3Rpb24gc3RyLXJlcGxhY2UoJHN0cmluZywgJHNlYXJjaCwgJHJlcGxhY2U6ICcnKSB7XHJcbiAgICAkaW5kZXg6IHN0ci1pbmRleCgkc3RyaW5nLCAkc2VhcmNoKTtcclxuXHJcbiAgICBAaWYgJGluZGV4IHtcclxuICAgICAgICBAcmV0dXJuIHN0ci1zbGljZSgkc3RyaW5nLCAxLCAkaW5kZXggLSAxKSArICRyZXBsYWNlICtcclxuICAgICAgICAgICAgc3RyLXJlcGxhY2Uoc3RyLXNsaWNlKCRzdHJpbmcsICRpbmRleCArIHN0ci1sZW5ndGgoJHNlYXJjaCkpLCAkc2VhcmNoLCAkcmVwbGFjZSk7XHJcbiAgICB9XHJcblxyXG4gICAgQHJldHVybiAkc3RyaW5nO1xyXG59XHJcblxyXG4vLyBFbmNvZGUgc3ltYm9sc1xyXG5AZnVuY3Rpb24gdXJsLWVuY29kZSgkc3RyaW5nKSB7XHJcbiAgICAkbWFwOiAoXHJcbiAgICAgICAgJyUnOiAnJTI1JyxcclxuICAgICAgICAnPCc6ICclM0MnLFxyXG4gICAgICAgICc+JzogJyUzRScsXHJcbiAgICAgICAgJyAnOiAnJTIwJyxcclxuICAgICAgICAnISc6ICclMjEnLFxyXG4gICAgICAgICcqJzogJyUyQScsXHJcbiAgICAgICAgXCInXCI6ICclMjcnLFxyXG4gICAgICAgICdcIic6ICclMjInLFxyXG4gICAgICAgICcoJzogJyUyOCcsXHJcbiAgICAgICAgJyknOiAnJTI5JyxcclxuICAgICAgICAnOyc6ICclM0InLFxyXG4gICAgICAgICc6JzogJyUzQScsXHJcbiAgICAgICAgJ0AnOiAnJTQwJyxcclxuICAgICAgICAnJic6ICclMjYnLFxyXG4gICAgICAgICc9JzogJyUzRCcsXHJcbiAgICAgICAgJysnOiAnJTJCJyxcclxuICAgICAgICAnJCc6ICclMjQnLFxyXG4gICAgICAgICcsJzogJyUyQycsXHJcbiAgICAgICAgJy8nOiAnJTJGJyxcclxuICAgICAgICAnPyc6ICclM0YnLFxyXG4gICAgICAgICcjJzogJyUyMycsXHJcbiAgICAgICAgJ1snOiAnJTVCJyxcclxuICAgICAgICAnXSc6ICclNUQnLFxyXG4gICAgKTtcclxuXHJcbiAgICAkbmV3OiAkc3RyaW5nO1xyXG5cclxuICAgIEBlYWNoICRzZWFyY2gsICRyZXBsYWNlIGluICRtYXAge1xyXG4gICAgICAgICRuZXc6IHN0ci1yZXBsYWNlKCRuZXcsICRzZWFyY2gsICRyZXBsYWNlKTtcclxuICAgIH1cclxuXHJcbiAgICBAcmV0dXJuICRuZXc7XHJcbn1cclxuXHJcbi8vIEZvcm1hdCB0aGUgU1ZHIGFzIGEgVVJMXHJcbkBmdW5jdGlvbiBpbmxpbmUtc3ZnKCRzdHJpbmcpIHtcclxuICAgIEByZXR1cm4gdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsI3t1cmwtZW5jb2RlKCRzdHJpbmcpfScpO1xyXG59XHJcbiIsIkBpbmNsdWRlIGFzcGVjdC1yYXRpb3MoKTtcclxuQGluY2x1ZGUgYmFja2dyb3VuZC1ncmFkaWVudHMoKTtcclxuQGluY2x1ZGUgYmFja2dyb3VuZC1jb2xvcnMoKTtcclxuXHJcbi5jYWxsb3V0LWJveCB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDZweCAzNHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgcGFkZGluZzogNTBweDtcclxufVxyXG5cclxuLmNhcmF0IHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlODgyNWI7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgMnB4IDJweCAwO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcGFkZGluZzogM3B4O1xyXG5cclxuICAgIC8vIERlZmF1bHQgdG8gUmlnaHRcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcblxyXG4gICAgJi5sZWZ0IHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJi51cCB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJi5kb3duIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5icmVhZGNydW1icyB7XHJcbiAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdCgpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAuY2FyYXQ7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5vLWxpbmsge1xyXG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJsYWNrKTtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuZmlndXJlLnF1b3RlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJsb2NrcXVvdGUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgIH1cclxuXHJcbiAgICBjaXRlIHtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxufVxyXG5cclxudWwucGFnaW5hdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdCgpO1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgICAgICAgICAgIFxyXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBibGFjayk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnNlbGVjdGVkIGEge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAtZ2V0KCRjb2xvcnMsIG9yYW5nZSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FyYXQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICM3OTg4ZTk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG51bC5jYXJvdXNlbC1uYXYge1xyXG4gICAgQGluY2x1ZGUgbGF5b3V0LWxpc3QoKTtcclxuICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHRleHQtaW5kZW50OiAtNTAwMDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hY3RpdmUgYSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI0ZGNkIwQjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYXNrLXdyYXBwZXIge1xyXG4gICAgQGluY2x1ZGUgY3VydmVkLWJveChcImFydGljbGVcIik7XHJcbn1cclxuXHJcbi5pbWFnZS1wbGFjZWhvbGRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAmID4gKiB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIH1cclxufVxyXG5cclxuQGVhY2ggJGJwTmFtZSwgJHJlc29sdXRpb24gaW4gJGJyZWFrcG9pbnRzIHtcclxuICAgIEBpbmNsdWRlIGJwKCRicE5hbWUpIHtcclxuICAgICAgICAuI3skYnBOYW1lfVxcOmltYWdlLXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBcclxuICAgICAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gRGVza3RvcCBIZWFkZXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuYm9keS5pcy1zY3JvbGxpbmcgLnNpdGUtaGVhZGVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmFiYWJhO1xyXG59XHJcblxyXG4uc2l0ZS1oZWFkZXIuZGVza3RvcCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgaGVpZ2h0OiAxMzVweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHBhZGRpbmc6IDE1cHggMDtcclxuICAgIG1heC13aWR0aDogJGNvbnRlbnRtYXh3aWR0aDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC51dGlsaXR5LW5hdiB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3Q7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG4gICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzNXB4O1xyXG5cclxuICAgICAgICAgICAgJiA+IGEge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzZDNkM2QztcclxuXHJcbiAgICAgICAgICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC11bmRlcmxpbmUoZ29sZGVuLWhvdXIsIDFweCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ28ge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgICBoZWlnaHQ6IDU2cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvc3Vubm92YS1sb2dvLnBuZykgbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcclxuICAgICAgICB0ZXh0LWluZGVudDogLTUwMDBweDtcclxuICAgIH1cclxuXHJcbiAgICAubWFpbi1uYXYtd3JhcHBlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcblxyXG4gICAgLm1haW4tbmF2IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3Q7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuXHJcbiAgICAgICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAgbWFwLWdldCgkY29sb3JzLCBibGFjayk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuZ2V0LXF1b3RlIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGdldEdyYWRpZW50KGdvbGRlbi1ob3VyKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5pcy1hY3RpdmU6bm90KC5nZXQtcXVvdGUpLCAmOmhvdmVyOm5vdCguZ2V0LXF1b3RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtdW5kZXJsaW5lKGdvbGRlbi1ob3VyKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2ZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuaGFzLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDJweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQ1LCAxMTQsIDI0NywgMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICBtYXAtZ2V0KCRjb2xvcnMsIGJsYWNrKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiA2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwcHggMTVweCAzNHB4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxODBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gTW9iaWxlIEhlYWRlclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuLnNpdGUtaGVhZGVyLm1vYmlsZSB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgei1pbmRleDogMTAwO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcblxyXG4gICAgLmxvZ28ge1xyXG4gICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgIHdpZHRoOiAxNDRweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9zdW5ub3ZhLWxvZ28ucG5nKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xyXG4gICAgICAgIHRleHQtaW5kZW50OiAtNTAwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tb2JpbGUtbWVudSB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIH1cclxuXHJcbiAgICAkaGFtYnVyZ2VyLWhlaWdodDogMTZweDtcclxuICAgICRoYW1idXJnZXItc3RyaXBlLWhlaWdodDogM3B4O1xyXG4gICAgJGhhbWJ1cmdlci13aWR0aDogMjRweDtcclxuICAgIFxyXG4gICAgc3Bhbi5oYW1idXJnZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6ICRoYW1idXJnZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1zdHJpcGUtaGVpZ2h0O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAuNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgd2lkdGg6ICRoYW1idXJnZXItd2lkdGg7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBnZXRHcmFkaWVudChnb2xkZW4taG91cik7XHJcbiAgICAgICAgICAgIGhlaWdodDogJGhhbWJ1cmdlci1zdHJpcGUtaGVpZ2h0O1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWhlaWdodCAvIDI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcclxuICAgICAgICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1oZWlnaHQgLyAyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0KSB7XHJcbiAgICAgICAgICAgICAgICB0b3A6ICRoYW1idXJnZXItaGVpZ2h0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm9wZW4gc3BhbiB7XHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgICAgIHRvcDogJGhhbWJ1cmdlci1oZWlnaHQgLyAyO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWhlaWdodCAvIDI7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuYXYge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3Q7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICBtYXAtZ2V0KCRjb2xvcnMsIGJsYWNrKTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLmdldC1xdW90ZSBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGdldEdyYWRpZW50KGdvbGRlbi1ob3VyKTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDEycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJiA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjNmM2YzO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAtMjBweDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgaGVpZ2h0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuaGFzLXN1Yi1uYXYgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsLnV0aWxpdHktbmF2IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3Q7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xyXG5cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIG1hcC1nZXQoJGNvbG9ycywgYmxhY2spO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLnNlbGVjdGVkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtdW5kZXJsaW5lKGdvbGRlbi1ob3VyLCAxcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBbZGF0YS1hY2NvcmRpb24tdHJpZ2dlcl0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogMTVweDtcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgdG9wOiAyMnB4O1xyXG4gICAgICAgIHJpZ2h0OiAtNXB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg0NSwgMTE0LCAyNDcsIDApO1xyXG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAgbWFwLWdldCgkY29sb3JzLCBibGFjayk7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3MgZWFzZS1pbi1vdXQgdHJhbnNmb3JtO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1cHggM3B4O1xyXG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogNnB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooLTE4MGRlZyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5vcGVuIHtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuIiwiLnNpdGUtZm9vdGVyIHtcclxuICAgIHBhZGRpbmc6IDAgMCA1MHB4IDA7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtd2lkdGgoMTAsIDEyKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgxKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaDQge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjkyOTI5O1xyXG4gICAgfVxyXG4gICAgZGl2LmNvbC0xIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoMywgMTApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGRpdi5jb2wtMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDMsIDEwKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBkaXYuY29sLTMge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29udGFpbmVyKCk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDQsIDEwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdCgpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoMiwgNCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZvb3Rub3RlcyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgY29sb3I6ICM4RjhGOEY7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29weXJpZ2h0IHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxheW91dC1saXN0KCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8qIFRoaXMgZmlsZSBpcyB3aGVyZSB0aGUgc3R5bGluZyBmb3IgbW9kdWxlcyB3aWxsIGdvLiBUaGlzIGVtcGxveWVzIHRoZSBjb25jZXB0cyBvZiBPT0NTUywgY3JlYXRpbmcgY29tbW9uIGJhc2UgY2xhc3NlcyAodXNpbmcgPGFydGljbGU+IGFzIHRoZSBiYXNlKSwgYW5kIGV4dGVuZGluZyBhcyBuZWNlc3NhcnkgKi9cclxuXHJcbi8qXHJcblxyXG48YXJ0aWNsZSBjbGFzcz1cIm1vZHVsZS1uYW1lXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgIDxoZWFkZXI+XHJcbiAgICAgICAgICAgIDxoMj5Nb2R1bGUgTmFtZTwvaDI+XHJcbiAgICAgICAgPC9oZWFkZXI+XHJcbiAgICAgICAgPCEtLSBDb250ZW50IGhlcmUgLS0+XHJcbiAgICA8L2Rpdj5cclxuPC9hcnRpY2xlPlxyXG5cclxuKi9cclxuXHJcbmFydGljbGUge1xyXG4gICAgLy8gQ2FyZWZ1bCB3aGF0J3MgYWRkZWQgaGVyZS4gVGhpcyBpcyB0aGUgYmFzZSBjbGFzcywgYW5kIGlzIHVzZWQgZXZlcnl3aGVyZVxyXG4gICAgbWFyZ2luOiAxMDBweCAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICBtYXJnaW46IDYwcHggMDtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5sYXlvdXQge1xyXG4gICAgJiA+IGFydGljbGU6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgXHJcbiAgICB9XHJcbn1cclxuXHJcbi5tYWluQ29udGVudCwgLmV4dHJhQ29udGVudCwgLnNpZGViYXIge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDAgNTBweCAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGltcG9ydCBcIm1vZHVsZXMvYWJvdXQtc3Vubm92YVwiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9icmVhZGNydW1icy13cmFwcGVyXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2NhbGxvdXRzXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2Nhcm91c2VsXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2NoYXJpdHktbGlzdGluZ1wiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9jb21wYXJpc29uLXRhYmxlXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2Jsb2ctbGlzdGluZ1wiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9mdWxsd2lkdGgtY2FsbG91dFwiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9nZXQtcXVvdGVcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvaGVyb1wiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9ob21lcGFnZS1oZXJvXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2hyXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2ltYWdlXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2ltYWdlLWNvbGxhZ2VcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvaW5mby1jYXJkXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2luZm9ncmFwaGljXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL25ld3MtcHJlc3NcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvcGFnZS1pbnRyb1wiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9wYXJ0bmVyLWZvcm1cIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvcHJvZHVjdC1jYXJkc1wiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9wcm9kdWN0LWhpZ2hsaWdodHNcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvc2VydmljZXMtYXZhaWxhYmlsaXR5XCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL3NldHVwLXN0ZXBzXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL3NpZGViYXItbmF2XCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL3N0YXRlLWxpc3RpbmdcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvdGVzdGltb25pYWxcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvdGV4dC1jb2x1bW5zXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL3RleHRcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvdmlkZW9cIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvbW9kYWxcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvYmxvZy1mZWF0dXJlZC1jYXJkc1wiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9yZWFkaW5nLWxpc3RcIjtcclxuQGltcG9ydCBcIm1vZHVsZXMvZmFxXCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2F1dG9jb21wbGV0ZVwiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9mYXEtbGlzdGluZ1wiOyIsImFydGljbGUuYWJvdXQtc3Vubm92YSB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDEsaDIsaDMsaDQsaDUsaDYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC10ZXh0KGF1cm9yYSk7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sb2dvcyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoNik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxheW91dC1saXN0KCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IC0yNXB4IDA7XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDI1cHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4IDA7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJhcnRpY2xlLmJyZWFkY3J1bWJzLXdyYXBwZXIge1xyXG4gICAgbWFyZ2luOiAtNTBweCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICBtYXJnaW46IC0yNXB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICNGRjZCMEI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzIGxpbmVhciBvcGFjaXR5O1xyXG5cclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgICAgb3BhY2l0eTogLjc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsImFydGljbGUuY2FsbG91dHMge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAtMzAwcHggMCAyMDBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgZGl2LnJvdyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGRpdi5jYWxsb3V0LWJveCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDUpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTUwcHg7XHJcblxyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdCgpO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0M0QzRDNDtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC10ZXh0KGdvbGRlbi1ob3VyKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTg4MjViO1xyXG4gICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcclxuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweDtcclxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5jYXJvdXNlbCB7XHJcbiAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRucy1vdXRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIC50bnMtY29udHJvbHMge1xyXG4gICAgICAgIFtkYXRhLWNvbnRyb2xzXSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMzBweCk7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFtkYXRhLWNvbnRyb2xzPVwibmV4dFwiXSB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgW2RhdGEtY29udHJvbHNdW2Rpc2FibGVkXSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50bnMtbmF2IHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBbZGF0YS1jb250cm9sc10sIFtkYXRhLW5hdl0ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBbZGF0YS1uYXZdIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIG1hcmdpbjogMnB4O1xyXG5cclxuICAgICAgICAmLnRucy1uYXYtYWN0aXZlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjRkY2QjBCO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkY2QjBCO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG5zLXNsaWRlciB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgLnRucy1pdGVtIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IG9wYWNpdHk7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IC4zNTtcclxuXHJcbiAgICAgICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLmNoYXJpdHktbGlzdGluZyB7XHJcbiAgICAmLWhlYWRlciB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xyXG4gICAgfVxyXG5cclxuICAgICYtZ3JpZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTQ1cHg7IFxyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7ICAgIFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtaXRlbSgpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKCRwZXJjZW50YWdlOiBtYXAtZ2V0KCRmbGV4LWNvbHVtbnMsICcxXFxcXC8yJykpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnAoc20pIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigkcGVyY2VudGFnZTogbWFwLWdldCgkZmxleC1jb2x1bW5zLCAnMVxcXFwvMycpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigkcGVyY2VudGFnZTogbWFwLWdldCgkZmxleC1jb2x1bW5zLCAnMVxcXFwvNicpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5jb21wYXJpc29uIHtcclxuICBtYXgtd2lkdGg6IDk0MHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvO1xyXG4gIGZvbnQ6IDE2cHgvMS40IFwiSGVsdmV0aWNhIE5ldWVcIixIZWx2ZXRpY2EsQXJpYWwsc2Fucy1zZXJpZjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb21wYXJpc29uIHRhYmxlIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNDQ0M7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQ0NDO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQ0NDO1xyXG59XHJcblxyXG4uY29tcGFyaXNvbiB0ZCwgLmNvbXBhcmlzb24gdGgge1xyXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNDQ0M7XHJcbiAgZW1wdHktY2VsbHM6IHNob3c7XHJcbiAgcGFkZGluZzogMTBweDtcclxufVxyXG5cclxuLmNvbXBhcmUtaGVhZGluZyB7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb21wYXJpc29uIC5jb21wYXJlLXJvdyB7XHJcbiAgYmFja2dyb3VuZDogI0Y1RjVGNTtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gLnRpY2tibHVlIHtcclxuICBjb2xvcjogIzAwNzhDMTtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gLnRpY2tncmVlbiB7XHJcbiAgY29sb3I6ICMwMDlFMkM7XHJcbiAgZm9udC1zaXplOiAyMHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4uY29tcGFyaXNvbiB0aCB7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQ0NDO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gdHIgdGQ6Zmlyc3QtY2hpbGQge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5jb21wYXJpc29uIC5xYnNlLCAuY29tcGFyaXNvbiAucWJvLCAuY29tcGFyaXNvbiAudGwge1xyXG4gIGNvbG9yOiAjRkZGO1xyXG4gIHBhZGRpbmc6IDEwcHg7XHJcbiAgZm9udC1zaXplOiAxM3B4O1xyXG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNDQ0M7XHJcbiAgYm9yZGVyLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gLnRsMiB7XHJcbiAgYm9yZGVyLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4uY29tcGFyaXNvbiAucWJzZSB7XHJcbiAgYmFja2dyb3VuZDogIzYzNjM2MztcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XHJcbiAgYm9yZGVyLWxlZnQ6IDBweDtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb21wYXJpc29uIC5wbGF0aW51bSB7XHJcbiAgYmFja2dyb3VuZDogI0YzNkYyMTtcclxuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzcHg7XHJcbiAgYm9yZGVyLWxlZnQ6IDBweDtcclxuICBjb2xvcjogI2ZmZjtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gLnFibyB7XHJcbiAgYmFja2dyb3VuZDogIzAwOUUyQztcclxuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogM3B4O1xyXG4gIGJvcmRlci1yaWdodDogMHB4O1xyXG59XHJcblxyXG4uY29tcGFyaXNvbiAucHJpY2UtaW5mbyB7XHJcbiAgcGFkZGluZzogNXB4IDE1cHggMTVweCAxNXB4O1xyXG59XHJcblxyXG4uY29tcGFyaXNvbiAucHJpY2Utd2FzIHtcclxuICBjb2xvcjogIzk5OTtcclxuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gLnByaWNlLW5vdywgLmNvbXBhcmlzb24gLnByaWNlLW5vdyBzcGFuIHtcclxuICBjb2xvcjogI2ZmNTQwNjtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gLnByaWNlLW5vdyBzcGFuIHtcclxuICBmb250LXNpemU6IDMycHg7XHJcbn1cclxuXHJcbi5jb21wYXJpc29uIC5wcmljZS1zbWFsbCB7XHJcbiAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogLTExcHg7XHJcbiAgbGVmdDogMnB4O1xyXG59XHJcblxyXG4uY29tcGFyaXNvbiAucHJpY2UtYnV5IHtcclxuICBiYWNrZ3JvdW5kOiAjZmY1NDA2O1xyXG4gIHBhZGRpbmc6IDEwcHggMjBweDtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIGNvbG9yOiAjRkZGO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBtYXJnaW46IDVweCAwIDEwcHggMDtcclxufVxyXG5cclxuLmNvbXBhcmlzb24gLnByaWNlLXRyeSB7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG59XHJcblxyXG4uY29tcGFyaXNvbiAucHJpY2UtdHJ5IGEge1xyXG4gIGNvbG9yOiAjMjAyMDIwO1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAuY29tcGFyaXNvbiB0ZDpmaXJzdC1jaGlsZCwgLmNvbXBhcmlzb24gdGg6Zmlyc3QtY2hpbGQge1xyXG4gICAgLy9kaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNvbXBhcmlzb24gdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgZGlzcGxheTogdGFibGUtcm93O1xyXG4gICAgYmFja2dyb3VuZDogI0Y3RjdGNztcclxuICB9XHJcblxyXG4gIC5jb21wYXJpc29uIC5yb3cge1xyXG4gICAgYmFja2dyb3VuZDogI0ZGRjtcclxuICB9XHJcblxyXG4gIC5jb21wYXJpc29uIHRkLCAuY29tcGFyaXNvbiB0aCB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xyXG4gIH1cclxuXHJcbiAgLnByaWNlLWluZm8ge1xyXG4gICAgYm9yZGVyLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDYzOXB4KSB7XHJcbiAgLmNvbXBhcmlzb24gLnByaWNlLWJ1eSB7XHJcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICB9XHJcblxyXG4gIC5jb21wYXJpc29uIHRkLCAuY29tcGFyaXNvbiB0aCB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDVweDtcclxuICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICB9XHJcblxyXG4gIC5jb21wYXJpc29uIC5oaWRlLW1vYmlsZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmNvbXBhcmlzb24gLnByaWNlLW5vdyBzcGFuIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcblxyXG4gIC5jb21wYXJpc29uIC5wcmljZS1zbWFsbCB7XHJcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICAuY29tcGFyaXNvbiAucWJzZSwgLmNvbXBhcmlzb24gLnFibyB7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDVweDtcclxuICB9XHJcblxyXG4gIC5jb21wYXJpc29uIC5wcmljZS1idXkge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICB9XHJcblxyXG4gIC5jb21wYXJlLWhlYWRpbmcge1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gIH1cclxufVxyXG4iLCIuZmlsdGVyLWJhciB7XHJcbiAgICAmLWxpc3QtY29udGFpbmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjMwLjIxZGVnLCAjMzNDQ0ZGIDcuOTklLCAjMzMzMzk5IDEwMCUpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDBweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xNCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1oZWFkaW5nIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnAoc20pIHtcclxuICAgICAgICAuY29sOm5vdCgudG5zLWl0ZW0pIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZChuKzUpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1saXN0IHtcclxuICAgICAgIEBpbmNsdWRlIGxheW91dC1saXN0KCk7XHJcbiAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwcHgsIDBweCk7XHJcbiAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgbWFyZ2luOiAyNXB4IDAgMDtcclxuICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICBmb250LXNpemU6IDIwcHg7XHJcblxyXG4gICAgICAgYSwgYTpmb2N1cywgYTpob3ZlciwgYTphY3RpdmUge1xyXG4gICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgfVxyXG4gICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICB9XHJcbiAgICAgICBcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHJlYWRpbmctbGlzdC1jb3VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmlzLXNlbGVjdGVkIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLXNpZGViYXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgICAgIC5maWx0ZXItYmFyLWxpc3QtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNDVweCAzMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMHB4IDZweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4xNik7XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZpbHRlci1iYXItaGVhZGluZyB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmN1c3RvbS1kcm9wZG93biB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmJsb2ctbGlzdGluZyB7XHJcbiAgICAkdGhpczogJjtcclxuXHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtbGlzdCB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGhlaWdodDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgXHJcbiAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGFsbDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJi5pcy1oaWRpbmcge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG5cclxuICAgICAgICAgICAgLmluZm8tY2FyZCB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLWhpZGRlbiB7XHJcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pbmZvLWNhcmQge1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pbmZvLWNhcmQtY29udGVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmluZm8tY2FyZC1tZXRhIHtcclxuICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubG9hZC1tb3JlIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXYyIHtcclxuICAgICAgICAjeyR0aGlzfS1oZWFkaW5nIHtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAgbWFwLWdldCgkY29sb3JzLCBibGFjayk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5mdWxsd2lkdGgtY2FsbG91dCB7XHJcbiAgICAkdGhpczogJjtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAxMDBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgICYtY29udGFpbmVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gICAgfVxyXG5cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgcGFkZGluZzogNjBweCA1MyUgNjBweCAxNTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDQwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggODBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNjBweCA0MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbC1tZWRpdW0pIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5idXR0b24ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICAgICAgJiA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtbWFzayB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm8tcmVwZWF0IGJvdHRvbSByaWdodCB1cmwoLi4vaW1hZ2VzL3NlcnZpY2VzLW1hc2suc3ZnKTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYtaW1hZ2Uge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwtbWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtaW1hZ2UtY2VudGVyZWQge1xyXG4gICAgICAgICN7JHRoaXN9LWltYWdlIHtcclxuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWltYWdlLWxlZnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgI3skdGhpc30tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDg1cHggNjBweCA1OSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JHRoaXN9LWltYWdlIHtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiYXJ0aWNsZS5nZXQtcXVvdGUge1xyXG4gICAgcGFkZGluZzogMTAwcHggMDtcclxuICAgIGJhY2tncm91bmQ6IGdldEdyYWRpZW50KGdvbGRlbi1ob3VyKTtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5nZXQtcXVvdGUtc3VjY2VzcywgLmVycm9yLW1lc3NhZ2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmdldC1xdW90ZS1jb250YWluZXIsIC5nZXQtcXVvdGUtc3VjY2VzcyB7XHJcbiAgICAgICAgQGV4dGVuZCAuY2xlYXJmaXg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMTUpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNjBweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi50d28tY29sdW1uIHtcclxuICAgICAgICAgICAgLmNoZWNrYm94LWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAuZXJyb3Ige1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMjI3cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSA0NnB4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDQ4cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNoZWNrYm94LWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIC5lcnJvciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNDBweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0yN3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYub25lLWNvbHVtbiB7XHJcbiAgICAgICAgICAgIGZvcm0ge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoOCk7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHVzaCgyKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAgICBcclxuICAgICAgICAmLnR3by1jb2x1bW4ge1xyXG4gICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUgLCAyNTUsIDAuNSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZmlyc3QtY29sdW1uIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHggMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1ICwgMjU1LCAwLjUpXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNlY29uZC1jb2x1bW4ge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4IDAgMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5nZXQtcXVvdGUtYWJvdXQge1xyXG4gICAgICAgIG1hcmdpbjogMzBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIHAuZ2V0LXF1b3RlLXJlcXVpcmVkIHtcclxuICAgICAgICBmb250LXNpemU6IG1hcC1nZXQoJHRleHQtc2l6ZXMsIHNtKTtcclxuICAgIH1cclxuXHJcbiAgICBmb3JtIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgJi5pbnRybyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaXRlbS5jaXR5IHtcclxuICAgICAgICAgICAgZmxleC1ncm93OiAxLjU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzZWxlY3Qge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ1dHRvbnMge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRpc2NsYWltZXItY2hlY2tib3gge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIH0gICAgXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwLmxlZ2FsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgIC5jaGVja2JveC1saXN0IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLmNlbnRlci1xdW90ZSAuZ2V0LXF1b3RlIC5nZXQtcXVvdGUtY29udGFpbmVyIC5jaGVja2JveC1jb250YWluZXIgLmVycm9ye1xyXG4gICAgbGVmdDogY2FsYyg1MCUgLSAyMjdweCk7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSA0NnB4KTtcclxuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNDhweCk7XHJcbiAgICB9XHJcbn1cclxuZGl2Lm92ZXJsYXkge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiAxMDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsMCwwKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsIDAuNyk7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICB0cmFuc2l0aW9uOiAwLjVzO1xyXG4gICAgLm92ZXJsYXktY29udGVudCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIHJnYigyNTUsMjU1LDI1NSk7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGhlaWdodDogMTgwcHg7XHJcbiAgICAgICAgd2lkdGg6IDM2MHB4O1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTgwcHgpO1xyXG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSA5MHB4KTtcclxuICAgICAgICBtYXJnaW46IDBweCBhdXRvO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgICBwYWRkaW5nOiAzNXB4O1xyXG4gICAgICAgIC5vdmVybGF5LXNwaW5uZXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgYm9yZGVyOiA1cHggc29saWQ7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCByZ2IoMCwwLDApIHJnYigwLDAsMCk7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbG9hZGluZ1NwaW5uZXIgLjdzIGluZmluaXRlIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgIC1vLWFuaW1hdGlvbjogbG9hZGluZ1NwaW5uZXIgLjdzIGluZmluaXRlIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgIC1tcy1hbmltYXRpb246IGxvYWRpbmdTcGlubmVyIC43cyBpbmZpbml0ZSBsaW5lYXI7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogbG9hZGluZ1NwaW5uZXIgLjdzIGluZmluaXRlIGxpbmVhcjtcclxuICAgICAgICAgICAgICAgIC1tb3otYW5pbWF0aW9uOiBsb2FkaW5nU3Bpbm5lciAuN3MgaW5maW5pdGUgbGluZWFyO1xyXG4gICAgICAgIH1cclxuICAgICAgICAub3ZlcmxheS10ZXh0IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDIwcHggMCAwIDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xyXG4gICAgMTAwJXsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxyXG59XHJcblxyXG5ALW8ta2V5ZnJhbWVzIGxvYWRpbmdTcGlubmVyIHtcclxuICAgIDEwMCV7IC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cclxufVxyXG5cclxuQC1tcy1rZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xyXG4gICAgMTAwJXsgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRpbmdTcGlubmVyIHtcclxuICAgIDEwMCV7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxyXG59XHJcblxyXG5ALW1vei1rZXlmcmFtZXMgbG9hZGluZ1NwaW5uZXIge1xyXG4gICAgMTAwJXsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XHJcbn1cclxuIiwiLmhlcm8ge1xyXG4gICAgJHRoaXM6ICY7XHJcblxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5tYXNrLXdyYXBwZXIge1xyXG4gICAgICAgICYudG9wLWN1cnZlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY3VydmVkLWJveChcIi5iZ1wiKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTAwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGhlaWdodDogNDY1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jZW50ZXItYmcgLmJnIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcclxuICAgIH1cclxuXHJcbiAgICAudmlkZW8tYmcge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG5cclxuICAgIC50aXRsZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0NjVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjpub3QoLmhlcm8tLWNvbHVtbnMpIGgxOm5vdCguY2xlYXItdGl0bGUpIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkY4MjAwOyAvLyBGYWxsYmFjayBjb2xvclxyXG5cclxuICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xyXG4gICAgICAgICAgICAgICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0IHRvcCwgI0YxNTUyMyAyMCUsICNGRkJFMDEgODAlKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41NTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLXNtYWxsIHtcclxuICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzNjVweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE2NXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAmLnRvcCB7XHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubWlkZGxlIHtcclxuICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmJvdHRvbSB7XHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubGVmdCB7XHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmNlbnRlciB7XHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYucmlnaHQge1xyXG4gICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLWNvbHVtbnMge1xyXG4gICAgICAgIC5iZyB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMDtcclxuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNDBweCAwIDYwcHggMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZsZXgtZ3JpZCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZXJvLWhlYWRpbmcsIC5oZXJvLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAmID4gKjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmID4gKjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYucmlnaHQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAgICAgLmZsZXgtZ3JpZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5mYXEtYXV0b2NvbXBsZXRlLWZvcm0ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmNlbnRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICAuZmxleC1ncmlkIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmZhcS1hdXRvY29tcGxldGUtZm9ybSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmJvdHRvbSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTdweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmZhcS1hdXRvY29tcGxldGUtZm9ybSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDUxNXB4O1xyXG4gICAgfVxyXG59XHJcbiIsImFydGljbGUuaG9tZXBhZ2UtaGVybyB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tdG9wOiAxMTBweDtcclxuICAgIFxyXG4gICAgLm1hc2std3JhcHBlciB7XHJcbiAgICAgICAgJi50b3AtY3VydmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjdXJ2ZWQtYm94KFwiLmJnXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgfVxyXG4gICAgLmJnIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC53cmFwcGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgcGFkZGluZzogMTUwcHggMHB4O1xyXG4gICAgICAgICYuaGFzLXZpZGVvLWJnIHtcclxuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5tYXNrLXdyYXBwZXIgfiAud3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMTI1cHggMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGRpdi5oZWFkZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICBkaXYuY3RhIHtcclxuICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgbWFyZ2luOiA1cHggMzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA3MnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBoMSB7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkY4MjAwOyAvLyBGYWxsYmFjayBjb2xvclxyXG4gICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zNTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XHJcbiAgICAgICAgICAgICAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0IHRvcCwgI0YxNTUyMyAyMCUsICNGRkJFMDEgODAlKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkOyBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC52aWRlby1iZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZSwgLnRhYmxldCwgLmRlc2t0b3Age1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgLm1vYmlsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGluaXRpYWw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAudGFibGV0IHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5pdGlhbDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgLmRlc2t0b3Age1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbml0aWFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgICYudG9wIHtcclxuICAgICAgICAgICAgLmhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5taWRkbGUge1xyXG4gICAgICAgICAgICAuaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYm90dG9tIHtcclxuICAgICAgICAgICAgLmhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYubGVmdCB7XHJcbiAgICAgICAgICAgIC5oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmNlbnRlciB7XHJcbiAgICAgICAgICAgIC5oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYucmlnaHQge1xyXG4gICAgICAgICAgICAuaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmhvbWVwYWdlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMTBweDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiYXJ0aWNsZS5ociB7XHJcbiAgICBtYXJnaW46IDAgMCA1MHB4IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIH1cclxufSIsImFydGljbGUuaW1hZ2Uge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIG1hcmdpbjogMTAwcHggMDtcclxuICAgIH1cclxufVxyXG5cclxuLmltYWdlIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbn1cclxuIiwiLmltYWdlLWNvbGxhZ2UtZ3JpZCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQoJGlzU2VsZjogdHJ1ZSwgJGd1dHRlcjogMHB4LCAkaW5jbHVkZUJyZWFrcG9pbnRzOiBmYWxzZSk7XHJcbn1cclxuXHJcbi5pbWFnZS1jb2xsYWdlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJi13cmFwcGVyIHtcclxuICAgICAgICBtYXJnaW46IDAgLTEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFzcGVjdC1yYXRpby0zXFwvNCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEzMy4zMzMlO1xyXG4gICAgfVxyXG59IiwiLmluZm8tY2FyZCB7XHJcbiAgICAkdGhpczogJjtcclxuXHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgJi1tZWRpYSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBjb2xvcjogIzJENzJGNztcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgICYtbWV0YSB7XHJcbiAgICAgICAgZm9udC1zaXplOiBtYXAtZ2V0KCR0ZXh0LXNpemVzLCBzbSk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICBtYXJnaW46IDAgLTVweDtcclxuXHJcbiAgICAgICAgJiA+IHNwYW4ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgJi1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgcGFkZGluZzogMCAyNXB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgICAgICYgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmZhZGUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTMwcHg7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZmFkZTphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIHdpZHRoOiA3MCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEuNWVtO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDUwJSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgJiA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtdGFncyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3QoKTtcclxuXHJcbiAgICAgICAgbWFyZ2luOiAwIC01cHg7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMkQ3MkY3O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtb3Bwb3NpdGUge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgJi5pcy1ob3Jpem9udGFsIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgICAgICN7JHRoaXN9LW1lZGlhIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICN7JHRoaXN9LWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICN7JHRoaXN9LWhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgNTAlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAjeyR0aGlzfS1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICN7JHRoaXN9LWhlYWRlciArICN7JHRoaXN9LWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmlzLXBhZGRlZCB7XHJcbiAgICAgICAgICAgICAgICAjeyR0aGlzfS1oZWFkZXIgKyAjeyR0aGlzfS1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCA0MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLXBhZGRlZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaGFzLXNoYWRvdyB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggcmdiYSgwLCAwLCAwLCAuMjUpO1xyXG4gICAgfVxyXG5cclxuICAgICYuaXMtcm91bmRlZCB7XHJcbiAgICAgICAgI3skdGhpc30tbWVkaWEge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS12MiB7XHJcbiAgICAgICAgJi5pcy1ob3Jpem9udGFsIHtcclxuICAgICAgICAgICAgI3skdGhpc30taGVhZGVyICsgI3skdGhpc30tY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgI3skdGhpc30tdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vZm9udC1zaXplOiA0MnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAjeyR0aGlzfS1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMDEuMThkZWcsICNGRkZGRkYgNDguNzIlLCAjQjNCM0IzIDE0MS44JSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICAjeyR0aGlzfS1tZWRpYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5pcy1zbWFsbCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICN7JHRoaXN9LWhlYWRlciArICN7JHRoaXN9LWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpub3QoLmlzLWhvcml6b250YWwpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMjBweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICByaWdodDogNDBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJsdXIoMzBweCk7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyR0aGlzfS1oZWFkZXIgKyAjeyR0aGlzfS1jb250ZW50IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDU1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JHRoaXN9LWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JHRoaXN9LWNvbnRlbnQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjI2LjM5ZGVnLCAjRkZGRkZGIDQ4LjcyJSwgI0IzQjNCMyAxNDEuOCUpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzNXB4IDMwcHg7XHJcblxyXG4gICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyR0aGlzfS1tZWRpYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XHJcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICN7JHRoaXN9LW1lZGlhLCAjeyR0aGlzfS1jb250ZW50IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skdGhpc30taGVhZGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skdGhpc30tdGl0bGUge1xyXG4gICAgICAgICAgICBjb2xvcjogIG1hcC1nZXQoJGNvbG9ycywgYmxhY2spO1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAgICAgLy9mb250LXNpemU6IDM2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JHRoaXN9LXRhZ3Mge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JHRoaXN9LW1ldGEge1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5pbmZvZ3JhcGhpYyB7ICAgXHJcbiAgICAvKm1hcmdpbjogNzVweCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICBtYXJnaW46IDM1cHggMDtcclxuICAgIH0qL1xyXG5cclxuICAgICYtdGFicyB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBbcm9sZT1cInRhYmxpc3RcIl0ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBbcm9sZT1cInRhYlwiXSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0IGFsbDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCgpIHtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICAgXHJcbiAgICAgICAgW3JvbGU9XCJ0YWJcIl06OmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBib3R0b206IDI1cHg7XHJcbiAgICAgICAgICAgIHRvcDogMjVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICAgICAgcmlnaHQ6IC0ycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNDNEM0QzQ7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBbcm9sZT1cInRhYlwiXVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LXRleHQoZ29sZGVuLWhvdXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBbcm9sZT1cInRhYlwiXTpob3ZlcixcclxuICAgICAgICBbcm9sZT1cInRhYlwiXTpmb2N1cyxcclxuICAgICAgICBbcm9sZT1cInRhYlwiXTphY3RpdmUge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBbcm9sZT1cInRhYnBhbmVsXCJdIHtcclxuICAgICAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAvLyB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAuNWVtIC41ZW0gLjdlbTsgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgW3JvbGU9XCJ0YWJwYW5lbFwiXTpmb2N1cyB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIFtyb2xlPVwidGFicGFuZWxcIl0gcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgW3JvbGU9XCJ0YWJwYW5lbFwiXSAqICsgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi13cmFwcGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLy9wYWRkaW5nLXRvcDogNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tdG9wOiA3NXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53cmFwcGVyLW1kIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgJi1iYWNrZ3JvdW5kLCBcclxuICAgIC5tYXNrLXdyYXBwZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi1iYWNrZ3JvdW5kIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjRkZGRkZGIDQzLjE3JSwgIzkwQzVGRiAxMDAlKTtcclxuXHJcbiAgICAgICAgJi5pcy1uaWdodCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICMxQzFDMUMgNTMuMTclLCAjMkIyNzZCIDg0Ljk5JSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtdG9nZ2xlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIFtyb2xlPVwidGFicGFuZWxcIl0ge1xyXG4gICAgICAgIFtkYXRhLXRvZ2dsZS10cmFuc2l0aW9uXSAuaW5mb2dyYXBoaWMtYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmRheSB7XHJcbiAgICAgICAgICAgIFtkYXRhLXRvZ2dsZS10cmFuc2l0aW9uPVwibmlnaHRcIl0gLmluZm9ncmFwaGljLWJhY2tncm91bmQge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgW2RhdGEtdG9nZ2xlLXRyYW5zaXRpb249XCJkYXlcIl0gLmluZm9ncmFwaGljLWJhY2tncm91bmQge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5uaWdodCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG5cclxuICAgICAgICAgICAgW2RhdGEtdG9nZ2xlLXRyYW5zaXRpb249XCJuaWdodFwiXSAuaW5mb2dyYXBoaWMtYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBbZGF0YS10b2dnbGUtdHJhbnNpdGlvbj1cImRheVwiXSAuaW5mb2dyYXBoaWMtYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFtyb2xlPVwidGFibGlzdFwiXSB7XHJcbiAgICAgICAgJi5uaWdodCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY3VzdG9tLXRvZ2dsZSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmN1c3RvbS10b2dnbGVfX2xhYmVsIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogMTIwcHg7XHJcbiAgICBcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogOTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgLmlzLW9mZjpjaGVja2VkIH4gLmN1c3RvbS10b2dnbGVfX3N3aXRjaGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuaXMtb2ZmOmNoZWNrZWQgfiAuY3VzdG9tLXRvZ2dsZV9fYmFja2dyb3VuZCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzU3NTc1NztcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmlzLW9uOmNoZWNrZWQgfiAuY3VzdG9tLXRvZ2dsZV9fc3dpdGNoZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNjQ4MWE7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5pcy1vbjpjaGVja2VkIH4gLmN1c3RvbS10b2dnbGVfX2JhY2tncm91bmQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFOEU4RTg7XHJcbiAgICB9ICAgIFxyXG59XHJcbiIsIi5uZXdzLXByZXNzIHtcclxuICAgICYtaGVhZGluZyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgfVxyXG5cclxuICAgICYtdmlkZW9zLWNvbnRhaW5lciB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgXHJcblxyXG4gICAgICAgIC50bnMtbmF2IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRucy1jb250cm9scyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFtkYXRhLWNvbnRyb2xzXSwgW2RhdGEtbmF2XSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICBbZGF0YS1uYXZdIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMnB4O1xyXG5cclxuICAgICAgICAgICAgJi50bnMtbmF2LWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRkY2QjBCOyAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXZpZGVvcyB7XHJcbiAgICAgICAgLnZpZGVvIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGRpdi5uZXdzIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoNCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgxLGgyLGgzLGg0LGg1LGg2IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICMzM2NjZmYgMTAlLCAjMzMzMzk5IDEwMCUpO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZGl2LnByZXNzIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoNCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHB1c2goMiwgdHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgxLGgyLGgzLGg0LGg1LGg2IHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTBkZWcsICMzMzMzOTkgMTAlLCAjMzNjY2ZmIDEwMCUpO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwge1xyXG4gICAgICAgIEBpbmNsdWRlIGxheW91dC1saXN0KCk7XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgICAgIGRpdi5zb3VyY2Uge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBkaXYuZGF0ZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxvYWQtbW9yZSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogZ2V0R3JhZGllbnQoYXF1YSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBbZGF0YS1sb2FkLW1vcmUtbGlzdF0ge1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBoZWlnaHQ7XHJcbiAgICB9XHJcbn0iLCIucGFnZS1pbnRybyB7XHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtdGV4dChnb2xkZW4taG91cik7XHJcbiAgICAgICAgJi50ZXh0LWNlbnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtc3ViaGVhZGluZyB7XHJcbiAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAud3JhcHBlciA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG4iLCJhcnRpY2xlLnBhcnRuZXItZm9ybSB7XHJcbiAgcGFkZGluZzogMTAwcHggMDtcclxuICBiYWNrZ3JvdW5kOiBnZXRHcmFkaWVudChnb2xkZW4taG91cik7XHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgLnBhcnRuZXItZm9ybS1zdWNjZXNzLCAuZXJyb3ItbWVzc2FnZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLnBhcnRuZXItZm9ybS1jb250YWluZXIsIC5wYXJ0bmVyLWZvcm0tc3VjY2VzcyB7XHJcbiAgICBAZXh0ZW5kIC5jbGVhcmZpeDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjE1KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBwYWRkaW5nOiA2MHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIHAge1xyXG4gICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBoMiB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgfVxyXG5cclxuICAucGFydG5lci1mb3JtLWFib3V0IHtcclxuICAgIG1hcmdpbjogMzBweCAwO1xyXG4gIH1cclxuXHJcbiAgcC5wYXJ0bmVyLWZvcm0tcmVxdWlyZWQge1xyXG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCR0ZXh0LXNpemVzLCBzbSk7XHJcbiAgfVxyXG5cclxuICBmb3JtIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1ucyg4KTtcclxuICAgICAgQGluY2x1ZGUgcHVzaCgyKTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgJi5pbnRybyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pdGVtLmNpdHkge1xyXG4gICAgICBmbGV4LWdyb3c6IDEuNTtcclxuICAgIH1cclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICBjb2xvcjogZ2V0R3JhZGllbnRGYWxsYmFjayhnb2xkZW4taG91cik7XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbnMge1xyXG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIHAubGVnYWwge1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMjBweDtcclxuICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICBhIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICAgIHBhZGRpbmc6IDE3cHggMTVweDtcclxuICAgICAgaGVpZ2h0OiA1OC41cHg7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXQge1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XHJcblxyXG4gICAgICAmOmZvY3VzLCAmOmFjdGl2ZSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDBweCAxcHggIzU1NTtcclxuICAgICAgICBib3JkZXItY29sb3I6ICNlYWVhZWE7XHJcbiAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBBY3RpdmUgTWFya2V0cyBNdWx0aXNlbGVjdFxyXG4gIC5jb21ib2JveCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyZW07XHJcbiAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgICYuYWN0aXZlLW1hcmtldHMge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgIHVsIHtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWFya2V0cy1sYWJlbCB7XHJcbiAgICB0b3A6IDEwcHggIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5jb21iby1pbnB1dC1kaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWluLWhlaWdodDogNTguNXB4O1xyXG4gICAgcGFkZGluZzogMzVweCAxNXB4IDEwcHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXM7XHJcblxyXG4gICAgJjpmb2N1cywgJjphY3RpdmUge1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMHB4IDFweCAjNTU1O1xyXG4gICAgICBib3JkZXItY29sb3I6ICNlYWVhZWE7XHJcbiAgICAgIG91dGxpbmU6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29tYm9ib3gtaW5wdXQtdGFnIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIHBhZGRpbmc6IDZweCAxNXB4O1xyXG4gICAgbWFyZ2luOiAycHg7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMmQ3MmY3O1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuM3B4O1xyXG4gIH1cclxuXHJcbiAgLmNvbWJvYm94IGJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICB9XHJcblxyXG4gIC5jb21ib2JveCBpbnB1dCB7XHJcbiAgICBjb2xvcjogIzc1NzU3NTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIHBhZGRpbmc6IDE3cHggMTVweDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xyXG4gICAgbWF4LWhlaWdodDogMThlbTtcclxuICB9XHJcblxyXG4gIC5jb21ib2JveCAudG9nZ2xlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHJcbiAgICBzdmcge1xyXG4gICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgIGNvbG9yOiAjNTU1O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnRvZ2dsZS1saXN0IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgdG9wOiA0NSU7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgc3ZnIHtcclxuICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICBjb2xvcjogIzU1NTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC50b2dnbGUtYXJyb3ctZml4IHtcclxuICAgIHRvcDogMjVweCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmNvbWJvYm94IHVsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBjb2xvcjogIzIwMjAyMDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IGNhbGMoMTAwJSArIDVweCk7XHJcblxyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMHB4IDJweCAjNTU1O1xyXG4gICAgICBib3JkZXItY29sb3I6ICM1NTU7XHJcbiAgICAgIG91dGxpbmU6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29tYm9ib3ggbGkge1xyXG4gICAgY29sb3I6ICM3NTc1NzU7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAxNXB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgLmNvbWJvYm94IFthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICB3aWR0aDogMjBweDtcclxuICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICBjb250ZW50OiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7IHV0ZjgsIDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNTEyIDUxMic+PHBhdGggZmlsbD0nJTIzYTVlMjI2JyBkPSdNMTczLjg5OCA0MzkuNDA0bC0xNjYuNC0xNjYuNGMtOS45OTctOS45OTctOS45OTctMjYuMjA2IDAtMzYuMjA0bDM2LjIwMy0zNi4yMDRjOS45OTctOS45OTggMjYuMjA3LTkuOTk4IDM2LjIwNCAwTDE5MiAzMTIuNjkgNDMyLjA5NSA3Mi41OTZjOS45OTctOS45OTcgMjYuMjA3LTkuOTk3IDM2LjIwNCAwbDM2LjIwMyAzNi4yMDRjOS45OTcgOS45OTcgOS45OTcgMjYuMjA2IDAgMzYuMjA0bC0yOTQuNCAyOTQuNDAxYy05Ljk5OCA5Ljk5Ny0yNi4yMDcgOS45OTctMzYuMjA0LS4wMDF6Jz48L3BhdGg+PC9zdmc+XCIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmNvbWJvYm94IC5hY3RpdmVkZXNjZW5kYW50IHtcclxuICAgIGJhY2tncm91bmQ6ICMyZDcyZjc7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcbiAgLnRleHQtYm94IHtcclxuICAgIHBhZGRpbmc6IDE0cHggMTVweCAxNXB4IDE1cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWFlYWVhO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgICAmLmZsLWFjdGl2ZSB7XHJcbiAgICAgIHBhZGRpbmc6IDI0cHggMTVweCA1cHggMTVweDtcclxuICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0ZXh0YXJlYSB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDgwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEJ1c2luZXNzIEZvY3VzIE11bHRpc2VsZWN0XHJcbiAgLmNvbWJvYm94LW9wdGlvbnMge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIHVsIHtcclxuICAgICAgei1pbmRleDogOTk5OTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb21ib2JveC1vcHRpb25zIGJ1dHRvbiB7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICB9XHJcblxyXG4gIC5jb21ib2JveC1vcHRpb25zIGlucHV0IHtcclxuICAgIGNvbG9yOiAjNzU3NTc1O1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgcGFkZGluZzogMTdweCAxNXB4O1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICBtYXgtaGVpZ2h0OiAxOGVtO1xyXG4gIH1cclxuXHJcbiAgLmNvbWJvYm94LW9wdGlvbnMgLnRvZ2dsZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMTVweDtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gICAgc3ZnIHtcclxuICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICBjb2xvcjogIzU1NTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb21ib2JveC1vcHRpb25zIHVsIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBjb2xvcjogIzIwMjAyMDtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IGNhbGMoMTAwJSArIDVweCk7XHJcblxyXG5cclxuICAgICY6Zm9jdXMge1xyXG4gICAgICBib3gtc2hhZG93OiAwIDAgMHB4IDJweCAjNTU1O1xyXG4gICAgICBib3JkZXItY29sb3I6ICM1NTU7XHJcbiAgICAgIG91dGxpbmU6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29tYm9ib3gtb3B0aW9ucyBsaSB7XHJcbiAgICBjb2xvcjogIzc1NzU3NTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDE1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICAuY29tYm9ib3gtb3B0aW9ucyBbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcclxuICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMTBweDtcclxuICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgY29udGVudDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sOyB1dGY4LCA8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDUxMiA1MTInPjxwYXRoIGZpbGw9JyUyM2E1ZTIyNicgZD0nTTE3My44OTggNDM5LjQwNGwtMTY2LjQtMTY2LjRjLTkuOTk3LTkuOTk3LTkuOTk3LTI2LjIwNiAwLTM2LjIwNGwzNi4yMDMtMzYuMjA0YzkuOTk3LTkuOTk4IDI2LjIwNy05Ljk5OCAzNi4yMDQgMEwxOTIgMzEyLjY5IDQzMi4wOTUgNzIuNTk2YzkuOTk3LTkuOTk3IDI2LjIwNy05Ljk5NyAzNi4yMDQgMGwzNi4yMDMgMzYuMjA0YzkuOTk3IDkuOTk3IDkuOTk3IDI2LjIwNiAwIDM2LjIwNGwtMjk0LjQgMjk0LjQwMWMtOS45OTggOS45OTctMjYuMjA3IDkuOTk3LTM2LjIwNC0uMDAxeic+PC9wYXRoPjwvc3ZnPlwiKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb21ib2JveC1vcHRpb25zIC5hY3RpdmVkZXNjZW5kYW50IHtcclxuICAgIGJhY2tncm91bmQ6ICMyZDcyZjc7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICB9XHJcblxyXG4gIC5zZWxlY3Rpb25zICsgc3Bhbi5lcnJvciB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAubm90LXJlcXVpcmVkICsgc3Bhbi5lcnJvciB7XHJcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG5cclxuICBzcGFuI2J1c2luZXNzZm9jdXMtZXJyb3IgKyAudG9nZ2xlIHtcclxuICAgIHRvcDogMjkuMjVweCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4iLCIucHJvZHVjdC1jYXJkcyB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAxMDBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgICYtaGVhZGVyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2NXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIC5jb2wge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgLmNvbCArIC5jb2wge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgLnJvdyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWZpbHRlcnMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgfVxyXG5cclxuICAgICYtZmlsdGVycy1mb3JtIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcbiAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcclxuICAgIFxyXG4gICAgICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWxpc3Qge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggNnB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjE2KTsgXHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkKCRndXR0ZXI6IDBweCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgJGlzU2VsZjogdHJ1ZSk7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAmLnNpbmdsZS1jYXJkIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcm9kdWN0LWNhcmQge1xyXG4gICAgJHRoaXM6ICY7XHJcblxyXG4gICAgQGV4dGVuZCAuY2FsbG91dC1ib3g7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICYuaXMtMVxcLzIge1xyXG4gICAgICAgICAgICAjeyR0aGlzfS1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1oZWFkZXIge1xyXG4gICAgICBoMSxoMixoMyxoNCxoNSxoNiB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLXRhZyB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMkQ3MkY3O1xyXG4gICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkdGV4dC1zaXplcywgMnhzKTtcclxuICAgICAgICBwYWRkaW5nOiA1cHg7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xyXG4gICAgfVxyXG5cclxuICAgICYtY29udGVudCB7XHJcbiAgICAgICAgdWwsIG9sIHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBpbml0aWFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWJ1dHRvbiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcclxuICAgICAgICAuYnV0dG9uIHtcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnByb2R1Y3QtaGlnaGxpZ2h0cyB7XHJcbiAgICAkdGhpczogJjtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAxMDBweCAwO1xyXG5cclxuICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbCArIC5jb2wge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoNyk7XHJcbiAgICAgICAgfSAgICBcclxuICAgIH1cclxuXHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgLy9tYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi50aXRsZS10b3Age1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtaW50cm8ge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCBibGFjaztcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3QoKTtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQoJGd1dHRlcjogNTBweCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgJGlzU2VsZjogdHJ1ZSk7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgLnByb2R1Y3QtaGlnaGxpZ2h0IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtZGlzY2xhaW1lciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1hbHQge1xyXG4gICAgICAgICN7JHRoaXN9LWhlYWRpbmcge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuc2VydmljZXMtYXZhaWxhYmlsaXR5IHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW46IDEwMHB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNlcnZpY2VzIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNDBweDtcclxuXHJcbiAgICAgICAgJi1jb250ZW50IHtcclxuICAgICAgICAgICAgcGFkZGluZzogNjBweCAxMjBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDgwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAmLW1hc2sge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBuby1yZXBlYXQgYm90dG9tIHJpZ2h0IHVybCguLi9pbWFnZXMvc2VydmljZXMtbWFzay5zdmcpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgIGZvcm0ge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIFxyXG4gICAgICAgICAgICAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICAgICAuaXRlbSArIC5pdGVtIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDA7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtMjJweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkdGV4dC1zaXplcywgc20pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICBcclxuICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGdldEdyYWRpZW50KGF1cm9yYSk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA3NTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5zZXR1cC1zdGVwcyB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAxMDBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgICYtaGVhZGVyIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBvbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3QoKTtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IHNldHVwLXN0ZXBzLWNvdW50ZXI7XHJcblxyXG4gICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHNldHVwLXN0ZXBzLWNvdW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMCU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+IGxpOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb250ZW50OiBjb3VudGVyKHNldHVwLXN0ZXBzLWNvdW50ZXIpO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC10ZXh0KGdvbGRlbi1ob3VyKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDZweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAtMTAlO1xyXG4gICAgICAgICAgICB0b3A6IC0xMnB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImFydGljbGUuc2lkZWJhci1uYXYge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuXHJcbiAgICBuYXYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDE1cHggMzRweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjAyKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggNDBweDtcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3QoKTtcclxuXHJcbiAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJiA+IGE6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bm90KC5oYXMtc3ViLW5hdikge1xyXG4gICAgICAgICAgICAgICAgJiA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LXVuZGVybGluZShnb2xkZW4taG91cik7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsIFxyXG4gICAgICAgICAgICAgICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmhhcy1zdWItbmF2LCBcclxuICAgICAgICAgICAgJi5oYXMtc3ViLW5hdi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtdW5kZXJsaW5lKGdvbGRlbi1ob3VyKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAxMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3Zlciwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAxMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtZGl2aWRlZCB7XHJcbiAgICAgICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAmLmhhcy1zdWItbmF2IHtcclxuICAgICAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IC0ycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5oYXMtc3ViLW5hdi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgJiA+IGE6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5oYXMtZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICAmOm5vdCguaXMtZGl2aWRlZCkge1xyXG4gICAgICAgICAgICAgICAgJiA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAmID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaXMtZGl2aWRlZCB7XHJcbiAgICAgICAgICAgICAgICAmID4gbGk6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNpZGViYXItbmF2LWxpc3Qge1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XHJcblxyXG4gICAgICAgICYuaXMtZGl2aWRlZCB7XHJcbiAgICAgICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcclxuXHJcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuc2VsZWN0ZWQsICY6bm90KC5oYXMtc3ViLW5hdik6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTJweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oYXMtc3ViLW5hdiB7XHJcbiAgICAgICAgICAgICYgPiBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYgPiBzcGFuOm5vdChbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdKSArIGEsXHJcbiAgICAgICAgICAgICYgPiBzcGFuOm5vdChbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdKSArIGE6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDRweDtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyID4gLnNpZGViYXItYWNjb3JkaW9uLXRvZ2dsZSB7XHJcbiAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IzAwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2lkZWJhci1hY2NvcmRpb24tdG9nZ2xlIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHRvcDogMjJweDtcclxuICAgICAgICBsZWZ0OiAtMjBweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgb3V0bGluZTogMDtcclxuICAgIH1cclxuXHJcbiAgICBbZGF0YS1hY2NvcmRpb24tdHJpZ2dlcl0ge1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XHJcblxyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XHJcbiAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDA7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNDUsIDExNCwgMjQ3LCAwKTtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICMyRDcyRjc7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IHRyYW5zZm9ybTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNHB4IDVweDtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogNnB4O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiA2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDkwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2lkZWJhci1uYXYtbGluay1kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiBtYXAtZ2V0KCR0ZXh0LXNpemVzLCBzbSk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICAgIH1cclxufVxyXG4iLCIuc3RhdGUtbGlzdGluZyB7XHJcbiAgICAuc3RhdGUtbGlzdGluZy1oZWFkZXIge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDUwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4MTVweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLnRpdGxlIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICBmb250LXNpemU6IDQ4cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LXRleHQoZ29sZGVuLWhvdXIpO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdWItdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdGF0ZS1saXN0IHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0YXRlLWl0ZW0ge1xyXG4gICAgICAgIGZsZXg6IDAgMCAzMy4zMzMzJTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuc3RhdGUge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0YXRlLW1lZGlhIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgLnN0YXRlLWltYWdlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAuc3RhdGUtdGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBjb2xvcjogIzJENzJGNztcclxuICAgIH1cclxuXHJcbiAgICAuc3RhdGUtZGVzY3JpcHRpb24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3RhdGUtbWFwIHtcclxuICAgICAgICAvL21hcmdpbi1ib3R0b206IDkwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSUUxMSBvbmx5XHJcbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6bm9uZSlcclxuICAgIHtcclxuICAgICAgICAjbWFwIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTE1OHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDY0M3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3RhdGUge1xyXG4gICAgICAgIGZpbGw6ICNEM0QzRDM7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0IGFsbDtcclxuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNmb3JtLWJveDogZmlsbC1ib3g7XHJcblxyXG4gICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgZmlsbDogI0ZGODIwMDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgICAgJi5pcy1ob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBmaWxsOiAjMjkyOTI5O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjE1KTtcclxuICAgICAgICAgICAgICAgIHN0cm9rZTogI2ZmZjtcclxuICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aDogLjc1O1x0XHRcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3RhdGUtdG9vbHRpcCB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuXHJcbiAgICAgICAgcGFkZGluZzogNXB4IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCBtYXAtZ2V0KGdldEdyYWRpZW50Q29sb3IoZ29sZGVuLWhvdXIpLCBsZWZ0KSAyMCUsIG1hcC1nZXQoZ2V0R3JhZGllbnRDb2xvcihnb2xkZW4taG91ciksIHJpZ2h0KSA4MCUpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLnN0YXRlLWl0ZW0ge1xyXG4gICAgLmluZm8tY2FyZC10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4iLCJhcnRpY2xlLnRlc3RpbW9uaWFsIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAxMDBweCAwO1xyXG4gICAgfVxyXG5cclxuICAgIC50aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaDEsaDIsaDMsaDQsaDUsaDYge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDU2cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA3MnB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC10ZXh0KGF1cm9yYSk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzJweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bS1sYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbnMoNik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZmlndXJlLnF1b3RlIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNDBweCAwIDYwcHggMDtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50bnMtbmF2IGJ1dHRvbiwgLnRucy1jb250cm9scyBidXR0b24ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBjb2xvcjogIzMzMztcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC50bnMtc2xpZGVyLmlzLXRyYW5zaXRpb25pbmcge1xyXG4gICAgICAgIC50bnMtaXRlbSB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDFzIGVhc2UtaW4tb3V0IG9wYWNpdHk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50bnMtbmF2IHtcclxuICAgICAgICBjb3VudGVyLXJlc2V0OiB0ZXN0aW1vbmlhbC1uYXYtY291bnRlcjtcclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHRlc3RpbW9uaWFsLW5hdi1jb3VudGVyO1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDMycHg7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICAgICAgY29sb3I6IHJnYmEoMCwwLDAsLjQpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogY291bnRlcih0ZXN0aW1vbmlhbC1uYXYtY291bnRlcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC50bnMtbmF2LWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGdldEdyYWRpZW50KGF1cm9yYSk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG5zLW5hdi1jb250cm9scy1jb250YWluZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzJweDtcclxuICAgICAgICAmLmZpcnN0LXNlbGVjdGVkIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG5zLWNvbnRyb2xzIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIFtkYXRhLWNvbnRyb2xzPVwicHJldlwiXSxcclxuICAgICAgICBbZGF0YS1jb250cm9scz1cIm5leHRcIl0ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMzJweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMzJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIFtkYXRhLWNvbnRyb2xzPVwicHJldlwiXSB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBbZGF0YS1jb250cm9scz1cIm5leHRcIl0ge1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGJ1dHRvbltkaXNhYmxlZF0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG5zLWl0ZW0ge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnRucy1zbGlkZS1hY3RpdmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLnRucy1vdXRlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG59XHJcbiIsImFydGljbGUudGV4dC1jb2x1bW5zIHtcclxuICAgIGg0IHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW5zKDQsIDgsIDE1JSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZbY2xhc3MqPVwiYmctXCJdIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDYwcHggMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hbGlnbi1taWRkbGUgLndyYXBwZXJ7XHJcbiAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5nZXQtaW4tdG91Y2gge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsImFydGljbGUudGV4dCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicChzbSkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNpZGViYXIge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWhlYWRlciB7XHJcbiAgICAgICAgaDEge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC10ZXh0KGdvbGRlbi1ob3VyKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xNTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGV4dC1oZWFkZXItZGVzY3JpcHRpb24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRleHQtY29udGVudCB7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW1nICsgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gICAgICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgICAgIC1tcy13b3JkLWJyZWFrOiBicmVhay1hbGw7XHJcbiAgICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgICAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgICAgICAgLW1zLWh5cGhlbnM6IGF1dG87XHJcbiAgICAgICAgICAgIC1tb3otaHlwaGVuczogYXV0bztcclxuICAgICAgICAgICAgLXdlYmtpdC1oeXBoZW5zOiBhdXRvO1xyXG4gICAgICAgICAgICBoeXBoZW5zOiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJveCxcclxuICAgICAgICAuYmxvY2txdW90ZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDUwcHggMDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAxMHB4IDE1cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAZWFjaCAkbmFtZSwgJGJnIGluICRncmFkaWVudHMge1xyXG4gICAgICAgICAgICAgICAgJi0jeyRuYW1lfSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJnO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBjb2xvci1jb250cmFzdChnZXRHcmFkaWVudEZhbGxiYWNrKCRuYW1lKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ibG9ja3F1b3RlLWJsdWUge1xyXG4gICAgICAgICAgICBAZXh0ZW5kIC5ibG9ja3F1b3RlO1xyXG4gICAgICAgICAgICBAZXh0ZW5kIC5ibG9ja3F1b3RlLWJsdWUtaG91cjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbWFnZS1sZWZ0IHtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAzMHB4IDIwcHggMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbWFnZS1yaWdodCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDAgMjBweCAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmltYWdlLWZ1bGwge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGV4dC1tZXRhIHtcclxuICAgICAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdCgpO1xyXG5cclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgc21va2UpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkdGV4dC1zaXplcywgeHMpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDM0cHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFkZHRoaXNfaW5saW5lX3NoYXJlX3Rvb2xib3gge1xyXG4gICAgICAgIEBpbmNsdWRlIGJwKHNtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWltYWdlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblxyXG4gICAgICAgIHA6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LWRpc2NsYWltZXIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICAmLmJsYWNrIHtcclxuICAgICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmxhY2spO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmdyZXkge1xyXG4gICAgICAgICAgICBjb2xvcjogIzhmOGY4ZjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLndyYXBwZXIge1xyXG4gICAgICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5oYXMtc2lkZWJhciB7XHJcbiAgICAgICAgLnRleHQtaGVhZGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0tbGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1ucyg5LCAkY29sdW1uX2dhcDogNTVweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1ibG9nLWFydGljbGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJwKHNtKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1mYXEtYXJ0aWNsZSB7XHJcbiAgICAgICAgaGVhZGVyIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucG9wdWxhci1mYXFzLWxpc3Qge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1haW5Db250ZW50LCAuc2lkZWJhciB7XHJcbiAgICAgICAgICAgICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAubWFpbkNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLWZhcS1zZWFyY2gge1xyXG4gICAgICAgIGhlYWRlciB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZhcS1saXN0aW5nIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiYXJ0aWNsZS52aWRlbyB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAxMDBweCAwO1xyXG4gICAgfSAgICBcclxufVxyXG5cclxuLnZpZGVvIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAmLWNvbnRlbnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi1jb250YWluZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDA7XHJcblxyXG4gICAgICAgICYuaXMtMTZ4OSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuYXQtb25seTpub3QoOmZvY3VzKTpub3QoOmFjdGl2ZSkge1xyXG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcclxuICAgIGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgd2lkdGg6IDFweDtcclxufVxyXG5cclxuW2RhdGEtbW9kYWwtb3Blbl1baGlkZGVuXSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5ib2R5Lm1vZGFsLW9wZW4ge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmpzIFtkYXRhLW1vZGFsXSxcclxuLmExMXktbW9kYWwge1xyXG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xyXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgIGxlZnQ6IDIwcHg7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHRvcDogMjBweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxODAwcHggMTgwMDBweCByZ2JhKDAsIDAsIDAsIC40KTtcclxuICAgIG1hcmdpbjogYXV0bztcclxuICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDY2MHB4O1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgcGFkZGluZzogNDBweDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtLWxhcmdlKSB7XHJcbiAgICAuanMgW2RhdGEtbW9kYWxdLFxyXG4gICAgLmExMXktbW9kYWwge1xyXG4gICAgICAgIGJvdHRvbTogYXV0bztcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgYm90dG9tOiBhdXRvO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5qcyBbZGF0YS1tb2RhbF1baGlkZGVuXSAuYTExeS1tb2RhbFtoaWRkZW5dIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1dmgpO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcblxyXG4uYTExeS1tb2RhbF9fY2xvc2UtYnRuIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgpO1xyXG59XHJcblxyXG4uaXMtaWNvbi1idG4ge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGhlaWdodDogMmVtO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAuNzVlbTtcclxuICAgIHRvcDogLjc1ZW07XHJcbiAgICB3aWR0aDogMmVtO1xyXG59XHJcblxyXG5bZGF0YS1tb2RhbC14XSB7XHJcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAyZW07XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIHdpZHRoOiAycHg7XHJcbn1cclxuXHJcbltkYXRhLW1vZGFsLXhdOmFmdGVyIHtcclxuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkO1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn0iLCIuYmxvZy1mZWF0dXJlZCB7XHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJwKHNtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDU1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtY2FyZHMge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0zMHB4O1xyXG5cclxuICAgICAgICAuZmxleC1ncmlkID4gKiB7XHJcbiAgICAgICAgICAgICYgPiAqIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKHNtKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICAgICAgICAgIC5pbmZvLWNhcmQge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICYuaXMtbGFyZ2Uge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicChzbSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtNDVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ibG9nLWZlYXR1cmVkLWNhcmRzIHtcclxuICAgICAgICAgICAgLmZsZXgtZ3JpZCA+ICoge1xyXG4gICAgICAgICAgICAgICAgJiA+ICoge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicChzbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmluZm8tY2FyZC1jb250ZW50IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKHNtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNjBweCAxMDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5yZWFkaW5nLWxpc3Qge1xyXG4gICAgYmFja2dyb3VuZDogI0Y1RjVGNTtcclxuICAgIHBhZGRpbmc6IDYwcHggMDtcclxuXHJcbiAgICAmLXRpdGxlIHtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcclxuICAgICAgICBjb2xvcjogIG1hcC1nZXQoJGNvbG9ycywgYmxhY2spO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi1saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdCgpO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDBweCwgMHB4KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicChzbSkge1xyXG4gICAgICAgIC5jb2w6bm90KC50bnMtaXRlbSkge1xyXG4gICAgICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuXHJcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKG4rNSkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNhcmQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMzAuMjFkZWcsICMzM0NDRkYgNy45OSUsICMzMzMzOTkgMTAwJSk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE0KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzNTBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cywgJjphY3RpdmUsICY6dmlzaXRlZCB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5mby1jYXJkLWhlYWRlciB7XHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5mby1jYXJkLXRpdGxlIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLWNhcmQtZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmluZm8tY2FyZC1jb250ZW50IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbmZvLWNhcmQtbWV0YSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLWNhcmQtbWV0YS1jb3VudCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogOXB4O1xyXG4gICAgICAgICAgICBsZWZ0OiA5cHg7XHJcbiAgICAgICAgICAgIGJvdHRvbTogLTlweDtcclxuICAgICAgICAgICAgcmlnaHQ6IC05cHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjMwLjIxZGVnLCAjMzNDQ0ZGIDcuOTklLCAjMzMzMzk5IDEwMCUpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtY2FyZC1saXN0aW5nIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIG1hcmdpbjogMjVweCAwIDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBjb3VudGVyLXJlc2V0OiByZWFkaW5nLWxpc3QtY291bnRlcjtcclxuXHJcbiAgICAgICAgYSwgYTpmb2N1cywgYTpob3ZlciwgYTphY3RpdmUge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogcmVhZGluZy1saXN0LWNvdW50ZXI7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmlzLWN1cnJlbnQge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGk6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgY29udGVudDogY291bnRlcihyZWFkaW5nLWxpc3QtY291bnRlcikgXCIuXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50bnMtb3ZoIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOXB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDlweDtcclxuICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCA0NHB4IHJnYmEoOTUsIDk1LCA5NSwgMC41Nyk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE2Nik7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnRucy1jb250cm9scyB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogMzVweCAtNXB4IDA7XHJcbiAgICAgICAgb3V0bGluZTogMDtcclxuICAgIH1cclxuXHJcbiAgICBbZGF0YS1jb250cm9sc10ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgICAgIGNvbG9yOiAjNTk1ODU4O1xyXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMTFweCAyMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgW2RhdGEtY29udHJvbHNdOmRpc2FibGVkIHtcclxuICAgICAgICBjdXJzb3I6IGRlZmF1bHRcclxuICAgIH1cclxufSIsIi5mYXEge1xyXG4gICAgJHRoaXM6ICY7XHJcblxyXG4gICAgbWFyZ2luLWxlZnQ6IDg1cHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbC1tZWRpdW0pIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi1saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSBsYXlvdXQtbGlzdCgpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsLW1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWxpc3QtaXRlbSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGF0LXJvb3Qge1xyXG4gICAgICAgIGJ1dHRvbiN7JHRoaXN9LXRyaWdnZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tcmVzZXQoKTtcclxuICAgICAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi10cmlnZ2VyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IGFjdW1pbi1wcm8tY29uZGVuc2VkLCBhY3VtaW4tcHJvLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcblxyXG4gICAgICAgICZbZGF0YS1hY2NvcmRpb24tdHJpZ2dlcl0ge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTg1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogODVweDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbC1tZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNDBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHRvcDogMTJweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiBcIjtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNDUsIDExNCwgMjQ3LCAwKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjMkQ3MkY3O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlLWluLW91dCBhbGw7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA0cHggNXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogNnB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogNnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtcGFuZWwge1xyXG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIHNtb2tlKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzIGVhc2UtaW4tb3V0IGFsbDtcclxuXHJcbiAgICAgICAgJiA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJiA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJi5oYXMtbm8tcGFkZGluZyB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwtbWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4uZmFxLWNhdGVnb3JpZXMge1xyXG4gICAgYmFja2dyb3VuZDogI0Y1RjVGNTtcclxuICAgIHBhZGRpbmc6IDQ1cHggMDtcclxuXHJcbiAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDYwcHggMDtcclxuICAgIH1cclxuXHJcbiAgICAmLWNvbnRhaW5lciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi10aXRsZSB7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XHJcbiAgICAgICAgY29sb3I6ICBtYXAtZ2V0KCRjb2xvcnMsIGJsYWNrKTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWxpc3Qge1xyXG4gICAgICAgIEBpbmNsdWRlIGxheW91dC1saXN0KCk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMHB4LCAwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJwKHNtKSB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG5cclxuICAgICAgICAuY29sOm5vdCgudG5zLWl0ZW0pIHtcclxuICAgICAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAmOm50aC1jaGlsZChuKzUpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi1jYXJkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJsYWNrKTtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMTQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICBwYWRkaW5nOiA0NXB4IDMwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb246IC4zcyBtYXAtZ2V0KCRtYXA6ICRlYXNpbmdzLCAka2V5OiBzd2lmdCkgdHJhbnNmb3JtO1xyXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xyXG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICBtYXJnaW46IDE1cHggMTVweCAzMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicChtZCkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA0OCwgMS4wNDgsIDEpIHRyYW5zbGF0ZVooMCk7XHJcblxyXG4gICAgICAgICAgICAgICAgLmluZm8tY2FyZC1hY3Rpb25zIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSwgJjp2aXNpdGVkIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBibGFjaylcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5pbmZvLWNhcmQtdGl0bGUge1xyXG4gICAgICAgICAgICBjb2xvcjogbWFwLWdldCgkY29sb3JzLCBibGFjayk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaW5mby1jYXJkLWNvbnRlbnQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0NnB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yM3B4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0xNXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0NGQ0ZDRjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmluZm8tY2FyZC1hY3Rpb25zIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjNzIG1hcC1nZXQoJGVhc2luZ3MsIHN3aWZ0KSBvcGFjaXR5O1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjMkQ3MkY3O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNhcmQtbGlzdGluZyB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDI1cHggMCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgY291bnRlci1yZXNldDogcmVhZGluZy1saXN0LWNvdW50ZXI7XHJcblxyXG4gICAgICAgIGEsIGE6Zm9jdXMsIGE6aG92ZXIsIGE6YWN0aXZlIHtcclxuICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHJlYWRpbmctbGlzdC1jb3VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5pcy1jdXJyZW50IHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxpOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIocmVhZGluZy1saXN0LWNvdW50ZXIpIFwiLlwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudG5zLWNvbnRyb2xzIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgW2RhdGEtY29udHJvbHNdIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgICAgICBjb2xvcjogIzU5NTg1ODtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDExcHggMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMDtcclxuICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIFtkYXRhLWNvbnRyb2xzXTpkaXNhYmxlZCB7XHJcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wb3B1bGFyLWZhcXMge1xyXG4gICAgbWFyZ2luLXRvcDogLTI1cHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtNDVweDtcclxuICAgIH1cclxuXHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZhcS1saXN0aW5nIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbn0iLCIuZmFxLWF1dG9jb21wbGV0ZSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAmLWZvcm0ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJi1zdWJtaXQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1yZXNldCgpO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0b3A6IDIycHg7XHJcbiAgICBcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGlubGluZS1zdmcoJzxzdmcgd2lkdGg9XCIzOFwiIGhlaWdodD1cIjM2XCIgdmlld0JveD1cIjAgMCAzOCAzNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPjxwYXRoIGQ9XCJNMjQuMzUwMyAyMi45NDk1TDM2IDM0TTI3Ljc1IDE1LjIxMjFDMjcuNzUgMjEuOTU2NyAyMi4yMDk1IDI3LjQyNDIgMTUuMzc1IDI3LjQyNDJDOC41NDA0OCAyNy40MjQyIDMgMjEuOTU2NyAzIDE1LjIxMjFDMyA4LjQ2NzU1IDguNTQwNDggMyAxNS4zNzUgM0MyMi4yMDk1IDMgMjcuNzUgOC40Njc1NSAyNy43NSAxNS4yMTIxWlwiIHN0cm9rZT1cIiM4RjhGOEZcIiBzdHJva2Utd2lkdGg9XCI1XCIvPjwvc3ZnPicpO1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICYuaXMtbG9hZGluZyB7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogaW5saW5lLXN2ZygnPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIzOFwiIGhlaWdodD1cIjM4XCIgdmlld0JveD1cIjAgMCAzOCAzOFwiIHN0cm9rZT1cIiMyRDcyRjdcIj48ZyBmaWxsPVwibm9uZVwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIj48ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoMSAxKVwiIHN0cm9rZS13aWR0aD1cIjRcIj48Y2lyY2xlIHN0cm9rZS1vcGFjaXR5PVwiLjVcIiBjeD1cIjE4XCIgY3k9XCIxOFwiIHI9XCIxNlwiLz48cGF0aCBkPVwiTTM0IDE4YzAtOS45NC04LjA2LTE2LTE4LTE2XCI+PGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT1cInRyYW5zZm9ybVwiIHR5cGU9XCJyb3RhdGVcIiBmcm9tPVwiMCAxOCAxOFwiIHRvPVwiMzYwIDE4IDE4XCIgZHVyPVwiMXNcIiByZXBlYXRDb3VudD1cImluZGVmaW5pdGVcIi8+PC9wYXRoPjwvZz48L2c+PC9zdmc+Jyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgICYtaW5wdXQge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDBweDtcclxuICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgcGFkZGluZzogMjVweCA2NXB4IDI1cHggMjVweDtcclxuICAgICAgICBib3gtc2hhZG93OiAwcHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuLmF1dG9jb21wbGV0ZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlIDBzO1xyXG4gICAgbWF4LWhlaWdodDogMDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XHJcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XHJcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDEsIDAuNSwgMSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIG1hcmdpbi10b3A6IDJweDtcclxuICAgIGJveC1zaGFkb3c6IDBweCA0cHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuICAgICY6YWN0aXZlLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwcztcclxuICAgIH1cclxuICAgIFxyXG4gICAgJjplbXB0eSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgJiA+IHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmxhY2spO1xyXG5cclxuICAgICAgICBhLCBcclxuICAgICAgICBhOmhvdmVyLCBcclxuICAgICAgICBhOmZvY3VzIHtcclxuICAgICAgICAgICAgY29sb3I6IG1hcC1nZXQoJGNvbG9ycywgYmxhY2spO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zNTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYgPiBsaSB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UgMHM7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlIGE6YWN0aXZlLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSBhOmFjdGl2ZSxcclxuICAgICAgICAgICAgJjpmb2N1cyBhOmFjdGl2ZSxcclxuICAgICAgICAgICAgJjpob3ZlciBhOmFjdGl2ZSxcclxuICAgICAgICAgICAgJi5hY3RpdmUgYTpmb2N1cyxcclxuICAgICAgICAgICAgJjphY3RpdmUgYTpmb2N1cyxcclxuICAgICAgICAgICAgJjpmb2N1cyBhOmZvY3VzLFxyXG4gICAgICAgICAgICAmOmhvdmVyIGE6Zm9jdXMsXHJcbiAgICAgICAgICAgICYuYWN0aXZlIGE6aG92ZXIsXHJcbiAgICAgICAgICAgICY6YWN0aXZlIGE6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMgYTpob3ZlcixcclxuICAgICAgICAgICAgJjpob3ZlciBhOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5sb2NrZWQge1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjOEY4RjhGO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYub3BlbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZSAwcztcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xyXG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMSwgMC41LCAxKTtcclxuICAgICAgICB6LWluZGV4OiAxMDA7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgJjplbXB0eSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmLXNob3ctYWxsIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXJlc2V0KCk7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBhY3VtaW4tcHJvLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTJweCAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIFxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogLTNweDtcclxuICAgICAgICAgICAgbGVmdDogMTVweDtcclxuICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiA0MXB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMzcHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICB0b3A6IDExcHg7XHJcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBpbmxpbmUtc3ZnKCc8c3ZnIHdpZHRoPVwiNDFcIiBoZWlnaHQ9XCIzM1wiIHZpZXdCb3g9XCIwIDAgNDEgMzNcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj48cGF0aCBkPVwiTTAuNSAxNkgzOC4zNTM2TTM4LjM1MzYgMTZMMjMuNjQ2NCAyTTM4LjM1MzYgMTZMMjMuMzUzNiAzMVwiIHN0cm9rZT1cIiNCMkIyQjJcIiBzdHJva2Utd2lkdGg9XCIzXCIvPjwvc3ZnPicpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5mYXEtbGlzdGluZyB7XHJcbiAgICAkdGhpczogJjtcclxuICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgICYtbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGF5b3V0LWxpc3QoKTtcclxuXHJcbiAgICAgICAgJi5oYXMtY29sdW1ucyB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQoJGd1dHRlcjogMTAwcHgsICRpc1NlbGY6IHRydWUsICRpbmNsdWRlQnJlYWtwb2ludHM6IGZhbHNlKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgI3skdGhpc30tbGlzdC1pdGVtIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWhlYWRpbmcge1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDYwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJwKG1kKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDcwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWxpc3QtaXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAmLWNhcmQge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgcGFkZGluZzogMzVweCAwO1xyXG5cclxuICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQ0ZDRkNGO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIHRvcDogYXV0bztcclxuICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnAobWQpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhICsgdWwge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLWNhcmQtdGl0bGUge1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtLjA1cHg7XHJcbiAgICAgICAgY29sb3I6ICBtYXAtZ2V0KCRjb2xvcnMsIGJsYWNrKTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogLjJzIGVhc2UtaW4tb3V0IGNvbG9yO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBhY3VtaW4tcHJvLWNvbmRlbnNlZCwgYWN1bWluLXBybywgJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuXHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBtYXAtZ2V0KCRjb2xvcnMsIGJsdWUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyBTaXRlY29yZSBFeHBlcmllbmNlIEVkaXRvciBTdHlsZXNcclxuLmV4cGVyaWVuY2UtZWRpdG9yIHtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgLnNpdGUtaGVhZGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbiAgICBhcnRpY2xlLmFib3V0LXN1bm5vdmEge1xyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhcnRpY2xlLnRleHQge1xyXG4gICAgICAgIGgxIHtcclxuICAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBhcnRpY2xlLm5ld3MtcHJlc3Mge1xyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogaW5oZXJpdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFnZS1pbnRybyB7XHJcbiAgICAgICAgJi1oZWFkaW5nIHtcclxuICAgICAgICAgICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IGluaGVyaXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN0YXRlLWxpc3Rpbmcge1xyXG4gICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGFydGljbGUudGVzdGltb25pYWwge1xyXG4gICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgIGgxIHtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmltYWdlLXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAmID4gKiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZnVsbHdpZHRoLWNhbGxvdXQge1xyXG4gICAgICAgICYtaW1hZ2Uge1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ== */
