/*!************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./data/www/templates/asgard/eshop.setos.cz/sass/product.scss ***!
  \************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
.product-detail__quantity label, .product-detail__price-info-saving-amount, .product-detail__price-info-saving-percent > span:not([id]), .product-detail__price-info-block-heading, .product-detail .tabs__main .tabs__section-inner-content .product-detail__producer .product-detail__secondary-section-heading, .product-detail__reviews-info .ratings-count, .product-detail__reviews-info .ratings-overall-heading, .product-detail__reviews-info .ratings-average {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.product-detail__price-info-saving-amount, .product-detail__price-info-being-sold-percentage-discount .product-detail__price-info-block-heading {
  clip: unset;
  clip-path: unset;
  height: unset;
  overflow: unset;
  position: unset;
  white-space: unset;
  width: unset;
}

/**
 * Retrieves the next smaller breakpoint from the given breakpoint.
 *
 * @param {String} $breakpoint - The breakpoint for which to find the next smaller breakpoint.
 * @return {String|null} - The next smaller breakpoint, or null if no smaller breakpoint is available.
 */
/**
 * Retrieves the next larger breakpoint from the $grid-breakpoints map.
 *
 * @function get-bigger-breakpoint
 * @param {String} $breakpoint - The current breakpoint to find the next larger one for.
 * @return {String | null} - The next larger breakpoint or null if the current breakpoint is the largest or not found.
 */
/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
/**
 * Special version of the card-box() layout for the B2B shop
 */
/**
 * card-box list layout for the B2B shop
 */
@media (min-width: 1366px) {
  .product-detail p {
    font-size: inherit;
  }
}
.product-detail__main {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px 0;
  align-items: start;
}
@media (min-width: 576px) {
  .product-detail__main {
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    gap: 30px 40px;
  }
}
.product-detail__main-images {
  order: -1;
  display: grid;
  grid-template-columns: 1fr;
  place-items: center;
}
.product-detail__main-images > * {
  grid-column: 1/-1;
  grid-row: 1/-1;
}
.product-detail__main-text {
  container-name: product-text-block;
  container-type: inline-size;
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  align-self: start;
}
.product-detail__main-text > *:where(:not(.product-detail__has-free-shipping):not(.product-detail__actions)) {
  width: 100%;
}
.product-detail__main-text .product-detail__text {
  text-wrap: balance;
  text-align: center;
}
.product-detail__main-text .product-detail__text:not(:has(> *)) {
  position: absolute;
}
@media (min-width: 576px) {
  @container product-text-block (width < 80vw) and (width > 329px) {
    .product-detail__main-text .product-detail__text {
      text-align: left;
    }
  }
}
.product-detail__reviews-info {
  display: grid;
  grid-template-columns: repeat(2, max-content);
  gap: 0.5rem 1rem;
  justify-content: center;
}
@media (min-width: 576px) {
  @container product-text-block (width < 80vw) and (width > 329px) {
    .product-detail__reviews-info {
      justify-content: unset;
    }
  }
}
.product-detail__reviews-info-percentage {
  font-weight: 600;
  margin-inline-end: 0.5rem;
}
.product-detail__reviews-info .ratings-overall {
  display: contents;
}
.product-detail__heading {
  text-align: center;
  text-wrap: balance;
}
@media (min-width: 576px) {
  @container product-text-block (width < 80vw) and (width > 329px) {
    .product-detail__heading {
      text-align: left;
    }
  }
}
.product-detail__form {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  align-self: start;
}
.product-detail__form > *:where(:not(.product-detail__has-free-shipping):not(.product-detail__actions)) {
  width: 100%;
}
.product-detail__title {
  margin-bottom: 1rem;
}
.product-detail__meta {
  color: #747474;
  display: flex;
  flex-wrap: wrap;
  gap: 0 clamp(1.5rem, 3vw, 3rem);
  text-align: center;
  text-wrap: balance;
  justify-content: center;
  min-height: 1lh;
}
@media (min-width: 576px) {
  @container product-text-block (width < 80vw) and (width > 329px) {
    .product-detail__meta {
      text-align: left;
      justify-content: unset;
    }
  }
}
.product-detail__meta > * {
  margin: 0;
  padding: 0;
}
.product-detail__text:has(.perex-more) > *:nth-last-child(2) {
  display: inline;
}
.product-detail__has-free-shipping {
  min-width: calc(50% - 1rem);
}
.product-detail__secondary {
  overflow: hidden;
}
thead + tbody > .product-detail__secondary table:first-child,
.product-detail__secondary table tr + tr {
  border-top: 1px solid #dedede;
}
.product-detail__secondary table th,
.product-detail__secondary table td {
  vertical-align: top;
  padding: 0.4em;
}
.product-detail__secondary table th:first-child,
.product-detail__secondary table td:first-child {
  padding-left: 0;
}
.product-detail__secondary table th:last-child,
.product-detail__secondary table td:last-child {
  padding-right: 0;
}
.product-detail__secondary table th {
  font-weight: normal;
}
.product-detail__secondary table th + td {
  font-weight: 600;
}
.product-detail__secondary table thead th {
  font-weight: 600;
}
.product-detail .tabs:last-child {
  margin-bottom: 6rem;
}
.product-detail .tabs + .products-section,
.product-detail .tabs + .products-section + .products-section {
  border-block-start: 1px solid #dedede;
  margin-block-start: 6rem;
}
@media (max-width: 767.98px) {
  .product-detail .tabs + .products-section {
    border-block-start: none;
    margin-block-start: unset;
  }
}
.product-detail .tabs + *:where(:not(.products-section)) {
  margin-block-start: 6rem;
}
.product-detail .tabs__main {
  container: main-tab/inline-size;
}
.product-detail .tabs__main .tabs__section-inner-content {
  display: flex;
  flex-wrap: wrap;
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__text {
  flex: 11 0 350px;
  margin-bottom: 3rem;
}
@container main-tab (min-width: 537px) {
  .product-detail .tabs__main .tabs__section-inner-content .product-detail__text:where(:not(:last-child)) {
    padding-right: 3.5%;
  }
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__text:where(:first-child:last-child) {
  flex: none;
  padding-right: 0;
  max-width: min(768px, 100%);
  margin-inline: auto;
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__text + div {
  flex: 2 0 187px;
}
@container main-tab (min-width: 702px) {
  .product-detail .tabs__main .tabs__section-inner-content .product-detail__text + div {
    border-left: 1px solid #dedede;
    padding-left: 3.5%;
    padding-bottom: 3rem;
  }
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__secondary-section-heading {
  margin-bottom: 1rem;
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__secondary-section + .product-detail__secondary-section {
  margin-top: 3rem;
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__producer {
  font-size: 1.75rem;
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__producer img {
  max-height: 150px;
}
.product-detail__parameters-list .popover__container {
  margin-inline: 0.2em;
}
.product-detail__parameters-list-item-description-variants .column-items-dynamic {
  --column-count: 1;
  --column-width: "";
}
.product-detail__parameters-list-item-description-variants .column-items-dynamic:not(.show-all-items) .column-items-dynamic--trigger,
.product-detail__parameters-list-item-description-variants .column-items-dynamic:not(.show-all-items) .column-items-dynamic--trigger div {
  display: inline;
}
.product-detail__parameters-list-item-description-variants .column-items-dynamic:not(.show-all-items) .column-items-dynamic--trigger .btn {
  text-transform: lowercase;
}
.product-detail__parameters-list-item-description-variants .column-items__item::after {
  margin-inline-start: 0;
}
.product-detail__taxonomy {
  margin-bottom: 6rem;
}
.product-detail__taxonomy-heading {
  font-size: 1.75rem;
  line-height: 1.2;
}
.product-detail__similar-categories-heading {
  margin-bottom: 1rem;
}
.product-detail__similar-categories-list-item {
  display: block;
}
.product-detail__tags > dl {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1rem;
}
@media (min-width: 768px) {
  .product-detail__tags > dl {
    align-items: baseline;
    flex-wrap: nowrap;
  }
}
.product-detail__tags > dl,
.product-detail__tags > dl * {
  overflow-wrap: normal;
}
.product-detail__tags > dl,
.product-detail__tags > dl dt,
.product-detail__tags > dl dd {
  margin: 0;
}
.product-detail__variants-list li + li {
  margin-top: 0.3rem;
}

.product-detail__main-image {
  min-width: 100%;
  max-width: 100%;
}
.product-detail__main-image .embla__button {
  min-width: 40px;
}
.product-detail__main-image .embla__button--prev {
  right: auto;
  left: -10px;
}
.product-detail__main-image .embla__button--next {
  left: auto;
  right: -10px;
}
.product-detail__main-image .embla__slide {
  position: relative;
}
.product-detail__main-image .embla__slide > *:not(.embla__slide--spinner) {
  opacity: 1;
  transition: 0.3s opacity ease-in-out;
}
.product-detail__main-image .embla__slide a,
.product-detail__main-image .embla__slide picture {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.product-detail__main-image .embla__slide img {
  aspect-ratio: 1;
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.product-detail__main-image .embla__slide--spinner {
  height: 30px;
  width: 30px;
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  opacity: 0;
  pointer-events: none;
  animation: spinner 0.75s infinite linear;
}
.product-detail__main-image .embla__slide:where(:not(.embla__lazy-load--has-loaded)) {
  aspect-ratio: 1/1;
}
.product-detail__main-image .embla__slide:where(:not(.embla__lazy-load--has-loaded)) > *:not(.embla__slide--spinner) {
  opacity: 0;
}
.product-detail__main-image .embla__slide:where(:not(.embla__lazy-load--has-loaded)) .embla__slide--spinner {
  opacity: 0.5;
}
.product-detail__main-images {
  background-color: var(--bs-body-bg);
  margin-inline: calc(var(--bs-gutter-x) * -0.5);
  padding: clamp(15px, 5vw, 30px) clamp(15px, 3.333vw, 20px);
}
@media (min-width: 576px) {
  .product-detail__main-images {
    margin-inline: 0;
  }
}
.product-detail__thumbnail-images {
  margin: clamp(15px, 5vw, 30px) clamp(-20px, -3.333vw, -15px) clamp(-30px, -5vw, -15px);
  justify-self: stretch;
  padding: clamp(15px, 3.333vw, 20px);
  grid-row: 2;
  border-top: 1px solid #dedede;
}
@supports selector(:has(> [style*="none"])) {
  .product-detail__thumbnail-images:has(> [style*=none]) {
    display: none;
  }
}
.product-detail__thumbnail-images-list {
  --thumbnail-width: 95px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(var(--thumbnail-width), 1fr));
  gap: 0 1px;
  grid-template-rows: 1fr 1fr 0fr;
  grid-template-rows: auto auto 0fr;
  grid-auto-rows: 0fr;
  overflow: hidden;
  position: relative;
  transition: grid-template-rows 0.5s ease-out, gap 0.3s ease-out;
}
.product-detail__thumbnail-images-list.show-all-thumbnails {
  grid-template-rows: auto auto 1fr;
  grid-auto-rows: auto;
  gap: 1px;
}
.product-detail__thumbnail-images-list > * {
  aspect-ratio: 1/1;
  opacity: 1;
  transition: 0.3s ease-in;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: var(--thumbnail-width);
  overflow: hidden;
}
.product-detail__thumbnail-images-list > * a {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  overflow: hidden;
  transition: border-color 0.15s linear;
  height: calc(var(--thumbnail-width) - 2px);
  width: calc(var(--thumbnail-width) - 2px);
}
.product-detail__thumbnail-images-list > * a picture {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96%;
  height: 96%;
}
.product-detail__thumbnail-images-list > * a img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.product-detail__thumbnail-images-list > .thumbnail-last-item {
  position: relative;
}
.product-detail__thumbnail-images-list > .thumbnail-last-item .product-detail__thumbnail-images-trigger {
  position: absolute;
  inset: 0;
  display: grid;
  z-index: 1;
  background: #fff;
  align-content: center;
  font-size: 1.6rem;
  font-weight: normal;
  padding-top: 8px;
  text-indent: -4px;
  line-height: 25px;
}
.product-detail__thumbnail-images-list > .thumbnail-last-item .product-detail__thumbnail-images-trigger > span:first-child {
  font-weight: bold;
}
.product-detail__thumbnail-images .thumb {
  border: 1px solid rgba(255, 255, 255, 0);
}
.product-detail__thumbnail-images .active-thumb {
  border-color: #b1b1b1;
}

.product-detail__variants {
  border-top: 1px solid #dedede;
  padding-top: 2rem;
}
.product-detail__variants .form-input__label {
  font-size: inherit;
  font-weight: 700;
  opacity: 1;
}
.product-detail__variants .form-input + .form-input {
  margin-top: 2rem;
}
.product-detail__variants .form-input .form-field-buttons-container {
  padding-block: 6px;
  min-height: 62px;
}
.product-detail__variants .form-input .form-field, .product-detail__variants .form-input .form-field-container {
  background-color: #fff;
}
.product-detail__variants .form-input .form-field:focus-within, .product-detail__variants .form-input .form-field-container:focus-within {
  background-color: #fff;
}
.product-detail__variants .trigger-disabled--select-to-triggers {
  cursor: default;
}
.product-detail__variants .trigger-disabled--select-to-triggers::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-image: url('data:image/svg+xml,    <svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none">    <line stroke-width="2" stroke="rgba(177, 177, 177, 0.999)"    x1="0" y1="0" x2="100" y2="100" vector-effect="non-scaling-stroke"/>    </svg>');
  transform: scaleX(-1);
}
.product-detail__variants .trigger--select-to-triggers-image {
  --thumbnail-width: 80px;
  padding: 5px;
  aspect-ratio: 1/1;
  width: var(--thumbnail-width);
  max-width: var(--thumbnail-width);
}
.product-detail__variants .trigger--select-to-triggers-image .variant-option-item-inner {
  height: var(--thumbnail-width);
}
.product-detail__variants .trigger--select-to-triggers-image .variant-option-item-inner picture {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 96%;
  width: 96%;
}
.product-detail__variants .trigger--select-to-triggers-image .variant-option-item-inner img {
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.product-detail__variants [id=variantColourOptions] {
  opacity: 0;
}
.product-detail__variants .variant-parameter-name {
  margin-left: 1em;
  font-weight: normal;
}

.product-detail__price-block {
  background: #fff;
  padding: clamp(15px, 3.333vw, 20px);
}
.product-detail__price-info-blocks {
  display: grid;
  gap: 0 10px;
  grid-template-columns: 70px auto auto 1fr;
}
@media (min-width: 1200px) {
  .product-detail__price-info-blocks {
    grid-template-columns: auto 1fr minmax(auto, 70px) minmax(auto, 200px);
  }
}
.product-detail__price-info-block-heading {
  margin: 0;
}
.product-detail__contents {
  display: contents;
}
.product-detail__price-info-coming-soon {
  grid-row: 1;
  grid-column: 1/span 4;
  padding-bottom: 0.25rem;
  font-weight: 700;
}
.product-detail__price-info-being-sold-old-price {
  grid-row: 1;
  grid-column: 1/span 4;
  color: #747474;
  padding-bottom: 0.25rem;
}
.product-detail__price {
  grid-row: 2;
  grid-column: 1/span 2;
}
.product-detail__price * {
  overflow-wrap: normal;
}
.product-detail__price strong {
  font-size: var(--product-detail-price-size);
}
.product-detail__price [id=priceExclVat] {
  display: block;
  color: #747474;
  font-size: 1.4rem;
  margin-block-start: -0.5rem;
  padding-inline-end: 0.5rem;
}
.product-detail__delivery-date {
  grid-column: 1/span 3;
  grid-row: 4;
}
.product-detail__price-info-being-sold-percentage-discount {
  grid-row: 2;
  grid-column: 3/span 2;
  align-self: center;
}
.product-detail__price-info-being-sold-percentage-discount * {
  overflow-wrap: normal;
}
.product-detail__price-info-being-sold-percentage-discount .product-detail__price-info-block-content {
  display: inline-flex;
  background-color: #df1607;
  color: #fff;
  padding-inline: 0.5rem;
}
.product-detail__availability {
  grid-row: 3;
  grid-column: 1/span 4;
  padding-top: 0.75rem;
}
.product-detail__availability .stock--available {
  font-weight: 600;
}
.product-detail__availability-link:has([class*=stock]) {
  text-decoration: none;
}
.product-detail__availability-link:has([class*=stock]):link [class*=stock], .product-detail__availability-link:has([class*=stock]):visited [class*=stock] {
  text-decoration: underline;
}
.product-detail__availability-link:has([class*=stock]):hover [class*=stock], .product-detail__availability-link:has([class*=stock]):focus [class*=stock], .product-detail__availability-link:has([class*=stock]):active [class*=stock] {
  text-decoration: none;
}
.product-detail__availability .product-detail__price-info-block-content .popover {
  color: #000;
  top: -0.1rem;
}
.product-detail__availability .product-detail__price-info-block-content .popover .popover__content {
  color: var(--bs-body-color, #000);
}
.product-detail__quantity, .product-detail__submit {
  padding-top: 1.25rem;
}
.product-detail__quantity {
  grid-column: 1;
  grid-row: 5;
}
.product-detail__contents:has(.submit[disabled]) .product-detail__quantity {
  display: none;
}
.product-detail__quantity input {
  max-width: 100%;
  height: 56px;
  border: 1px solid #dedede;
  text-align: center;
}
.product-detail__submit {
  grid-row: 5;
  grid-column: 2/span 3;
}
.product-detail__submit .submit {
  box-sizing: border-box;
  height: 56px;
  width: 100%;
}
@media (min-width: 1200px) {
  .product-detail__price-info-being-sold-old-price {
    grid-column: 1/span 2;
  }
  .product-detail__price {
    grid-column: 1;
  }
  .product-detail__availability {
    padding-top: 0;
  }
  .product-detail__delivery-date {
    grid-row: 5;
  }
  .product-detail__quantity, .product-detail__submit {
    padding-top: 0;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
  }
  .product-detail__quantity {
    grid-column: 3;
    grid-row: 1/span 3;
  }
  .product-detail__submit {
    grid-column: 4;
    grid-row: 1/span 3;
  }
  .product-detail__price-info-being-sold-percentage-discount {
    grid-column: 2;
  }
}

.product-detail__actions-link {
  display: flex;
  align-items: center;
  gap: 5px;
}
.product-detail__actions-link:link, .product-detail__actions-link:visited {
  color: #333372;
}
.product-detail__actions-link:hover, .product-detail__actions-link:focus, .product-detail__actions-link:active {
  color: currentcolor;
  text-decoration: none;
}
.product-detail__actions-link:where([disabled]) {
  pointer-events: none;
  color: #747474;
}
.product-detail__actions-icon {
  height: 1em;
}
.product-detail__action + * {
  margin-top: 0.25rem;
}

.nav-tabs {
  background: none;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-top: 3rem;
  font-size: 1.75rem;
}
.nav-tabs::before {
  background-color: #f3f3f3;
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.nav-tabs > li {
  position: relative;
  max-width: 25%;
  overflow-wrap: normal;
}
.nav-tabs > li a {
  display: flex;
  flex-wrap: wrap;
  height: 80px;
  align-items: center;
  justify-content: center;
  padding: 5px clamp(5px, 5vw, 20px);
}
.nav-tabs > li a:link, .nav-tabs > li a:visited, .nav-tabs > li a:hover, .nav-tabs > li a:focus, .nav-tabs > li a:active {
  color: currentcolor;
}
.nav-tabs .active a {
  background-color: #fff;
  text-decoration: none;
  font-weight: bold;
}

.tabs__section:not(.active) {
  display: none;
}
@media (min-width: 768px) {
  .tabs__section-inner-content {
    padding-top: 5rem;
  }
}
@media (min-width: 768px) {
  .tabs__section-heading {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
}
.tabs__section-heading--icon {
  display: none;
}

.product-detail [data-content=accordion] {
  border-bottom: none;
  margin-bottom: 0;
}
[data-content=accordion] .nav-tabs {
  display: none;
}
[data-content=accordion] .toggled-section {
  border-block-start: 1px solid #dedede;
  display: block !important;
  margin-inline: calc(var(--bs-gutter-x) * -0.5);
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
}
[data-content=accordion] .toggled-section:last-child {
  border-block-end: 1px solid #dedede;
}
[data-content=accordion] .toggled-section-inner {
  display: grid !important;
  grid-template-rows: 0fr;
  align-items: start;
  transition: 0.2s grid-template-rows linear;
  overflow: hidden;
}
[data-content=accordion] .toggled-section-inner-content {
  overflow: hidden;
}
[data-content=accordion] .toggled-section-inner-content > *:last-child {
  margin-bottom: 2rem;
}
[data-content=accordion] .toggled-section-header {
  margin: 0;
  padding-block: 0.5rem;
  font-size: 2.1rem;
  font-weight: normal;
  min-height: 6rem;
  display: flex;
  align-items: center;
}
[data-content=accordion] .toggled-section-header .tabs__section-heading--icon {
  display: block;
  height: 1.5rem;
  width: 1.5rem;
  margin-inline-start: auto;
}
[data-content=accordion] .toggled-section.active .toggled-section-header .tabs__section-heading--icon {
  transform: rotate(180deg);
}
[data-content=accordion] .toggled-section.active .toggled-section-inner {
  grid-template-rows: 1fr;
}
[data-content=accordion] .toggled-section:first-child:last-child .toggled-section-header .tabs__section-heading--icon {
  display: none;
}
[data-content=accordion] .toggled-section:first-child:last-child .toggled-section-inner {
  grid-template-rows: 1fr;
}
[data-content=accordion].tabs__section:not(.active) {
  display: unset;
}
[data-content=accordion].tabs__section-heading {
  margin-top: 0;
}

@media (max-width: 767.98px) {
  .product-detail .tabs {
    border-bottom: none;
    margin-bottom: 0;
  }
  .tabs .nav-tabs {
    display: none;
  }
  .tabs .toggled-section {
    border-block-start: 1px solid #dedede;
    display: block !important;
    margin-inline: calc(var(--bs-gutter-x) * -0.5);
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
  }
  .tabs .toggled-section:last-child {
    border-block-end: 1px solid #dedede;
  }
  .tabs .toggled-section-inner {
    display: grid !important;
    grid-template-rows: 0fr;
    align-items: start;
    transition: 0.2s grid-template-rows linear;
    overflow: hidden;
  }
  .tabs .toggled-section-inner-content {
    overflow: hidden;
  }
  .tabs .toggled-section-inner-content > *:last-child {
    margin-bottom: 2rem;
  }
  .tabs .toggled-section-header {
    margin: 0;
    padding-block: 0.5rem;
    font-size: 2.1rem;
    font-weight: normal;
    min-height: 6rem;
    display: flex;
    align-items: center;
  }
  .tabs .toggled-section-header .tabs__section-heading--icon {
    display: block;
    height: 1.5rem;
    width: 1.5rem;
    margin-inline-start: auto;
  }
  .tabs .toggled-section.active .toggled-section-header .tabs__section-heading--icon {
    transform: rotate(180deg);
  }
  .tabs .toggled-section.active .toggled-section-inner {
    grid-template-rows: 1fr;
  }
  .tabs .toggled-section:first-child:last-child .toggled-section-header .tabs__section-heading--icon {
    display: none;
  }
  .tabs .toggled-section:first-child:last-child .toggled-section-inner {
    grid-template-rows: 1fr;
  }
  .tabs.tabs__section:not(.active) {
    display: unset;
  }
  .tabs.tabs__section-heading {
    margin-top: 0;
  }
}

/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
/**
 * Special version of the card-box() layout for the B2B shop
 */
/**
 * card-box list layout for the B2B shop
 */
.product-detail__main {
  align-items: start;
  grid-template-columns: 1fr;
  gap: 3rem 0;
}
@media (min-width: 768px) {
  .product-detail__main {
    gap: 2rem 4rem;
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  }
}
.product-detail__main-images {
  place-items: normal;
  grid-row: 2;
}
@media (min-width: 768px) {
  .product-detail__main-images {
    grid-row: 1/span 2;
    position: sticky;
    top: 6.5rem;
  }
}
@media (min-width: 1200px) {
  .product-detail__main-images {
    top: 15.5rem;
  }
}
.product-detail__main-image .embla__slide a {
  padding: clamp(1rem, 5vw, 5.6rem);
}
.product-detail__main-text {
  grid-row: 3;
}
@media (min-width: 768px) {
  .product-detail__main-text {
    grid-column: 2;
    grid-row: 2;
  }
}
.product-detail__title {
  font-size: 2.8rem;
}
.product-detail__heading {
  grid-row: 1;
}
@media (min-width: 768px) {
  .product-detail__heading {
    text-align: left;
    grid-column: 2;
  }
}
.product-detail__heading .flags {
  align-items: start;
  justify-content: center;
  flex-flow: row wrap;
  gap: 0.8rem;
  margin-block: 2rem 0;
  place-self: start;
}
@media (min-width: 768px) {
  .product-detail__heading .flags {
    margin-block: 0 1rem;
    justify-content: start;
  }
}
.product-detail__heading .flags__item {
  border-radius: 5px;
  font-size: 1.5rem;
  min-height: 2.8rem;
}
.product-detail__heading .flags__item:has(> .popover__container) {
  gap: 0.25rem;
  padding-inline-end: 0.3rem;
}
@media (hover: none) and (pointer: coarse) {
  .product-detail__heading .flags__item .popover__trigger::after {
    content: "";
    display: block;
    height: 4rem;
    width: 4rem;
    position: absolute;
    inset: calc(50% - 2rem) 0 0 calc(50% - 2rem);
  }
}
.product-detail__text[id=perex] {
  font-size: 1.4rem;
  font-weight: normal;
  font-variation-settings: "wght" 400;
}
.product-detail__text .perex-more {
  font-variation-settings: "wght" 700;
}
.product-detail__text .perex-more__icon {
  height: 1.2rem;
  width: 1.2rem;
}
.product-detail__text .perex-more .btn-link {
  display: inline-flex;
  align-items: baseline;
  gap: 0.5rem;
}
.product-detail__time-limited-offer {
  --inverted-border-gradient: #0000 98%, #000;
  --inverted-border-radius: 14px;
  --inverted-border-radius-tl: 0px;
  --inverted-border-radius-tr: 0px;
  --inverted-border-radius-br: 14px;
  --inverted-border-radius-bl: 14px;
  mask: radial-gradient(var(--inverted-border-radius-tl) at 0 0, var(--inverted-border-gradient)) 0 0, radial-gradient(var(--inverted-border-radius-tr) at 100% 0, var(--inverted-border-gradient)) 100% 0, radial-gradient(var(--inverted-border-radius-bl) at 0 100%, var(--inverted-border-gradient)) 0 100%, radial-gradient(var(--inverted-border-radius-br) at 100% 100%, var(--inverted-border-gradient)) 100% 100%;
  mask-repeat: no-repeat;
  mask-size: 51% 51%;
  background-color: #232352;
  border-radius: 14px 14px 0 0;
  color: #fff;
  border-inline-start: none;
  margin-block-end: calc(-2rem - 1px);
  padding: clamp(10px, 2.5vw, 20px) clamp(15px, 3.333vw, 40px);
}
@supports (background: -webkit-named-image(i)) {
  .product-detail__time-limited-offer {
    mask: none;
  }
}
@supports (offset-path: shape(from top left, curve to 50% 50% with 25% 100%)) {
  .product-detail__time-limited-offer {
    mask: none;
    clip-path: shape(from 0 var(--inverted-border-radius-tl), arc by var(--inverted-border-radius-tl) calc(var(--inverted-border-radius-tl) * -1) of var(--inverted-border-radius-tl), line to calc(100% - var(--inverted-border-radius-tr)) 0, arc by var(--inverted-border-radius-tr) var(--inverted-border-radius-tr) of var(--inverted-border-radius-tr), line to 100% calc(100% - var(--inverted-border-radius-br)), arc by calc(var(--inverted-border-radius-br) * -1) var(--inverted-border-radius-br) of var(--inverted-border-radius-br), line to var(--inverted-border-radius-bl) 100%, arc by calc(var(--inverted-border-radius-bl) * -1) calc(var(--inverted-border-radius-bl) * -1) of var(--inverted-border-radius-bl), line to 0 var(--inverted-border-radius-tl));
  }
}
.product-detail__time-limited-offer .time-limited-offers__offer-time-remaining-heading {
  font-size: 2rem;
  font-variation-settings: "wght" 400;
}
.product-detail__time-limited-offer .time-limited-offers__offer-time-remaining-value {
  font-size: 2rem;
  font-variation-settings: "wght" 700;
}
.product-detail__time-limited-offer + .product-detail__price-block {
  --inverted-border-gradient: #0000 98%, #000;
  --inverted-border-radius: 14px;
  --inverted-border-radius-tl: 14px;
  --inverted-border-radius-tr: 14px;
  --inverted-border-radius-br: 0px;
  --inverted-border-radius-bl: 0px;
  mask: radial-gradient(var(--inverted-border-radius-tl) at 0 0, var(--inverted-border-gradient)) 0 0, radial-gradient(var(--inverted-border-radius-tr) at 100% 0, var(--inverted-border-gradient)) 100% 0, radial-gradient(var(--inverted-border-radius-bl) at 0 100%, var(--inverted-border-gradient)) 0 100%, radial-gradient(var(--inverted-border-radius-br) at 100% 100%, var(--inverted-border-gradient)) 100% 100%;
  mask-repeat: no-repeat;
  mask-size: 51% 51%;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
@supports (background: -webkit-named-image(i)) {
  .product-detail__time-limited-offer + .product-detail__price-block {
    mask: none;
  }
}
@supports (offset-path: shape(from top left, curve to 50% 50% with 25% 100%)) {
  .product-detail__time-limited-offer + .product-detail__price-block {
    mask: none;
    clip-path: shape(from 0 var(--inverted-border-radius-tl), arc by var(--inverted-border-radius-tl) calc(var(--inverted-border-radius-tl) * -1) of var(--inverted-border-radius-tl), line to calc(100% - var(--inverted-border-radius-tr)) 0, arc by var(--inverted-border-radius-tr) var(--inverted-border-radius-tr) of var(--inverted-border-radius-tr), line to 100% calc(100% - var(--inverted-border-radius-br)), arc by calc(var(--inverted-border-radius-br) * -1) var(--inverted-border-radius-br) of var(--inverted-border-radius-br), line to var(--inverted-border-radius-bl) 100%, arc by calc(var(--inverted-border-radius-bl) * -1) calc(var(--inverted-border-radius-bl) * -1) of var(--inverted-border-radius-bl), line to 0 var(--inverted-border-radius-tl));
  }
}
.product-detail__info {
  display: grid;
  gap: 3rem 4rem;
  grid-template-columns: repeat(auto-fit, minmax(min(600px, 100%), 1fr));
  grid-auto-rows: auto 1fr auto;
}
.product-detail__info--section {
  background-color: #f3f3f3;
  border-radius: 8px;
  padding: 3% clamp(2.5rem, 2vw, 3.5rem);
  align-content: center;
}
.product-detail__info--section.promo-is--img {
  padding: 0;
  overflow: hidden;
  background-color: transparent;
}
.product-detail__info--section.promo-is--img img {
  border-radius: 8px;
  margin-inline: auto;
}
.product-detail__info--related {
  grid-row: span 2;
}
.product-detail__info .benefits-section__list {
  gap: 2rem;
}
.product-detail__info .benefit-item {
  gap: clamp(0.5rem, 2vw, 1rem);
  font-size: 1.4rem;
}
.product-detail__info .benefit-item__name {
  font-size: 1.6rem;
}
.product-detail__info .benefit-item img {
  height: 5.5rem;
}
.product-detail__info .contact-section {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(200px, 100%), 1fr));
  gap: 1rem 2rem;
  position: relative;
  font-size: 1.4rem;
}
.product-detail__info .contact-section * {
  z-index: 2;
}
.product-detail__info .contact-section__intro {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.product-detail__info .contact-section__intro--title {
  font-size: 2.2rem;
  margin-block-end: 0;
}
.product-detail__info .contact-section__list {
  display: contents;
}
.product-detail__info .contact-section__list-item {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-self: center;
}
.product-detail__info .contact-section__list-item--secondary {
  display: flex;
  font-size: 1.6rem;
  font-variation-settings: "wght" 700;
}
.product-detail__info .contact-section__list-item .icon-link__icon {
  stroke-width: 0;
  width: auto;
  margin-inline-end: 1rem;
}
.product-detail__info .contact-section__list-item .icon-link__icon:has([href="#icon-shop-mobile"]) {
  flex: 0 0 1.27rem;
  height: 2rem;
}
.product-detail__info .contact-section__list-item .icon-link__icon:has([href="#icon-shop-envelope"]) {
  flex: 0 0 2.1rem;
  height: 1.7rem;
}
.product-detail__info .contact-section__list-item .icon-link__text {
  word-break: normal;
}
.product-detail__info .contact-section__background-icon {
  grid-column: 1/-1;
  position: absolute;
  z-index: 1;
  aspect-ratio: 20/18;
  height: 85%;
  max-height: 162px;
  stroke-width: 0;
  width: auto;
  margin: 0;
  align-self: center;
  opacity: 0.075;
}
.product-detail__reviews-info-percentage {
  font-weight: normal;
  font-variation-settings: "wght" 600;
}
.product-detail__secondary > .container {
  padding: 4rem calc(var(--bs-gutter-x) * 0.5);
  display: flex;
  flex-direction: column;
  gap: 5rem 0;
}
@media (min-width: 768px) {
  .product-detail__secondary > .container {
    padding: 5rem calc(var(--bs-gutter-x) * 0.5);
    gap: 6rem 0;
  }
}
@media (min-width: 1366px) {
  .product-detail__secondary > .container {
    padding: 6rem calc(var(--bs-gutter-x) * 0.5);
    gap: 8rem 0;
  }
}
.product-detail__secondary > .container .canvas {
  padding: 0;
}
.product-detail__secondary > .container .tabs + *:where(:not(.products-section)) {
  margin-block: 0;
}
.product-detail__secondary table th {
  font-weight: normal;
  font-variation-settings: "wght" 400;
}
.product-detail__secondary table th + td {
  font-weight: normal;
  font-variation-settings: "wght" 600;
}
.product-detail__secondary table thead th {
  font-weight: normal;
  font-variation-settings: "wght" 600;
}
.product-detail__parameters {
  --line-size: 3.84rem;
}
.product-detail__parameters .toggled-section-inner-content.toggled-section-inner-content {
  display: block;
  columns: 2 480px;
  column-gap: 30px;
}
.product-detail__parameters-box {
  display: block;
  break-inside: avoid-column;
  border: 1px solid #dedede;
  border-radius: 8px;
  padding: calc(2.04rem - 1px) 30px calc(2.64rem - 1px);
  width: 100%;
  margin-bottom: 3rem;
}
@supports (background: -webkit-named-image(i)) {
  .product-detail__parameters-box {
    display: inline-block;
  }
}
@supports (height: round(up, 100%, var(--line-size))) {
  .product-detail__parameters-box {
    height: calc(round(up, 100%, var(--line-size)) - 3rem - 2px);
  }
}
.product-detail__parameters-title {
  font-size: 1.8rem;
  line-height: 2.8rem;
  padding-bottom: 1.04rem;
  margin-bottom: 0;
  min-height: var(--line-size);
}
@supports (height: round(up, 100%, var(--line-size))) {
  .product-detail__parameters-title {
    height: round(up, 100%, var(--line-size));
    min-height: max(var(--line-size), 100%);
  }
}
.product-detail__parameters-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  font-size: 1.4rem;
}
.product-detail__parameters-list dt {
  display: flex;
  align-items: center;
  grid-column: 1;
  margin: 0;
  font-variation-settings: "wght" 400;
  border-radius: 6px 0 0 6px;
  padding: 0.5rem 5px 0.5rem 20px;
  min-height: var(--line-size);
}
@supports (height: calc-size(auto, size)) {
  .product-detail__parameters-list dt {
    height: calc-size(fit-content, round(up, size, var(--line-size)));
    min-height: max(var(--line-size), 100%);
  }
}
.product-detail__parameters-list dt:nth-of-type(odd) {
  background-color: #e8e8fd;
}
.product-detail__parameters-list dt:nth-of-type(odd) + dd {
  background-color: #e8e8fd;
}
.product-detail__parameters-list dd {
  display: flex;
  align-items: center;
  grid-column: 2;
  margin: 0;
  border-radius: 0 6px 6px 0;
  padding: 0.5rem 20px 0.5rem 5px;
  color: #232352;
  min-height: var(--line-size);
}
@supports (height: calc-size(auto, size)) {
  .product-detail__parameters-list dd {
    height: calc-size(fit-content, round(up, size, var(--line-size)));
    min-height: max(var(--line-size), 100%);
  }
}
.product-detail__meta-box {
  padding: 0.5rem 2rem;
  border-radius: 1rem;
  border: 1px solid #dedede;
  margin-top: 0.5rem;
  background-color: #fff;
}
.product-detail__meta-list {
  font-size: 1.4rem;
}
.product-detail__meta-list:last-of-type {
  border-bottom: none;
}
.product-detail__meta-list-item {
  display: flex;
  justify-content: space-between;
  flex-flow: wrap;
  padding: 1rem 0;
  border-bottom: 1px solid #dedede;
  margin: 0;
}
.product-detail__meta-list-item:last-of-type {
  border-bottom: none;
}
.product-detail__meta-list-item div:first-child {
  font-variation-settings: "wght" 700;
  color: #000;
}
.product-detail__meta-list-item div:last-child {
  text-align: right;
  color: #000;
}
.product-detail__meta-list-item div:last-child.meta--success {
  color: #058802;
  font-variation-settings: "wght" 700;
  align-self: center;
}
@media (max-width: 575.98px) {
  .product-detail__meta-list-item {
    flex-flow: column;
  }
  .product-detail__meta-list-item div:last-child {
    text-align: left;
  }
  .product-detail__meta-list-item div:last-child.meta--success {
    align-self: start;
    line-height: 1.6;
  }
}
.product-detail__variants-list li + li {
  margin-top: 0;
}
.product-detail .tabs__main .tabs__section-inner-content .product-detail__text {
  padding-inline: 0;
  flex: 1;
  margin-inline: auto;
  max-width: min(900px, 100%);
}
.product-detail .tabs .files-list {
  list-style: disc;
  padding-inline-start: 2ch;
}

.product-detail__has-free-shipping, .product-detail__energy-class {
  position: absolute;
  min-width: auto;
}
.product-detail__has-free-shipping--icon, .product-detail__energy-class--icon {
  stroke-width: 0;
  pointer-events: none;
}
.product-detail__has-free-shipping {
  left: 2rem;
  bottom: 2rem;
}
.product-detail__has-free-shipping--icon {
  width: 44px;
  height: 37px;
  color: #333372;
}
@media (min-width: 992px) {
  .product-detail__has-free-shipping--icon {
    width: 54px;
    height: 45px;
  }
}
.product-detail__energy-class {
  right: 2rem;
  bottom: 2.9rem;
}
.product-detail__energy-class--icon {
  width: 36px;
  height: 20px;
}
@media (min-width: 992px) {
  .product-detail__energy-class--icon {
    width: 56px;
    height: 30px;
  }
}
@media (min-width: 768px) {
  .product-detail__main {
    padding-block-start: 3rem;
  }
}
.product-detail__main-images {
  display: grid;
  gap: 1.6rem;
  padding: 0;
  margin-inline: 0;
}
@media (min-width: 768px) {
  .product-detail__main-images {
    grid-template-columns: 0.2075fr 1fr;
    grid-template-rows: auto 1fr;
    align-items: start;
  }
}
@media (max-width: 767.98px) {
  .product-detail__main-images {
    grid-template-columns: 1fr;
  }
}
.product-detail__main-images:not(:has(.product-detail__thumbnail-images)) {
  grid-template-columns: 1fr;
}
.product-detail__main-images:not(:has(.product-detail__thumbnail-images)) .product-detail__main-image {
  grid-column: 1;
}
.product-detail__main-images:not(:has(.product-detail__thumbnail-images)) .product-detail__meta {
  grid-column: 1;
}
.product-detail__main-image {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  min-width: 1px;
  grid-column: 2;
  grid-row: 1;
  position: relative;
}
@media (max-width: 767.98px) {
  .product-detail__main-image {
    grid-column: 1;
  }
}
.product-detail__main-image--zoom-icon {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  stroke-width: 0;
  width: 2.1rem;
  height: 2.1rem;
  pointer-events: none;
}
.product-detail__main-image .embla {
  background-color: #fff;
}
.product-detail__main-image .embla__buttons {
  inset: 0;
  margin: auto 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  background: none;
  pointer-events: none;
}
.product-detail__main-image .embla__button {
  position: static;
  pointer-events: all;
}
.product-detail__main-image .embla__button svg {
  color: #333372;
  stroke-width: 0;
  height: 100%;
  width: 100%;
}
.product-detail__main-image .embla__slide img {
  max-height: 420px;
  max-width: 420px;
}
@media (min-width: 961px), (min-width: 414px) and (max-width: 620px) {
  .product-detail__main-image .embla__slide img {
    max-height: 500px;
    max-width: 500px;
  }
}
@media (min-width: 621px) and (max-width: 767px) {
  .product-detail__main-image .embla__slide img {
    max-height: 600px;
    max-width: 600px;
  }
}
@media (max-width: 380px) {
  .product-detail__main-image .embla__slide img {
    max-height: 320px;
    max-width: 320px;
  }
}
.product-detail__main-image:has(+ .product-detail__thumbnail-images) .embla {
  aspect-ratio: 1;
}
.product-detail__meta {
  grid-column: 2;
  grid-row: 2;
  justify-self: end;
  font-size: 1.2rem;
  font-weight: normal;
  font-variation-settings: "wght" 400;
  color: rgba(0, 0, 0, 0.7);
}
@media (max-width: 767.98px) {
  .product-detail__meta {
    grid-column: 1;
  }
}
.product-detail__thumbnail-images {
  border: none;
  margin: 0;
  grid-row: 1;
  position: relative;
  height: 100%;
  grid-column: 1;
  padding: 0;
}
@media (max-width: 767.98px) {
  .product-detail__thumbnail-images {
    display: none;
  }
}
.product-detail__thumbnail-images-list {
  overflow: auto;
  grid-template-columns: 1fr;
  grid-template-rows: initial;
  grid-auto-rows: max-content;
  gap: 1.6rem;
  position: absolute;
  top: 0;
  left: 0;
  max-height: 100%;
  width: calc(100% + 10px);
  overscroll-behavior: none;
  padding-right: 10px;
  margin-right: -5px;
}
.product-detail__thumbnail-images-list::-webkit-scrollbar {
  width: 4px;
}
.product-detail__thumbnail-images-list::-webkit-scrollbar-track {
  background: transparent;
}
.product-detail__thumbnail-images-list::-webkit-scrollbar-thumb {
  background: #333372;
  border-radius: 2px;
}
.product-detail__thumbnail-images-list::-webkit-scrollbar-thumb:hover {
  background: #333372;
}
.product-detail__thumbnail-images-list::-webkit-scrollbar-thumb {
  background: rgba(51, 51, 114, 0);
}
.product-detail__thumbnail-images-list:hover::-webkit-scrollbar-thumb, .product-detail__thumbnail-images-list:has(> *:hover)::-webkit-scrollbar-thumb {
  background: #333372;
}
.product-detail__thumbnail-images-list > * {
  max-width: 100%;
}
.product-detail__thumbnail-images-list > * a {
  height: auto;
  width: 100%;
}
.product-detail__thumbnail-images .thumb {
  border-radius: 8px;
  border-color: rgba(0, 0, 0, 0.1);
  background-color: #fff;
}
.product-detail__thumbnail-images a img {
  max-width: calc(100% - clamp(0.5rem, 2.5vw, 2.8rem));
  max-height: calc(100% - clamp(0.5rem, 2.5vw, 2.8rem));
}

.product-detail__variants {
  border-block-start: none;
}
.product-detail__variants .form-input__label {
  font-size: 1.8rem;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.product-detail__variants .variant-parameter-name {
  font-weight: normal;
  font-variation-settings: "wght" 400;
}
.product-detail__variants .trigger--select-to-triggers-image .variant-option-item-inner img {
  mix-blend-mode: multiply;
}
.product-detail__variants-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  width: calc(100% + 5px);
  margin-left: -2.5px;
  margin-right: -2.5px;
  font-size: 1.2rem;
}
@media (min-width: 992px) {
  .product-detail__variants-list {
    width: calc(100% + 16px);
    margin-left: -8px;
    margin-right: -8px;
    font-size: 1.4rem;
  }
}
.product-detail__variant-item {
  padding: 2.5px;
}
@media (min-width: 992px) {
  .product-detail__variant-item {
    padding: 8px;
  }
}
.product-detail__variant-item--fix-width {
  flex: 0 0 50%;
  max-width: 50%;
  min-width: fit-content;
}
@media (min-width: 992px) {
  .product-detail__variant-item--fix-width {
    flex: 0 0 33.333%;
    max-width: 33.333%;
  }
}
@media (min-width: 1200px) {
  .product-detail__variant-item--fix-width {
    flex: 0 0 25%;
    max-width: 25%;
  }
}
.product-detail__variant-link {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding-inline: 0.8rem;
  padding-block: 0.8rem;
  word-break: normal;
  background: #fff;
  border-radius: 10px;
  border: 1px solid #dedede;
  transition: border-color 0.2s ease-in-out;
  font-size: inherit;
  line-height: 2rem;
  color: #000;
  text-decoration: none;
  font-variant-numeric: tabular-nums;
  font-variation-settings: "wght" 400;
  text-align: center;
  width: auto;
  white-space: nowrap;
}
@media (min-width: 992px) {
  .product-detail__variant-link {
    line-height: 2.2rem;
    min-width: 70px;
    min-height: 38px;
    padding-inline: 1.5rem;
    padding-block: 0.8rem;
  }
}
.product-detail__variant-link strong {
  font-variation-settings: "wght" 700;
}
.product-detail__variant-link--active {
  background: #e8e8fd;
  box-shadow: 0 0 0 1px #232352;
  border-color: #333372;
  color: #333372;
}
.product-detail__variant-link:not([disabled], [class*="--active"]):hover, .product-detail__variant-link:not([disabled], [class*="--active"]):focus, .product-detail__variant-link:not([disabled], [class*="--active"]):active {
  border-color: #b1b1b1;
}

.product-detail__voucher-discount {
  --inverted-border-gradient: #0000 98%, #000;
  --inverted-border-radius: 14px;
  --inverted-border-radius-tl: 0px;
  --inverted-border-radius-tr: 0px;
  --inverted-border-radius-br: 14px;
  --inverted-border-radius-bl: 14px;
  mask: radial-gradient(var(--inverted-border-radius-tl) at 0 0, var(--inverted-border-gradient)) 0 0, radial-gradient(var(--inverted-border-radius-tr) at 100% 0, var(--inverted-border-gradient)) 100% 0, radial-gradient(var(--inverted-border-radius-bl) at 0 100%, var(--inverted-border-gradient)) 0 100%, radial-gradient(var(--inverted-border-radius-br) at 100% 100%, var(--inverted-border-gradient)) 100% 100%;
  mask-repeat: no-repeat;
  mask-size: 51% 51%;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  background-color: #232352;
  border-radius: 14px 14px 0 0;
  color: #fff;
  border-inline-start: none;
  margin-block-end: -2rem;
  padding: clamp(10px, 2.5vw, 20px) clamp(15px, 3.333vw, 40px);
  row-gap: 1rem;
}
@supports (background: -webkit-named-image(i)) {
  .product-detail__voucher-discount {
    mask: none;
  }
}
@supports (offset-path: shape(from top left, curve to 50% 50% with 25% 100%)) {
  .product-detail__voucher-discount {
    mask: none;
    clip-path: shape(from 0 var(--inverted-border-radius-tl), arc by var(--inverted-border-radius-tl) calc(var(--inverted-border-radius-tl) * -1) of var(--inverted-border-radius-tl), line to calc(100% - var(--inverted-border-radius-tr)) 0, arc by var(--inverted-border-radius-tr) var(--inverted-border-radius-tr) of var(--inverted-border-radius-tr), line to 100% calc(100% - var(--inverted-border-radius-br)), arc by calc(var(--inverted-border-radius-br) * -1) var(--inverted-border-radius-br) of var(--inverted-border-radius-br), line to var(--inverted-border-radius-bl) 100%, arc by calc(var(--inverted-border-radius-bl) * -1) calc(var(--inverted-border-radius-bl) * -1) of var(--inverted-border-radius-bl), line to 0 var(--inverted-border-radius-tl));
  }
}
.product-detail__voucher-discount:not(.specificity-fix) {
  font-size: 1.4rem;
  font-variation-settings: "wght" 600;
}
.product-detail__voucher-discount-name {
  display: inline-flex;
  border: 2px dashed;
  border-radius: 10px;
  line-height: 1;
  padding: 5px 9px;
}
.product-detail__voucher-discount-text {
  margin-inline-end: 1rem;
}
.product-detail__voucher-discount-price {
  margin-inline-end: 0.5ch;
}
.product-detail__voucher-discount-button {
  font-size: 1.2rem;
  line-height: 1;
  background-color: #333372;
  color: #fff;
  padding: 1.2rem 2rem;
  border-radius: 1rem;
  height: auto;
  gap: 0.9rem;
  width: 100%;
  white-space: nowrap;
}
.product-detail__voucher-discount-button:not([disabled]):hover {
  background-color: #fff;
  color: #333372;
}
.product-detail__voucher-discount-button svg {
  width: 1.4rem;
  height: 1.6rem;
}
.product-detail__voucher-discount:where(:not([style*=none])) + .product-detail__price-block {
  --inverted-border-gradient: #0000 98%, #000;
  --inverted-border-radius: 14px;
  --inverted-border-radius-tl: 14px;
  --inverted-border-radius-tr: 14px;
  --inverted-border-radius-br: 0px;
  --inverted-border-radius-bl: 0px;
  mask: radial-gradient(var(--inverted-border-radius-tl) at 0 0, var(--inverted-border-gradient)) 0 0, radial-gradient(var(--inverted-border-radius-tr) at 100% 0, var(--inverted-border-gradient)) 100% 0, radial-gradient(var(--inverted-border-radius-bl) at 0 100%, var(--inverted-border-gradient)) 0 100%, radial-gradient(var(--inverted-border-radius-br) at 100% 100%, var(--inverted-border-gradient)) 100% 100%;
  mask-repeat: no-repeat;
  mask-size: 51% 51%;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
@supports (background: -webkit-named-image(i)) {
  .product-detail__voucher-discount:where(:not([style*=none])) + .product-detail__price-block {
    mask: none;
  }
}
@supports (offset-path: shape(from top left, curve to 50% 50% with 25% 100%)) {
  .product-detail__voucher-discount:where(:not([style*=none])) + .product-detail__price-block {
    mask: none;
    clip-path: shape(from 0 var(--inverted-border-radius-tl), arc by var(--inverted-border-radius-tl) calc(var(--inverted-border-radius-tl) * -1) of var(--inverted-border-radius-tl), line to calc(100% - var(--inverted-border-radius-tr)) 0, arc by var(--inverted-border-radius-tr) var(--inverted-border-radius-tr) of var(--inverted-border-radius-tr), line to 100% calc(100% - var(--inverted-border-radius-br)), arc by calc(var(--inverted-border-radius-br) * -1) var(--inverted-border-radius-br) of var(--inverted-border-radius-br), line to var(--inverted-border-radius-bl) 100%, arc by calc(var(--inverted-border-radius-bl) * -1) calc(var(--inverted-border-radius-bl) * -1) of var(--inverted-border-radius-bl), line to 0 var(--inverted-border-radius-tl));
  }
}
.product-detail__voucher-discount:where(:not([style*=none])) + .product-detail__time-limited-offer {
  --inverted-border-gradient: #0000 98%, #000;
  --inverted-border-radius: 14px;
  --inverted-border-radius-tl: 14px;
  --inverted-border-radius-tr: 14px;
  --inverted-border-radius-br: 14px;
  --inverted-border-radius-bl: 14px;
  mask: radial-gradient(var(--inverted-border-radius-tl) at 0 0, var(--inverted-border-gradient)) 0 0, radial-gradient(var(--inverted-border-radius-tr) at 100% 0, var(--inverted-border-gradient)) 100% 0, radial-gradient(var(--inverted-border-radius-bl) at 0 100%, var(--inverted-border-gradient)) 0 100%, radial-gradient(var(--inverted-border-radius-br) at 100% 100%, var(--inverted-border-gradient)) 100% 100%;
  mask-repeat: no-repeat;
  mask-size: 51% 51%;
  border-block-start: 1px dashed rgba(255, 255, 255, 0.4);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
@supports (background: -webkit-named-image(i)) {
  .product-detail__voucher-discount:where(:not([style*=none])) + .product-detail__time-limited-offer {
    mask: none;
  }
}
@supports (offset-path: shape(from top left, curve to 50% 50% with 25% 100%)) {
  .product-detail__voucher-discount:where(:not([style*=none])) + .product-detail__time-limited-offer {
    mask: none;
    clip-path: shape(from 0 var(--inverted-border-radius-tl), arc by var(--inverted-border-radius-tl) calc(var(--inverted-border-radius-tl) * -1) of var(--inverted-border-radius-tl), line to calc(100% - var(--inverted-border-radius-tr)) 0, arc by var(--inverted-border-radius-tr) var(--inverted-border-radius-tr) of var(--inverted-border-radius-tr), line to 100% calc(100% - var(--inverted-border-radius-br)), arc by calc(var(--inverted-border-radius-br) * -1) var(--inverted-border-radius-br) of var(--inverted-border-radius-br), line to var(--inverted-border-radius-bl) 100%, arc by calc(var(--inverted-border-radius-bl) * -1) calc(var(--inverted-border-radius-bl) * -1) of var(--inverted-border-radius-bl), line to 0 var(--inverted-border-radius-tl));
  }
}
@media (min-width: 992px) {
  .product-detail__voucher-discount:not(.specificity-fix) {
    font-size: 2.2rem;
    font-variation-settings: "wght" 700;
  }
}
@media (min-width: 1200px) {
  .product-detail__voucher-discount {
    flex-flow: row nowrap;
  }
  .product-detail__voucher-discount:not(.specificity-fix) {
    font-size: 2.2rem;
  }
  .product-detail__voucher-discount-button {
    margin-inline-start: auto;
    width: auto;
    font-size: 1.6rem;
  }
}

.product-detail__action {
  margin-block-start: 0;
  padding-block-start: 1rem;
}

.product-detail {
  --product-detail-box-overflow: 20px;
}
@media (min-width: 992px) {
  .product-detail {
    --product-detail-box-overflow: 30px;
  }
}
.product-detail__price-block {
  background-color: #e8e8fd;
  border-radius: 8px;
  padding: clamp(10px, 3.333vw, 40px);
  padding-block-end: var(--product-detail-box-overflow);
  border: 1px solid #333372;
}
.product-detail__price-info-blocks {
  grid-template-columns: 1fr 1fr;
  justify-items: center;
}
.product-detail__price-info-blocks:has(.product-detail__actions--home-credit) {
  padding-block-end: 3.5rem;
}
@media (min-width: 1366px) {
  .product-detail__price-info-blocks {
    grid-template-columns: auto auto 1fr minmax(auto, 70px) minmax(max-content, 250px);
  }
}
.product-detail__price-info-being-sold-old-price {
  color: #000;
  grid-row: 2;
  display: flex;
  align-items: center;
  gap: 0 1rem;
  grid-column: 1;
  justify-self: end;
  flex-flow: row-reverse wrap-reverse;
  margin-block-end: 1.5rem;
}
@media (min-width: 1366px) {
  .product-detail__price-info-being-sold-old-price {
    grid-column: 2/span 3;
    flex-direction: row;
    justify-self: start;
    margin-block-end: 0.4rem;
    padding: 0;
  }
}
.product-detail__price-info-being-sold-old-price .product-detail__price-info-saving-percent {
  border-radius: 2rem;
  background-color: #232352;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  padding: 0.5rem 1rem;
}
@media (min-width: 992px) {
  .product-detail__price-info-being-sold-old-price .product-detail__price-info-saving-percent {
    font-size: 1.6rem;
    padding: 0.6rem 1rem;
  }
}
.product-detail__price-info-being-sold-old-price .product-detail__price-info-block-content {
  opacity: 0.7;
  font-weight: normal;
  font-variation-settings: "wght" 600;
  font-size: 1.4rem;
}
@media (min-width: 992px) {
  .product-detail__price-info-being-sold-old-price .product-detail__price-info-block-content {
    font-size: 1.6rem;
  }
}
.product-detail__price {
  grid-row: 4;
  grid-column: 1/span 2;
  align-self: start;
  line-height: 1.3;
}
.product-detail__price strong {
  font-weight: normal;
  font-variation-settings: "wght" 800;
}
@media (max-width: 1365.98px) {
  .product-detail__price strong {
    line-height: 0.8;
  }
}
@media (min-width: 1366px) {
  .product-detail__price {
    grid-row: 3;
    grid-column: 2;
  }
}
.product-detail__price [id=priceSellingVat] {
  color: #000;
  margin-block-start: 0.5rem;
  font-size: 1.2rem;
}
.product-detail__price [id=priceExclVat] {
  color: #000;
  font-size: 3rem;
}
.product-detail__price-note-popover {
  grid-row: 1;
  grid-column: 2;
  place-self: start end;
  margin: 0;
}
.product-detail__price-note-popover .popover__trigger {
  width: 1.6rem;
  height: 1.6rem;
}
.product-detail__price-note-popover .popover__trigger svg {
  width: 100%;
  height: 100%;
}
@media (min-width: 1366px) {
  .product-detail__price-note-popover {
    grid-row: 3;
    grid-column: 1;
    place-self: center start;
    padding-right: 0.4rem;
  }
  .product-detail__price-note-popover .popover__trigger {
    width: 2.4rem;
    height: 2.4rem;
  }
}
.product-detail__delivery-date {
  grid-column: 1/span 2;
}
.product-detail__price-info-being-sold-percentage-discount {
  grid-row: 2;
  grid-column: 2;
  place-self: center start;
  display: flex;
  gap: 0 0.3em;
  max-width: max-content;
  border-radius: 2rem;
  background-color: rgba(5, 136, 2, 0.1);
  color: #058802;
  font-size: 1.2rem;
  font-weight: normal;
  font-variation-settings: "wght" 400;
  padding: 0.5rem 1.5rem;
  margin-block-end: 1.5rem;
}
@media (min-width: 992px) {
  .product-detail__price-info-being-sold-percentage-discount {
    font-size: 1.6rem;
    padding: 0.6rem 2rem;
  }
}
@media (min-width: 1366px) {
  .product-detail__price-info-being-sold-percentage-discount {
    grid-column: 0;
    grid-row: 1;
    align-self: start;
    margin-block-end: 0.5rem;
  }
}
.product-detail__price-info-being-sold-percentage-discount .product-detail__price-info-block-heading {
  font-size: inherit;
  font-weight: normal;
  font-variation-settings: "wght" 400;
  color: inherit;
  line-height: inherit;
}
.product-detail__price-info-being-sold-percentage-discount .product-detail__price-info-block-content {
  background-color: transparent;
  color: inherit;
  padding: 0;
}
.product-detail__availability {
  grid-row: 1;
  grid-column: 1/span 2;
  padding-top: 0;
  line-height: 1.2;
}
@media (min-width: 1366px) {
  .product-detail__availability {
    place-self: start start;
    grid-column: 1/span 5;
  }
}
.product-detail__availability .product-availability:where(:not(:last-child)) {
  vertical-align: middle;
}
.product-detail__availability .stock--available {
  font-size: 1.4rem;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
@media (min-width: 992px) {
  .product-detail__availability .stock--available-extra {
    font-size: 1.6rem;
  }
}
.product-detail__submit {
  grid-column: 1/span 2;
  grid-row: 6;
  padding-block-start: 2rem;
  justify-self: stretch;
}
.product-detail__submit:has(.product-detail__actions--home-credit) {
  position: relative;
}
@media (min-width: 1366px) {
  .product-detail__submit {
    grid-column: 5;
    grid-row: 2/span 3;
    padding-block-start: 0;
  }
}
.product-detail__submit .submit {
  gap: 0 1.8rem;
  height: 46px;
}
@media (min-width: 768px) {
  .product-detail__submit .submit {
    height: 56px;
  }
}
.product-detail__submit .btn {
  font-size: 1.6rem;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.product-detail__submit .btn__icon {
  margin-inline: -2rem 0;
  stroke-width: 0;
  height: 2.6rem;
  width: 2.6rem;
}
.product-detail__submit .btn .button-text {
  line-height: 1;
}
@media (min-width: 992px) {
  .product-detail__submit .btn {
    font-size: 1.8rem;
  }
}
.product-detail__submit .product-detail__actions-icon {
  width: 1.5rem;
}
.product-detail__actions {
  background-color: #ebebf1;
  border-radius: 8px;
  gap: 1rem;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.product-detail__actions-link {
  color: currentcolor;
  text-decoration: none;
  width: 100%;
  justify-content: center;
}
.product-detail__actions-link:where(:not(.product-detail__actions-link--plain)) {
  transition: background-color 0.15s linear;
  padding: 1rem 2rem;
  background-color: #fff;
  border-radius: 2rem;
  text-align: left;
  font-size: 1.2rem;
  font-weight: normal;
  font-variation-settings: "wght" 400;
  line-height: 1;
}
.product-detail__actions-link:link, .product-detail__actions-link:visited, .product-detail__actions-link:hover, .product-detail__actions-link:focus, .product-detail__actions-link:active {
  color: currentcolor;
}
.product-detail__actions-link:hover, .product-detail__actions-link:focus, .product-detail__actions-link:active {
  text-decoration: underline;
}
.product-detail__actions-link:hover:where(:not(.product-detail__actions-link--plain)), .product-detail__actions-link:focus:where(:not(.product-detail__actions-link--plain)), .product-detail__actions-link:active:where(:not(.product-detail__actions-link--plain)) {
  background-color: #333372;
  color: #fff;
  text-decoration: none;
}
@media (max-width: 991.98px) {
  .product-detail__actions-link:where(:not(.product-detail__actions-link--plain)) {
    height: 3.6rem !important;
  }
}
@media (min-width: 992px) {
  .product-detail__actions-link {
    width: auto;
  }
  .product-detail__actions-link:where(:not(.product-detail__actions-link--plain)) {
    height: 4.2rem !important;
    font-size: 1.6rem;
  }
}
.product-detail__actions-link--plain .product-detail__actions-text {
  font-variation-settings: "wght" 700;
  font-size: clamp(1.6rem, 0.56vi + 1.37rem, 1.8rem);
  line-height: 1.2;
}
.product-detail__actions-link:where(.product-detail__actions--home-credit):has(span) {
  position: absolute;
  top: calc(100% + 1rem);
  left: 0;
  right: 0;
  margin-inline: auto;
}
@media (min-width: 992px) {
  .product-detail__actions {
    display: flex;
    flex-wrap: wrap;
  }
}
.product-detail__action {
  padding-block-start: 0;
}
.product-detail__form ~ [class^=product-detail__] {
  border-radius: 0 0 8px 8px;
  margin-block-start: calc(-2rem - var(--product-detail-box-overflow));
  padding-block: var(--product-detail-box-overflow);
  padding-inline: clamp(10px, 3.333vw, 40px);
  background-color: #ebebf1;
}
.product-detail__quantity {
  grid-column: 1/span 2;
  grid-row: 5;
  padding-top: 1.25rem;
}
@media (min-width: 1366px) {
  .product-detail__quantity {
    grid-row: 2/span 3;
    grid-column: 4;
    padding-right: 5rem;
    padding-top: 0;
  }
}
.product-detail__quantity input {
  max-width: 116px;
  border-radius: 0.5rem;
}

.product-detail__delivery-options {
  background-color: #ebebf1;
  border-radius: 8px;
}
.product-detail__delivery-options [class*=delivery-date__] {
  font-variation-settings: "wght" 300;
  font-size: normal;
  color: #000;
}
.product-detail__delivery {
  container-name: "product-detail__delivery";
  container-type: inline-size;
}
.product-detail__delivery-option {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-wrap: balance;
  gap: 0.5rem;
}
.product-detail__delivery-option p {
  display: flex;
  gap: 15px;
  font-size: 1.2rem;
  align-items: center;
  font-weight: normal;
}
@container (width > 390px) {
  .product-detail__delivery-option p {
    font-size: 1.5rem;
    gap: 20px;
  }
}
@container (width > 430px) {
  .product-detail__delivery-option p {
    font-size: 1.8rem;
  }
}
.product-detail__delivery-option:not(:last-child) {
  margin-bottom: 1rem;
  padding-bottom: 1rem;
  border: 0 dashed color-mix(in srgb, #008dd2 30%, transparent);
  border-bottom-width: 1px;
}
.product-detail__delivery-text strong {
  display: block;
  font-variation-settings: "wght" 500;
}
@container (width > 560px) {
  .product-detail__delivery-text strong {
    display: initial;
  }
  .product-detail__delivery-text strong::after {
    content: " –";
  }
}
.product-detail__delivery-icon {
  height: 2.5rem;
  width: 2.2rem;
  stroke-width: 0;
}
.product-detail__delivery-link {
  background-color: transparent;
  color: #333372;
  font-size: 1.3rem;
  height: max-content;
  padding: 6px 0;
}
.product-detail__delivery-link:not([disabled]):hover {
  background-color: #333372;
}
@container (width > 390px) {
  .product-detail__delivery-link {
    font-size: 1.4rem;
    text-wrap: nowrap;
  }
}
@container (width < 535px) {
  .product-detail__delivery-link {
    background-color: transparent !important;
    text-align: right;
  }
  @media (hover: hover) {
    .product-detail__delivery-link:hover {
      color: #232352 !important;
    }
  }
}
@container (width >= 535px) {
  .product-detail__delivery-link {
    font-size: 1.4rem;
    padding: 6px 31px;
    color: #333372;
    background-color: #fff;
  }
}

.product-services .form-input__label {
  font-size: 1.8rem;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.product-services__section {
  padding-block-start: 8px;
}
@media (min-width: 1366px) {
  .product-services__section {
    display: grid;
    grid-template-rows: max-content 0fr;
    grid-template-columns: repeat(auto-fit, minmax(0, auto));
    transition: grid-template-rows 0.35s 0s ease-in;
  }
  .product-services__section:has(.product-services__group.active) {
    grid-template-rows: max-content 1fr;
    transition-delay: 0s;
  }
}
@media (min-width: 1366px) {
  .product-services__section:has(.product-services__group.active) .product-services__group:not(.active) .product-services__group-list {
    transition-delay: 0.2s, 0s, 0.05s, 0s;
  }
}
.product-services__item {
  background-color: #fff;
  color: #262626;
  border-radius: 8px;
  border: 1px solid #dedede;
  cursor: pointer;
  position: relative;
  padding: 14px 30px 14px 20px;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  font-size: 1.4rem;
  font-weight: normal;
  font-variation-settings: "wght" 400;
}
.product-services__item::after {
  content: "";
  display: block;
  border-radius: inherit;
  position: absolute;
  inset: -1px;
  border: 2px solid #232352;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s ease-in-out;
}
.product-services__item [type=checkbox],
.product-services__item [type=radio] {
  appearance: none;
  position: absolute;
  inset: 0 10px 0 auto;
  margin-block: auto;
  border-radius: 100%;
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  background-color: #f5f5f5;
  border: 2px solid rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: all 0.1s ease-in-out;
}
.product-services__item:has(:checked)::after, .product-services__item[class*=selected]::after {
  opacity: 1;
}
.product-services__item:has(:checked) [type=checkbox]:not(.fix-specificity),
.product-services__item:has(:checked) [type=radio]:not(.fix-specificity), .product-services__item[class*=selected] [type=checkbox]:not(.fix-specificity),
.product-services__item[class*=selected] [type=radio]:not(.fix-specificity) {
  border-color: #232352;
  background-color: #232352;
}
.product-services__item:hover:not(:has([disabled])), .product-services__item:focus-within:not(:has([disabled])) {
  border-color: #b1b1b1;
}
.product-services__item:hover:not(:has([disabled])) [type=checkbox]:not(:checked),
.product-services__item:hover:not(:has([disabled])) [type=radio]:not(:checked), .product-services__item:focus-within:not(:has([disabled])) [type=checkbox]:not(:checked),
.product-services__item:focus-within:not(:has([disabled])) [type=radio]:not(:checked) {
  border-color: rgba(0, 0, 0, 0.2);
}
.product-services__item:has([disabled]):not(.fix-specificity) {
  background-color: #fff;
  opacity: 0.7;
}
.product-services__item:has([disabled]):not(.fix-specificity)::after {
  opacity: 0;
}
.product-services__item span, .product-services__item--alt span {
  overflow-wrap: normal;
  font-weight: normal;
  font-variation-settings: "wght" 700;
}
.product-services__item > span {
  display: block;
  color: #000;
  font-weight: normal;
}
.product-services__item.selected, .product-services__item:has(:checked), .product-services__item--alt.selected, .product-services__item--alt:has(:checked) {
  color: #232352;
}
.product-services__item.selected > span, .product-services__item:has(:checked) > span, .product-services__item--alt.selected > span, .product-services__item--alt:has(:checked) > span {
  color: #232352;
}
.product-services__group {
  margin-bottom: 8px;
}
@media (min-width: 1366px) {
  .product-services__group {
    display: contents;
    margin-bottom: 0;
  }
}
.product-services__group:first-child .product-services__group-trigger-title {
  margin-left: 0;
}
.product-services__group:last-child {
  margin-bottom: 0;
}
.product-services__group:last-child .product-services__group-trigger-title {
  margin-right: 0;
}
.product-services__group-trigger-title {
  position: relative;
  grid-row: 1;
  background: #f3f3f3;
  border-radius: 8px;
  font-size: 1.4rem;
  line-height: 2.2rem;
  font-weight: normal;
  font-variation-settings: "wght" 700;
  padding: 8px 45px 8px 14px;
  display: flex;
  align-items: center;
  margin: 0;
  word-break: normal;
  text-wrap: balance;
  transition: outline 0.05s ease;
}
@media (min-width: 1366px) {
  .product-services__group-trigger-title {
    max-width: 191px;
    margin: 0 8px 10px;
    padding-left: 24px;
    padding-right: 50px;
  }
}
.product-services__group-trigger-title::after {
  content: "";
  border: solid currentcolor;
  border-width: 0 1.5px 1.5px 0;
  display: inline-block;
  padding: 3.5px;
  transform: rotate(45deg);
  position: absolute;
  right: 26px;
  top: 50%;
  margin-top: -5px;
}
.product-services__group-trigger-title::before {
  content: "";
  width: 100%;
  height: 25px;
  background: #ebebf1;
  position: absolute;
  z-index: -1;
  bottom: -20px;
  left: 0;
  right: 0;
  opacity: 0;
  transform: translateY(-100%);
  transition: transform 0.35s ease, opacity 0.35s ease;
}
.product-services__group-list {
  grid-row: 2;
  background: #ebebf1;
  border-radius: 8px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(200px, 100%), 1fr));
  grid-column: 1/-1;
  gap: 0;
  max-height: 0;
  padding: 0 6px;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-10px);
  transition: max-height 0s 0s ease, padding 0.35s 0s ease, opacity 0.35s 0s ease, transform 0.35s ease;
}
@media (min-width: 1366px) {
  .product-services__group-list {
    padding: 0 16px;
    transition-delay: 0.35s, 0s, 0.05s, 0s;
  }
}
.product-services__group-list .product-services__item {
  margin: 8px;
  height: calc(100% - 16px);
  width: calc(100% - 16px);
}
.product-services__group.active .product-services__section {
  grid-template-rows: max-content 1fr;
}
.product-services__group.active .product-services__group-list {
  max-height: fit-content;
  padding: 6px;
  transition-delay: 0s, 0s, 0s, 0s;
  opacity: 1;
  transform: translateY(0);
}
@media (min-width: 1366px) {
  .product-services__group.active .product-services__group-list {
    padding: 16px;
  }
}
.product-services__group.active .product-services__group-trigger-title {
  color: #232352;
  background: #ebebf1;
}
.product-services__group.active .product-services__group-trigger-title::after {
  transform: rotate(-135deg);
}
.product-services__group.active .product-services__group-trigger-title::before {
  opacity: 1;
  transform: translateY(0);
}
.product-services__group.selected:not(.active) .product-services__group-trigger-title {
  color: #232352;
  background: #ebebf1;
  outline: 2px solid #232352;
}
@media (max-width: 1365.98px) {
  .product-services__group.selected:not(.active):not(:last-child) {
    margin-bottom: 10px;
  }
}

.product-detail__monthly-lowest-price .btn {
  background-color: #fff;
  color: #333372;
  border: 1px solid #333372;
  font-size: 1.3rem;
  line-height: 1.2;
  padding: 0.516em 0.77em;
  height: max-content;
  border-radius: 0.615em;
  width: 100%;
  font-weight: normal;
  font-variation-settings: "wght" 600;
  justify-content: space-between;
}
.product-detail__monthly-lowest-price .btn:not([disabled]):hover {
  background-color: #333372;
}
.product-detail__monthly-lowest-price .btn::after {
  content: "";
  border: solid currentcolor;
  border-width: 0 1.5px 1.5px 0;
  display: inline-block;
  vertical-align: middle;
  padding: 3.5px;
  transform: rotate(-45deg);
  right: 26px;
  top: 50%;
}
@media (min-width: 992px) {
  .product-detail__monthly-lowest-price .btn {
    font-size: 1.6rem;
    padding: 1.182em 1.249em;
  }
}

.product-detail__flags + .product-detail__products-conditions {
  margin-block-start: 1rem;
}
.product-detail__products-conditions {
  border: 2px solid #eab000;
  border-radius: 8px;
  background-color: rgba(234, 176, 0, 0.05);
  padding: 10px 15px 15px;
  text-wrap: auto;
}
@media (min-width: 992px) {
  .product-detail__products-conditions {
    padding: 20px 30px 30px;
  }
}
.product-detail__products-conditions-title {
  font-size: 1.6rem;
  color: #eab000;
  display: block;
}
@media (min-width: 992px) {
  .product-detail__products-conditions-title {
    font-size: 2.2rem;
  }
}
.product-detail__products-conditions:is(p) {
  font-size: 1.2rem;
}
@media (min-width: 992px) {
  .product-detail__products-conditions:is(p) {
    font-size: 1.4rem;
  }
}

.product-gifts {
  display: flex;
  flex-flow: column nowrap;
  align-items: start;
  gap: 1.6rem;
}
@media (max-width: 767.98px) {
  .product-gifts {
    order: 1;
    gap: 1rem;
  }
}
@media (max-width: 991.98px) {
  .product-gifts {
    width: 100%;
  }
}

.product-gift {
  display: inline-grid;
  grid-template-columns: 2.5rem auto auto;
  gap: 0 1.2rem;
  background-color: #e6fbf3;
  padding: 10px 17px;
  border-radius: 8px;
  text-wrap: balance;
  border: 1px solid rgba(0, 174, 163, 0.2);
}
@media (max-width: 991.98px) {
  .product-gift {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .product-gift {
    padding: 10px 30px;
    gap: 0 2rem;
    grid-template-columns: 3.5rem auto auto;
    width: 100%;
  }
}
.product-gift__icon {
  grid-row: 1/span 2;
  grid-column: 1;
  align-self: center;
  width: 2.5rem;
  height: 2.5rem;
  margin-top: -10%;
}
@media (min-width: 992px) {
  .product-gift__icon {
    width: 3.5rem;
    height: 3.5rem;
  }
}
.product-gift__title {
  font-size: 1.2rem;
  line-height: 1.6;
  font-weight: normal;
  font-variation-settings: "wght" 600;
  color: #00aea3;
  margin: 0;
  grid-row: 1;
  grid-column: 2;
  align-self: end;
}
@media (min-width: 992px) {
  .product-gift__title {
    font-size: 1.6rem;
  }
}
.product-gift__desc {
  font-size: 1.2rem;
  line-height: 1.6;
  grid-row: 2;
  grid-column: 2;
  align-self: start;
}
@media (min-width: 992px) {
  .product-gift__desc {
    font-size: 1.6rem;
  }
}
.product-gift__image {
  width: 4.7rem;
  height: 4.7rem;
  background-color: #fff;
  border: 1px solid rgba(0, 174, 163, 0.2);
  border-radius: 50%;
  overflow: hidden;
  grid-row: 1/span 2;
  grid-column: 3;
  justify-self: end;
}
@media (min-width: 992px) {
  .product-gift__image {
    width: 8rem;
    height: 8rem;
  }
}
.product-gift__image picture {
  display: contents;
}
.product-gift__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 5%;
}

:root {
  --product-detail-price-size: 2.8rem;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./data/www/templates/asgard/eshop.setos.cz/sass/embla-paging.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Retrieves the next smaller breakpoint from the given breakpoint.
 *
 * @param {String} $breakpoint - The breakpoint for which to find the next smaller breakpoint.
 * @return {String|null} - The next smaller breakpoint, or null if no smaller breakpoint is available.
 */
/**
 * Retrieves the next larger breakpoint from the $grid-breakpoints map.
 *
 * @function get-bigger-breakpoint
 * @param {String} $breakpoint - The current breakpoint to find the next larger one for.
 * @return {String | null} - The next larger breakpoint or null if the current breakpoint is the largest or not found.
 */
/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
/**
 * Special version of the card-box() layout for the B2B shop
 */
/**
 * card-box list layout for the B2B shop
 */
.embla__paging {
  display: flex;
  gap: 0.5rem;
}
.embla__paging-value {
  min-width: 2ch;
  text-align: end;
}
.embla__paging-total-pages {
  text-align: start;
}
@media (max-width: 991px) {
  .embla__paging-total-pages {
    padding-inline-end: 0.25em;
  }
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[1].use[3]!./data/www/templates/asgard/eshop.setos.cz/sass/image-modal.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Retrieves the next smaller breakpoint from the given breakpoint.
 *
 * @param {String} $breakpoint - The breakpoint for which to find the next smaller breakpoint.
 * @return {String|null} - The next smaller breakpoint, or null if no smaller breakpoint is available.
 */
/**
 * Retrieves the next larger breakpoint from the $grid-breakpoints map.
 *
 * @function get-bigger-breakpoint
 * @param {String} $breakpoint - The current breakpoint to find the next larger one for.
 * @return {String | null} - The next larger breakpoint or null if the current breakpoint is the largest or not found.
 */
/**
 * Reset iSpace custom form input styles to be able to design special inputs more easily
 */
/**
 * Styles to hide the scrollbar but still allow scrolling
 */
/**
 * Special version of the card-box() layout for the B2B shop
 */
/**
 * card-box list layout for the B2B shop
 */
.modal__image .modal-dialog {
  height: 100dvh;
  width: 100dvw;
  max-height: 100dvh;
  max-width: 100dvw;
}
@media (min-width: 768px) {
  .modal__image .modal-dialog {
    height: 98dvh;
    max-height: 98dvh;
    width: 99dvw;
    max-width: 99dvw;
  }
}
.modal__image .modal-body-image {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: min(2dvh, 2rem) min(3dvw, 2rem);
  height: 100%;
  width: 100%;
}
.modal__image .modal-body-image .embla, .modal__image .modal-body-image .embla__viewport, .modal__image .modal-body-image .embla__container, .modal__image .modal-body-image .embla__slide {
  height: 100%;
}
.modal__image .modal-body-image .embla, .modal__image .modal-body-image .embla__viewport, .modal__image .modal-body-image .embla__slide {
  width: 100%;
}
.modal__image .modal-body-image .embla__button {
  min-width: 40px;
}
.modal__image .modal-body-image .embla__button--prev {
  right: auto;
  left: -10px;
}
.modal__image .modal-body-image .embla__button--next {
  left: auto;
  right: -10px;
}
.modal__image .modal-body-image .embla__slide > *:not(.embla__slide--spinner) {
  opacity: 1;
  transition: 0.3s opacity ease-in-out;
}
.modal__image .modal-body-image .embla__slide a,
.modal__image .modal-body-image .embla__slide picture {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.modal__image .modal-body-image .embla__slide img {
  display: block;
  max-height: 100%;
}
.modal__image .modal-body-image .embla__slide--spinner {
  height: 30px;
  width: 30px;
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  opacity: 0;
  pointer-events: none;
}
.modal__image .modal-body-image .embla__slide:where(:not(.embla__lazy-load--has-loaded)) > *:not(.embla__slide--spinner) {
  opacity: 0;
}
.modal__image .modal-body-image .embla__slide:where(:not(.embla__lazy-load--has-loaded)) .embla__slide--spinner {
  opacity: 0.5;
  animation: spinner 0.75s infinite linear;
}

.modal .product-detail__image-carousel .embla__buttons {
  inset: auto clamp(1rem, 2vw, 4rem) clamp(1rem, 2vw, 4rem);
  justify-content: center;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzLmVzaG9wLnNldG9zLmN6LmFzZ2FyZC5wcm9kdWN0LWRldGFpbC4zYjgzOGFmYTg2MzY0YTcxMGNjMy5jc3MiLCJtYXBwaW5ncyI6Ijs7O0FBQUEsZ0JBQWdCO0FDQ2hCO0VDd0ZRO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGdEZSOztBQ0pBO0VDMkVRO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FGbkVSOztBR2hCQTs7Ozs7RUFBQTtBQWlCQTs7Ozs7O0VBQUE7QUM4UEE7O0VBQUE7QUErSEE7O0VBQUE7QUFlQTs7RUFBQTtBQW1HQTs7RUFBQTtBQ3BjSTtFQ3pESTtJQUNJO0VOMENWO0FBQ0Y7QU12Q0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBTnlDUjtBS09JO0VDcERBO0lBT1E7SUFDQTtFTjBDVjtBQUNGO0FNeENRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QU4wQ1o7QU14Q1k7RUFDSTtFQUNBO0FOMENoQjtBTXRDUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBTndDWjtBTXJDWTtFQUNJO0FOdUNoQjtBTWxDZ0I7RUFDSTtFQUNBO0FOb0NwQjtBTWpDb0I7RUFDSTtBTm1DeEI7QUszQkk7RUNKb0I7SUFWUjtNQVdZO0lObUN4QjtFQUNGO0FBQ0Y7QU03Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBTitCUjtBS3hDSTtFQ1lRO0lBUFI7TUFRWTtJTmdDWjtFQUNGO0FBQ0Y7QU05QlE7RUFDSTtFQUNBO0FOZ0NaO0FNdkJZO0VBQ0k7QU55QmhCO0FNaEJJO0VBQ0k7RUFDQTtBTmtCUjtBSzFESTtFQzJDUTtJQUxSO01BTVk7SU5tQlo7RUFDRjtBQUNGO0FNaEJJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QU5rQlI7QU1mUTtFQUNJO0FOaUJaO0FNWkk7RUFDSTtBTmNSO0FNWEk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FOYVI7QUt2Rkk7RUM2RVE7SUFYUjtNQVlZO01BQ0E7SU5jWjtFQUNGO0FBQ0Y7QU1aUTtFQUNJO0VBQ0E7QU5jWjtBTVJZO0VBQ0k7QU5VaEI7QU1MSTtFQUVJO0FOTVI7QU1ISTtFQUVJO0FOSVI7QU1EWTs7RUFFSTtBTkdoQjtBTUFZOztFQUVJO0VBQ0E7QU5FaEI7QU1BZ0I7O0VBQ0k7QU5HcEI7QU1BZ0I7O0VBQ0k7QU5HcEI7QU1DWTtFQUNJO0FOQ2hCO0FNQ2dCO0VBQ0k7QU5DcEI7QU1HWTtFQUNJO0FORGhCO0FNT1E7RUFDSTtBTkxaO0FNU1k7O0VBRUk7RUFDQTtBTlBoQjtBS2pJSTtFQ29JSTtJQVFRO0lBQ0E7RU5QZDtBQUNGO0FNVVE7RUFDSTtBTlJaO0FNYUk7RUFDSTtBTlhSO0FNYVE7RUFDSTtFQUNBO0FOWFo7QU1hWTtFQUNJO0VBQ0E7QU5YaEI7QU1hZ0I7RUFDSTtJQUNJO0VOWHRCO0FBQ0Y7QU1jZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBTlpwQjtBTWVnQjtFQUNJO0FOYnBCO0FNZW9CO0VBSEo7SUFJUTtJQUNBO0lBQ0E7RU5adEI7QUFDRjtBTWlCZ0I7RUFDSTtBTmZwQjtBTWtCZ0I7RUFDSTtBTmhCcEI7QU1vQlk7RUFDSSxrQkM1T0Q7QVAwTmY7QU13QmdCO0VBQ0k7QU50QnBCO0FNOEJZO0VBQ0k7QU41QmhCO0FNa0NnQjtFQUNJO0VBQ0E7QU5oQ3BCO0FNcUNnQzs7RUFFSTtBTm5DcEM7QU1zQ2dDO0VBQ0k7QU5wQ3BDO0FNNENvQjtFQUNJO0FOMUN4QjtBTWlESTtFQUNJO0FOL0NSO0FNaURRO0VBQ0ksa0JDblNHO0VEb1NIO0FOL0NaO0FNb0RRO0VBQ0k7QU5sRFo7QU1xRFE7RUFDSTtBTm5EWjtBTXdEUTtFQUNJO0VBQ0E7RUFDQTtBTnREWjtBS3RPSTtFQ3lSSTtJQU1RO0lBQ0E7RU5yRGQ7QUFDRjtBTXVEWTs7RUFFSTtBTnJEaEI7QU13RFk7OztFQUdJO0FOdERoQjtBTTREUTtFQUNJO0FOMURaOztBUW5UUTtFQUNJO0VBQ0E7QVJzVFo7QVFwVFk7RUFDSTtBUnNUaEI7QVFwVGdCO0VBQ0k7RUFDQTtBUnNUcEI7QVFuVGdCO0VBQ0k7RUFDQTtBUnFUcEI7QVFqVFk7RUFDSTtBUm1UaEI7QVFqVGdCO0VBQ0k7RUFDQTtBUm1UcEI7QVFoVGdCOztFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJrVHBCO0FRL1NnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FSaVRwQjtBUTlTZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVJnVHBCO0FRNVNnQjtFQUNJO0FSOFNwQjtBUTVTb0I7RUFDSTtBUjhTeEI7QVEzU29CO0VBQ0k7QVI2U3hCO0FRdlNRO0VBQ0k7RUFDQTtFQUNBO0FSeVNaO0FLdFRJO0VHVUk7SUFNUTtFUjBTZDtBQUNGO0FRdFNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUndTUjtBUXJTUTtFQUNJO0lBQ0k7RVJ1U2Q7QUFDRjtBUXBTUTtFQUNJO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLCtEQUNJO0FSb1NoQjtBUWpTWTtFQUNJO0VBQ0E7RUFDQTtBUm1TaEI7QVFoU1k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSa1NoQjtBUWhTZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSa1NwQjtBUWhTb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FSa1N4QjtBUS9Sb0I7RUFDSTtFQUNBO0VBQ0E7QVJpU3hCO0FRNVJZO0VBQ0k7QVI4UmhCO0FRMVJ3QjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVI0UjVCO0FRMVI0QjtFQUNJO0FSNFJoQztBUXBSUTtFQUNJO0FSc1JaO0FRblJRO0VBQ0k7QVJxUlo7O0FTN2NJO0VBQ0k7RUFDQTtBVGdkUjtBUzdjWTtFQUNJO0VBQ0E7RUFDQTtBVCtjaEI7QVM1Y1k7RUFDSTtBVDhjaEI7QVMxY2dCO0VBQ0k7RUFDQTtBVDRjcEI7QVN6Y2dCO0VBRUksc0JGK0JaO0FQMmFSO0FTeGNvQjtFQUNJLHNCRjRCaEI7QVA4YVI7QVNuY1E7RUFDSTtBVHFjWjtBU25jWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseVJDK0dBO0VEOUdBO0FUcWNoQjtBU2pjUTtFQUNJO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QVRrY1o7QVNoY1k7RUFDSTtBVGtjaEI7QVNoY2dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVGtjcEI7QVMvYmdCO0VBQ0k7RUFDQTtFQUNBO0FUaWNwQjtBUzViUTtFQUNJO0FUOGJaO0FTM2JRO0VBQ0k7RUFDQTtBVDZiWjs7QVcvZ0JJO0VBQ0k7RUFDQTtBWGtoQlI7QVd4Z0JJO0VBQ0k7RUFDQTtFQUNBO0FYMGdCUjtBV2xoQlE7RUFLSjtJQU1RLHNFQUNJO0VYMGdCZDtBQUNGO0FXbmdCUTtFQUdJO0FYbWdCWjtBVy9mSTtFQUNJO0FYaWdCUjtBV3pmSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FYMmZSO0FXeGZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QVgwZlI7QVd2Zkk7RUFDSTtFQUNBO0FYeWZSO0FXdmZRO0VBQ0k7QVh5Zlo7QVd0ZlE7RUFDSTtBWHdmWjtBV3JmUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVh1Zlo7QVduZkk7RUFDSTtFQUNBO0FYcWZSO0FXbGZJO0VBQ0k7RUFDQTtFQUNBO0FYb2ZSO0FXbGZRO0VBQ0k7QVhvZlo7QVdqZlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBWG1mWjtBVy9lSTtFQUNJO0VBQ0E7RUFDQTtBWGlmUjtBVzllWTtFQUNJO0FYZ2ZoQjtBVzNlWTtFQUNJO0FYNmVoQjtBV3plb0I7RUFDSTtBWDJleEI7QVdwZW9CO0VBQ0k7QVhzZXhCO0FXL2RZO0VBQ0k7RUFDQTtBWGllaEI7QVcvZGdCO0VBQ0k7QVhpZXBCO0FXM2RJO0VBRUk7QVg0ZFI7QVd6ZEk7RUFDSTtFQUNBO0FYMmRSO0FXemRRO0VBQ0k7QVgyZFo7QVdwZFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBWHNkWjtBV2xkSTtFQUNJO0VBQ0E7QVhvZFI7QVdsZFE7RUFDSTtFQUNBO0VBQ0E7QVhvZFo7QVc3bkJRO0VBOEtBO0lBQ0k7RVhrZFY7RVcvY007SUFDSTtFWGlkVjtFVzljTTtJQUNJO0VYZ2RWO0VXN2NNO0lBQ0k7RVgrY1Y7RVc1Y007SUFFSTtJQUNBO0lBQ0E7SUFDQTtFWDZjVjtFVzFjTTtJQUNJO0lBQ0E7RVg0Y1Y7RVd6Y007SUFDSTtJQUNBO0VYMmNWO0VXeGNNO0lBQ0k7RVgwY1Y7QUFDRjs7QVlscUJRO0VBQ0k7RUFDQTtFQUNBO0FacXFCWjtBWW5xQlk7RUFFSTtBWm9xQmhCO0FZanFCWTtFQUdJO0VBQ0E7QVppcUJoQjtBWTlwQlk7RUFDSTtFQUNBO0FaZ3FCaEI7QVl0cEJRO0VBQ0k7QVp3cEJaO0FZbnBCUTtFQUNJO0FacXBCWjs7QWEzckJBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JONEJXO0FQa3FCZjtBYTVyQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FiOHJCUjtBYTNyQkk7RUFDSTtFQUNBO0VBQ0E7QWI2ckJSO0FhM3JCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBYjZyQlo7QWEzckJZO0VBS0k7QWJ5ckJoQjtBYW5yQlE7RUFDSTtFQUNBO0VBQ0E7QWJxckJaOztBYTlxQlE7RUFDSTtBYmlyQlo7QUszcUJJO0VRSEk7SUFFUTtFYmdyQmQ7QUFDRjtBS2hyQkk7RVFHSTtJWHVCQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFRjBwQk47QUFDRjtBYWxyQlE7RUFDSTtBYm9yQlo7O0FjMXZCSTtFQUNJO0VBQ0E7QWQ2dkJSO0FjMXZCSTtFQUNJO0FkNHZCUjtBY3p2Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FkMnZCUjtBY3p2QlE7RUFDSTtBZDJ2Qlo7QWN4dkJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDB2Qlo7QWN4dkJZO0VBQ0k7QWQwdkJoQjtBY3h2QmdCO0VBQ0k7QWQwdkJwQjtBY3J2QlE7RUFDSTtFQUNBO0VBQ0EsaUJQSk87RU9LUDtFQUNBO0VBQ0E7RUFDQTtBZHV2Qlo7QWNydkJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWR1dkJoQjtBY2x2Qlk7RUFDSTtBZG92QmhCO0FjanZCWTtFQUNJO0FkbXZCaEI7QWM5dUJZO0VBQ0k7QWRndkJoQjtBYzd1Qlk7RUFDSTtBZCt1QmhCO0FjenVCSTtFQUNJO0FkMnVCUjtBY3h1Qkk7RUFDSTtBZDB1QlI7O0FLanZCSTtFU3pFQTtJQUNJO0lBQ0E7RWQ4ekJOO0VjM3pCRTtJQUNJO0VkNnpCTjtFYzF6QkU7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VkNHpCTjtFYzF6Qk07SUFDSTtFZDR6QlY7RWN6ekJNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFZDJ6QlY7RWN6ekJVO0lBQ0k7RWQyekJkO0VjenpCYztJQUNJO0VkMnpCbEI7RWN0ekJNO0lBQ0k7SUFDQTtJQUNBLGlCUEpPO0lPS1A7SUFDQTtJQUNBO0lBQ0E7RWR3ekJWO0VjdHpCVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0Vkd3pCZDtFY256QlU7SUFDSTtFZHF6QmQ7RWNsekJVO0lBQ0k7RWRvekJkO0VjL3lCVTtJQUNJO0VkaXpCZDtFYzl5QlU7SUFDSTtFZGd6QmQ7RWMxeUJFO0lBQ0k7RWQ0eUJOO0VjenlCRTtJQUNJO0VkMnlCTjtBQUNGOztBSTdtQkE7O0VBQUE7QUErSEE7O0VBQUE7QUFlQTs7RUFBQTtBQW1HQTs7RUFBQTtBV2hnQkk7RUFDSTtFQUNBO0VBQ0E7QWYyNEJSO0FLbDFCSTtFVTVEQTtJQU1RO0lBQ0E7RWY0NEJWO0FBQ0Y7QWUxNEJRO0VBQ0k7RUFDQTtBZjQ0Qlo7QUs1MUJJO0VVbERJO0lBS1E7SUFDQTtJQUNBO0VmNjRCZDtBQUNGO0FLbjJCSTtFVWxESTtJQVdRO0VmODRCZDtBQUNGO0FlejRCZ0I7RUFDSTtBZjI0QnBCO0FldDRCUTtFQUNJO0FmdzRCWjtBSzkyQkk7RVUzQkk7SUFJUTtJQUNBO0VmeTRCZDtBQUNGO0FlcjRCSTtFQUNJO0FmdTRCUjtBZXA0Qkk7RUFDSTtBZnM0QlI7QUsxM0JJO0VVYkE7SUFJUTtJQUNBO0VmdTRCVjtBQUNGO0FlcjRCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZnU0Qlo7QUt4NEJJO0VVTEk7SUFTUTtJQUNBO0VmdzRCZDtBQUNGO0FldDRCWTtFQUNJO0VBQ0E7RUFDQTtBZnc0QmhCO0FldDRCZ0I7RUFDSTtFQUNBO0FmdzRCcEI7QWVuNEJ3QjtFQUNJO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VmcTRCOUI7QUFDRjtBZTUzQlE7RUFFSTtFQUNBO0VBQ0E7QWY2M0JaO0FlMTNCUTtFQUNJO0FmNDNCWjtBZTEzQlk7RUFDSTtFQUNBO0FmNDNCaEI7QWV6M0JZO0VBQ0k7RUFDQTtFQUNBO0FmMjNCaEI7QWV0M0JJO0VYaUVBO0VBQ0E7RUFpQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSx3WkFDSTtFQUlKO0VBQ0E7RVczR0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmKzNCUjtBSXJ4Qkk7RVdsSEE7SVhtSEk7RUp3eEJOO0FBQ0Y7QUlueEJJO0VXekhBO0lYMEhJO0lBQ0E7RUpzeEJOO0FBQ0Y7QWVyNEJvQjtFQUNJO0VBQ0E7QWZ1NEJ4QjtBZXA0Qm9CO0VBQ0k7RUFDQTtBZnM0QnhCO0FlaDRCUTtFWHVDSjtFQUNBO0VBaUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsd1pBQ0k7RUFJSjtFQUNBO0VXakZRO0VBQ0E7QWZ5NEJaO0FJcnpCSTtFV3hGSTtJWHlGQTtFSnd6Qk47QUFDRjtBSW56Qkk7RVcvRkk7SVhnR0E7SUFDQTtFSnN6Qk47QUFDRjtBZWg1Qkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBZms1QlI7QWVoNUJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWZrNUJaO0FlaDVCWTtFQUNJO0VBQ0E7RUFDQTtBZms1QmhCO0FlaDVCZ0I7RUFDSTtFQUNBO0FmazVCcEI7QWU3NEJRO0VBQ0k7QWYrNEJaO0FlMzRCWTtFQUNJO0FmNjRCaEI7QWV6NEJRO0VBQ0k7RUFDQTtBZjI0Qlo7QWV6NEJZO0VBQ0k7QWYyNEJoQjtBZXg0Qlk7RUFDSTtBZjA0QmhCO0FldDRCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWZ3NEJaO0FldDRCWTtFQUNJO0FmdzRCaEI7QWVyNEJZO0VBQ0k7RUFDQTtFQUNBO0FmdTRCaEI7QWVyNEJnQjtFQUNJO0VBQ0E7QWZ1NEJwQjtBZW40Qlk7RUFDSTtBZnE0QmhCO0FlbjRCZ0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBZnE0QnBCO0FlbjRCb0I7RUFDSTtFQUNBO0VBQ0E7QWZxNEJ4QjtBZWo0QndCO0VBQ0k7RUFDQTtFQUNBO0FmbTRCNUI7QWVqNEI0QjtFQUNJO0VBQ0E7QWZtNEJoQztBZWg0QjRCO0VBQ0k7RUFDQTtBZms0QmhDO0FlOTNCd0I7RUFDSTtBZmc0QjVCO0FlMTNCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWY0M0JoQjtBZXQzQlE7RUFDSTtFQUNBO0FmdzNCWjtBZW4zQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBZnEzQlo7QUszbENJO0VVa09JO0lBT1E7SUFDQTtFZnMzQmQ7QUFDRjtBS2ptQ0k7RVVrT0k7SUFZUTtJQUNBO0VmdTNCZDtBQUNGO0FlcjNCWTtFQUNJO0FmdTNCaEI7QWVwM0JZO0VBQ0k7QWZzM0JoQjtBZWozQlk7RUFDSTtFQUNBO0FmbTNCaEI7QWVqM0JnQjtFQUNJO0VBQ0E7QWZtM0JwQjtBZS8yQlk7RUFDSTtFQUNBO0FmaTNCaEI7QWU1MkJJO0VBQ0k7QWY4MkJSO0FlNTJCUTtFQUNJO0VBQ0E7RUFDQTtBZjgyQlo7QWUzMkJRO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWY0MkJaO0FlejJCWTtFQVhKO0lBWVE7RWY0MkJkO0FBQ0Y7QWUxMkJZO0VBZko7SUFnQlE7RWY2MkJkO0FBQ0Y7QWUxMkJRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZjQyQlo7QWUxMkJZO0VBUEo7SUFRUTtJQUNBO0VmNjJCZDtBQUNGO0FlMTJCUTtFQUNJO0VBQ0E7RUFDQTtBZjQyQlo7QWUxMkJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZjQyQmhCO0FlMTJCZ0I7RUFWSjtJQVdRO0lBQ0E7RWY2MkJsQjtBQUNGO0FlMzJCZ0I7RUFDSTtBZjYyQnBCO0FlMzJCb0I7RUFDSTtBZjYyQnhCO0FleDJCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWYwMkJoQjtBZXgyQmdCO0VBVko7SUFXUTtJQUNBO0VmMjJCbEI7QUFDRjtBZXIyQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FmdTJCWjtBZXAyQlE7RUFDSTtBZnMyQlo7QWVwMkJZO0VBQ0k7QWZzMkJoQjtBZW4yQlk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWZxMkJoQjtBZW4yQmdCO0VBQ0k7QWZxMkJwQjtBZWwyQmdCO0VBQ0k7RUFDQTtBZm8yQnBCO0FlajJCZ0I7RUFDSTtFQUNBO0FmbTJCcEI7QWVqMkJvQjtFQUNJO0VBQ0E7RUFDQTtBZm0yQnhCO0FLcHVDSTtFVXVZWTtJQUNJO0VmZzJCbEI7RWU5MUJrQjtJQUNJO0VmZzJCdEI7RWU5MUJzQjtJQUNJO0lBQ0E7RWZnMkIxQjtBQUNGO0FleDFCUTtFQUNJO0FmMDFCWjtBZWoxQndCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWZtMUI1QjtBZTUwQlE7RUFDSTtFQUNBO0FmODBCWjs7QWdCcjBDSTtFQUVJO0VBQ0E7QWhCdTBDUjtBZ0JyMENRO0VBQ0k7RUFDQTtBaEJ1MENaO0FnQm4wQ0k7RUFDSTtFQUNBO0FoQnEwQ1I7QWdCbjBDUTtFQUNJO0VBQ0E7RUFDQTtBaEJxMENaO0FLNXhDSTtFVzVDSTtJQU1RO0lBQ0E7RWhCczBDZDtBQUNGO0FnQmwwQ0k7RUFDSTtFQUNBO0FoQm8wQ1I7QWdCbDBDUTtFQUNJO0VBQ0E7QWhCbzBDWjtBSzF5Q0k7RVc1Qkk7SUFLUTtJQUNBO0VoQnEwQ2Q7QUFDRjtBS2h6Q0k7RVdqQkE7SUFFUTtFaEJtMENWO0FBQ0Y7QWdCajBDUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FoQm0wQ1o7QUszekNJO0VXWkk7SUFPUTtJQUNBO0lBQ0E7RWhCbzBDZDtBQUNGO0FLcnpDSTtFV3pCSTtJQWFRO0VoQnEwQ2Q7QUFDRjtBZ0JuMENZO0VBQ0k7QWhCcTBDaEI7QWdCbDBDb0I7RUFDSTtBaEJvMEN4QjtBZ0JqMENvQjtFQUNJO0FoQm0wQ3hCO0FnQjd6Q1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCK3pDWjtBSzMwQ0k7RVdNSTtJQVNRO0VoQmcwQ2Q7QUFDRjtBZ0I5ekNZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCZzBDaEI7QWdCN3pDWTtFQUNJO0FoQit6Q2hCO0FnQjd6Q2dCO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCK3pDcEI7QWdCNXpDZ0I7RUFDSTtFQUNBO0FoQjh6Q3BCO0FnQjV6Q29CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWhCOHpDeEI7QWdCMXpDZ0I7RUFFSTtFQUNBO0FoQjJ6Q3BCO0FnQnp6Q29CO0VBTEo7SUFNUTtJQUNBO0VoQjR6Q3RCO0FBQ0Y7QWdCMXpDb0I7RUFWSjtJQVdRO0lBQ0E7RWhCNnpDdEI7QUFDRjtBZ0IzekNvQjtFQWZKO0lBZ0JRO0lBQ0E7RWhCOHpDdEI7QUFDRjtBZ0J6ekNnQjtFQUNJO0FoQjJ6Q3BCO0FnQnJ6Q0k7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEJ1ekNSO0FLajVDSTtFV21GQTtJQVVRO0VoQnd6Q1Y7QUFDRjtBZ0JyekNJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCdXpDUjtBSy81Q0k7RVdpR0E7SUFVUTtFaEJ3ekNWO0FBQ0Y7QWdCdHpDUTtFZGhMSjtFY21MUTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCdXpDWjtBRW4vQ0k7RUFJUTtBRmsvQ1o7QUU5K0NJO0VBQ0k7QUZnL0NSO0FFNytDSTtFQUNJLG1CSytMVTtFTDlMVjtBRisrQ1I7QUU1K0NJO0VBQ0ksbUJLMExVO0FQb3pDbEI7QWdCbDBDWTtFQUNJO0FoQm8wQ2hCO0FnQmowQ1k7RUFFSSxtQlRRRTtBUDB6Q2xCO0FnQi96Q1k7RUFDSTtBaEJpMENoQjtBZ0IvekNnQjtFQUNJO0VBQ0E7QWhCaTBDcEI7QWdCNXpDUTtFQUNJO0VBQ0E7RUFDQTtBaEI4ekNaO0FnQjN6Q1E7RUFDSTtFQUNBO0FoQjZ6Q1o7O0FpQi9oREk7RUFDSTtBakJraURSO0FpQi9oRFk7RUFDSTtFQUNBO0VBQ0E7QWpCaWlEaEI7QWlCN2hEUTtFQUNJO0VBQ0E7QWpCK2hEWjtBaUJ6aERvQjtFQUNJO0FqQjJoRHhCO0FpQnBoREk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakJzaERSO0FLNS9DSTtFWWpDQTtJQVVRO0lBQ0E7SUFDQTtJQUNBO0VqQnVoRFY7QUFDRjtBaUJwaERJO0VBQ0k7QWpCc2hEUjtBS3ZnREk7RVloQkE7SUFJUTtFakJ1aERWO0FBQ0Y7QWlCcmhEUTtFQUNJO0VBQ0E7RUFDQTtBakJ1aERaO0FLamhESTtFWVRJO0lBTVE7SUFDQTtFakJ3aERkO0FBQ0Y7QUt2aERJO0VZVEk7SUFXUTtJQUNBO0VqQnloRGQ7QUFDRjtBaUJyaERJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakJ1aERSO0FLbmpESTtFWVFBO0lBdUJRO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RWpCd2hEVjtBQUNGO0FpQnRoRFE7RUFDSTtBakJ3aERaO0FpQnJoRFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBakJ1aERaO0FpQm5oRFk7RUFHSTtBakJtaERoQjs7QWtCcG9ESTtFZHlMQTtFQUNBO0VBaUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUEsd1pBQ0k7RUFJSjtFQUNBO0Vjbk9JO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQjhvRFI7QUloN0NJO0VjMU9BO0lkMk9JO0VKbTdDTjtBQUNGO0FJOTZDSTtFY2pQQTtJZGtQSTtJQUNBO0VKaTdDTjtBQUNGO0FrQnZwRFE7RUFDSTtFQUNBO0FsQnlwRFo7QWtCdHBEUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxCd3BEWjtBa0JycERRO0VBQ0k7QWxCdXBEWjtBa0JwcERRO0VBQ0k7QWxCc3BEWjtBa0JucERRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxCcXBEWjtBa0JucERZO0VBQ0k7RUFDQTtBbEJxcERoQjtBa0JscERZO0VBQ0k7RUFDQTtBbEJvcERoQjtBa0JocERRO0VkK0hKO0VBQ0E7RUFpQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSx3WkFDSTtFQUlKO0VBQ0E7RWN6S1E7RUFDQTtBbEJ5cERaO0FJNytDSTtFY2hMSTtJZGlMQTtFSmcvQ047QUFDRjtBSTMrQ0k7RWN2TEk7SWR3TEE7SUFDQTtFSjgrQ047QUFDRjtBa0JocURZO0VkdUhSO0VBQ0E7RUFpQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSx3WkFDSTtFQUlKO0VBQ0E7RWNqS1k7RUFDQTtFQUNBO0FsQnlxRGhCO0FJdGdESTtFY3hLUTtJZHlLSjtFSnlnRE47QUFDRjtBSXBnREk7RWMvS1E7SWRnTEo7SUFDQTtFSnVnRE47QUFDRjtBSy9yREk7RWFnQlE7SUFDSTtJQUNBO0VsQmtyRGQ7QUFDRjtBS3JzREk7RWE1REE7SUFtRlE7RWxCa3JEVjtFa0JockRVO0lBQ0k7RWxCa3JEZDtFa0IvcURVO0lBQ0k7SUFDQTtJQUNBO0VsQmlyRGQ7QUFDRjs7QW1CaHhESTtFQUNJO0VBQ0E7QW5CbXhEUjs7QW9CcHhEQTtFQUNJO0FwQnV4REo7QUszdERJO0VlN0RKO0lBSVE7RXBCd3hETjtBQUNGO0FvQnR4REk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQnd4RFI7QW9COXdESTtFQUNJO0VBQ0E7QXBCZ3hEUjtBb0I5d0RRO0VBQ0k7QXBCZ3hEWjtBb0IxeERRO0VBS0o7SUFTUSxrRkFDSTtFcEIrd0RkO0FBQ0Y7QW9CeHdESTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEIwd0RSO0FvQjF5RFE7RUF1Qko7SUFZUTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VwQjJ3RFY7QUFDRjtBb0J4d0RZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQjB3RGhCO0FLL3dESTtFZURRO0lBU1E7SUFDQTtFcEIyd0RsQjtBQUNGO0FvQnh3RFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcEIwd0RoQjtBSzN4REk7RWVhUTtJQU9RO0VwQjJ3RGxCO0FBQ0Y7QW9CdHdESTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FwQnd3RFI7QW9CdHdEUTtFQUNJO0VBQ0E7QXBCd3dEWjtBSzd4REk7RWVtQkk7SUFLUTtFcEJ5d0RkO0FBQ0Y7QW9CMzFEUTtFQXNFSjtJQWdCUTtJQUNBO0VwQnl3RFY7QUFDRjtBb0J2d0RRO0VBQ0k7RUFDQTtFQUNBO0FwQnl3RFo7QW9CdHdEUTtFQUNJO0VBQ0E7QXBCd3dEWjtBb0Jwd0RJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBCc3dEUjtBb0Jud0RZO0VBQ0k7RUFDQTtBcEJxd0RoQjtBb0Jud0RnQjtFQUNJO0VBQ0E7QXBCcXdEcEI7QW9CeDNEUTtFQXNHSjtJQW1CUTtJQUNBO0lBQ0E7SUFDQTtFcEJtd0RWO0VvQmh3RGM7SUFDSTtJQUNBO0VwQmt3RGxCO0FBQ0Y7QW9CN3ZESTtFQUNJO0FwQit2RFI7QW9CNXZESTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCOHZEUjtBSzMyREk7RWUrRkE7SUFpQlE7SUFDQTtFcEIrdkRWO0FBQ0Y7QW9CNzVEUTtFQTJJSjtJQXNCUTtJQUNBO0lBQ0E7SUFDQTtFcEJnd0RWO0FBQ0Y7QW9CN3ZEWTtFQUdJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCNnZEaEI7QW9CMXZEWTtFQUNJO0VBQ0E7RUFDQTtBcEI0dkRoQjtBb0JudkRJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QXBCcXZEUjtBb0J2N0RRO0VBOExKO0lBT1E7SUFDQTtFcEJzdkRWO0FBQ0Y7QW9CcHZEUTtFQUNJO0FwQnN2RFo7QW9CbnZEUTtFQUNJO0VBQ0E7RUFDQTtBcEJxdkRaO0FLejVESTtFZXNLUTtJQUVRO0VwQnF2RGxCO0FBQ0Y7QW9CaHZESTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FwQmt2RFI7QW9CaHZEUTtFQUNJO0FwQmt2RFo7QW9CbjlEUTtFQTBOSjtJQVdRO0lBQ0E7SUFDQTtFcEJrdkRWO0FBQ0Y7QW9CaHZEUTtFQUNJO0VBQ0E7QXBCa3ZEWjtBS2w3REk7RWU4TEk7SUFLUTtFcEJtdkRkO0FBQ0Y7QW9CaHZEUTtFQUNJO0VBQ0E7RUFDQTtBcEJrdkRaO0FvQmh2RFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcEJrdkRoQjtBb0IvdURZO0VBQ0k7QXBCaXZEaEI7QUtyOERJO0VldU1JO0lBaUJRO0VwQml2RGQ7QUFDRjtBb0I3dURZO0VBQ0k7QXBCK3VEaEI7QW9CMXVESTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEI0dURSO0FvQjF1RFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBcEI0dURaO0FvQjF1RFk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCNHVEaEI7QW9CenVEWTtFQUtJO0FwQnV1RGhCO0FvQnB1RFk7RUFHSTtBcEJvdURoQjtBb0JsdURnQjtFQUNJO0VBQ0E7RUFDQTtBcEJvdURwQjtBS3ArREk7RWVzUVk7SUFDSTtFcEJpdURsQjtBQUNGO0FLdC9ESTtFZTJPSTtJQThDUTtFcEJpdURkO0VvQi90RGM7SUFDSTtJQUNBO0VwQml1RGxCO0FBQ0Y7QW9CNXREb0I7RUFDSTtFQUNBO0VBQ0E7QXBCOHREeEI7QW9CeHREWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCMHREaEI7QUszZ0VJO0VlbU9BO0lBbUZRO0lBQ0E7RXBCeXREVjtBQUNGO0FvQnR0REk7RUFDSTtBcEJ3dERSO0FvQnB0RFE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQnN0RFo7QW9CbHRESTtFQUNJO0VBQ0E7RUFDQTtBcEJvdERSO0FvQmx0RFE7RUFMSjtJQU1RO0lBQ0E7SUFDQTtJQUNBO0VwQnF0RFY7QUFDRjtBb0JudERRO0VBQ0k7RUFDQTtBcEJxdERaOztBcUJ4bUVJO0VBQ0k7RUFDQTtBckIybUVSO0FxQnptRVE7RUFDSTtFQUNBO0VBQ0EsV0NRRDtBdEJtbUVYO0FxQnZtRUk7RUFDSTtFQUNBO0FyQnltRVI7QXFCdm1FUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJCeW1FWjtBcUJ2bUVZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckJ5bUVoQjtBcUJ2bUVnQjtFQVBKO0lBUVE7SUFDQTtFckIwbUVsQjtBQUNGO0FxQnhtRWdCO0VBWko7SUFhUTtFckIybUVsQjtBQUNGO0FxQnhtRVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBckIwbUVoQjtBcUJybUVZO0VBQ0k7RUFDQTtBckJ1bUVoQjtBcUJwbUVZO0VBQ0k7SUFDSTtFckJzbUVsQjtFcUJwbUVrQjtJQUNJO0VyQnNtRXRCO0FBQ0Y7QXFCam1FUTtFQUNJO0VBQ0E7RUFDQTtBckJtbUVaO0FxQmhtRVE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FyQmttRVo7QXFCaG1FWTtFQUNJO0FyQmttRWhCO0FxQi9sRVk7RUFYSjtJQVlRO0lBQ0E7RXJCa21FZDtBQUNGO0FxQmhtRVk7RUFoQko7SUFpQlE7SUFDQTtFckJtbUVkO0VxQmptRWM7SUFDSTtNQUNJO0lyQm1tRXBCO0VBQ0Y7QUFDRjtBcUJobUVZO0VBM0JKO0lBNEJRO0lBQ0E7SUFDQTtJQUNBO0VyQm1tRWQ7QUFDRjs7QXVCeHNFUTtFQUNJO0VBQ0E7RUFDQTtBdkIyc0VaO0F1QnZzRUk7RUFDSTtBdkJ5c0VSO0FLdHBFSTtFa0JwREE7SUFJUTtJQUNBO0lBQ0E7SUFDQTtFdkIwc0VWO0V1QnhzRVU7SUFDSTtJQUNBO0V2QjBzRWQ7QUFDRjtBS2xxRUk7RWtCbkNZO0lBRVE7RXZCdXNFdEI7QUFDRjtBdUJqc0VJO0VuQjJmQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFbUI5Zkk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QndzRVI7QUk3c0RJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKK3NEUjtBSTVzREk7O0VBckNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSnF2REo7QUlwdERRO0VBQ0k7QUpzdERaO0FJbnREUTs7O0VBRUk7RUFDQTtBSnN0RFo7QUlsdERJO0VBRUk7QUptdERSO0FJanREUTs7O0VBRUk7QUpvdERaO0FJaHRESTtFQUNJO0VBQ0E7QUprdERSO0FJaHREUTtFQUNJO0FKa3REWjtBdUJ0dkVZO0VBQ0k7RUFDQTtFQUNBO0F2Qnd2RWhCO0F1QnB2RVE7RUFDSTtFQUNBO0VBQ0E7QXZCc3ZFWjtBdUJudkVRO0VBSUk7QXZCa3ZFWjtBdUJodkVZO0VBQ0k7QXZCa3ZFaEI7QXVCN3VFSTtFQUNJO0F2Qit1RVI7QUszdkVJO0VrQldBO0lBSVE7SUFDQTtFdkJndkVWO0FBQ0Y7QXVCN3VFWTtFQUNJO0F2Qit1RWhCO0F1QjN1RVE7RUFDSTtBdkI2dUVaO0F1QjN1RVk7RUFDSTtBdkI2dUVoQjtBdUJ6dUVRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QjJ1RVo7QUszeEVJO0VrQmlDSTtJQWtCUTtJQUNBO0lBQ0E7SUFDQTtFdkI0dUVkO0FBQ0Y7QXVCMXVFWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QjR1RWhCO0F1Qnp1RVk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esb0RBQ0k7QXZCMHVFcEI7QXVCcnVFUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHFHQUNJO0F2QnN1RWhCO0FLNTBFSTtFa0J3Rkk7SUFvQlE7SUFDQTtFdkJvdUVkO0FBQ0Y7QXVCbHVFWTtFQUNJO0VBQ0E7RUFDQTtBdkJvdUVoQjtBdUIvdEVZO0VBQ0k7QXZCaXVFaEI7QXVCOXRFWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCZ3VFaEI7QUtqMkVJO0VrQjRIUTtJQVFRO0V2Qml1RWxCO0FBQ0Y7QXVCOXRFWTtFQUNJO0VBQ0E7QXZCZ3VFaEI7QXVCOXRFZ0I7RUFDSTtBdkJndUVwQjtBdUI3dEVnQjtFQUNJO0VBQ0E7QXZCK3RFcEI7QXVCeHRFZ0I7RUFDSTtFQUNBO0VBQ0E7QXZCMHRFcEI7QUt6MkVJO0VrQm1KZ0I7SUFDSTtFdkJ5dEV0QjtBQUNGOztBd0J2N0VJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QjA3RVI7QXdCeDdFUTtFQUNJO0F4QjA3RVo7QXdCdjdFUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBeEJ5N0VaO0FLeDVFSTtFbUI1REE7SUErQlE7SUFDQTtFeEJ5N0VWO0FBQ0Y7O0F5QjU5RUk7RUFDSTtBekIrOUVSO0F5QjU5RUk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F6Qjg5RVI7QUt6NkVJO0VvQjFEQTtJQVFRO0V6Qis5RVY7QUFDRjtBeUI3OUVRO0VBQ0k7RUFDQSxjbEJ3R2U7RWtCdkdmO0F6Qis5RVo7QUtuN0VJO0VvQi9DSTtJQU1RO0V6QmcrRWQ7QUFDRjtBeUI3OUVRO0VBQ0k7QXpCKzlFWjtBSzM3RUk7RW9CckNJO0lBSVE7RXpCZytFZDtBQUNGOztBMEI3L0VBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QTFCZ2dGSjtBSzE3RUk7RXFCMUVKO0lBT1E7SUFDQTtFMUJpZ0ZOO0FBQ0Y7QUtoOEVJO0VxQjFFSjtJQVlRO0UxQmtnRk47QUFDRjs7QTBCLy9FQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLHlCbkJxR2tCO0VtQnBHbEI7RUFDQTtFQUNBO0VBQ0E7QTFCa2dGSjtBS2g5RUk7RXFCMURKO0lBV1E7RTFCbWdGTjtBQUNGO0FLbCtFSTtFcUI3Q0o7SUFlUTtJQUNBO0lBQ0E7SUFDQTtFMUJvZ0ZOO0FBQ0Y7QTBCbGdGSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUJvZ0ZSO0FLbC9FSTtFcUJ4QkE7SUFTUTtJQUNBO0UxQnFnRlY7QUFDRjtBMEJsZ0ZJO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjbkIrRFc7RW1COURYO0VBQ0E7RUFDQTtFQUNBO0ExQm9nRlI7QUtuZ0ZJO0VxQlZBO0lBWVE7RTFCcWdGVjtBQUNGO0EwQmxnRkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQm9nRlI7QUsvZ0ZJO0VxQk1BO0lBUVE7RTFCcWdGVjtBQUNGO0EwQmxnRkk7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCb2dGUjtBSy9oRkk7RXFCa0JBO0lBWVE7SUFDQTtFMUJxZ0ZWO0FBQ0Y7QTBCbmdGUTtFQUNJO0ExQnFnRlo7QTBCbGdGUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTFCb2dGWjs7QUExbEZBO0VBQ0k7QUE2bEZKLEM7Ozs7QUcvbUZBOzs7OztFQUFBO0FBaUJBOzs7Ozs7RUFBQTtBQzhQQTs7RUFBQTtBQStIQTs7RUFBQTtBQWVBOztFQUFBO0FBbUdBOztFQUFBO0F1QmhnQkk7RUFDSTtFQUNBO0FDdUJSO0FEckJRO0VBQ0k7RUFDQTtBQ3VCWjtBRHBCUTtFQUNJO0FDc0JaO0FEcEJZO0VBSEo7SUFJUTtFQ3VCZDtBQUNGLEM7Ozs7QXpCckNBOzs7OztFQUFBO0FBaUJBOzs7Ozs7RUFBQTtBQzhQQTs7RUFBQTtBQStIQTs7RUFBQTtBQWVBOztFQUFBO0FBbUdBOztFQUFBO0F5QmpnQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBQ3dCWjtBekJpQ0k7RXdCN0RJO0lBT1E7SUFDQTtJQUNBO0lBQ0E7RUN5QmQ7QUFDRjtBRHRCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBQ3dCWjtBRHJCZ0I7RUFJSTtBQ29CcEI7QURqQmdCO0VBR0k7QUNpQnBCO0FEZGdCO0VBQ0k7QUNnQnBCO0FEZG9CO0VBQ0k7RUFDQTtBQ2dCeEI7QURib0I7RUFDSTtFQUNBO0FDZXhCO0FEVm9CO0VBQ0k7RUFDQTtBQ1l4QjtBRFRvQjs7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FDV3hCO0FEUm9CO0VBQ0k7RUFDQTtBQ1V4QjtBRFBvQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUNTeEI7QURMd0I7RUFDSTtBQ081QjtBREp3QjtFQUNJO0VBQ0E7QUNNNUI7O0FBdkZnQjtFQUNJO0VBQ0E7QUEwRnBCLEMiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvcHJvZHVjdC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZGVmYXVsdC9zYXNzL2FwcC9hYnN0cmFjdHMvX3VuaXZlcnNhbC1wbGFjZWhvbGRlcnMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvYWJzdHJhY3RzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvYXBwL2Fic3RyYWN0cy9fZm5zLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9lc2hvcC5zZXRvcy5jei9zYXNzL2FwcC9hYnN0cmFjdHMvX21peGlucy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1tYWluLWxheW91dC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZXNob3Auc2V0b3MuY3ovc2Fzcy9fdGhlbWUtdmFyaWFibGVzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9wcm9kdWN0L19wcm9kdWN0LXZhcmlhbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvX2FzZ2FyZC12YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9wcm9kdWN0L19wcm9kdWN0LXByaWNlLWJsb2NrLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1hY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvYXBwL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2RlZmF1bHQvc2Fzcy9hcHAvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9lc2hvcC5zZXRvcy5jei9zYXNzL3Byb2R1Y3QvX3Byb2R1Y3QtbWFpbi1sYXlvdXQuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1pbWFnZXMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC12YXJpYW50cy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZXNob3Auc2V0b3MuY3ovc2Fzcy9wcm9kdWN0L19wcm9kdWN0LXZvdWNoZXIuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1hY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9lc2hvcC5zZXRvcy5jei9zYXNzL3Byb2R1Y3QvX3Byb2R1Y3QtcHJpY2UtYmxvY2suc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1kZWxpdmVyeS1vcHRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1zZXJ2aWNlcy5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZXNob3Auc2V0b3MuY3ovc2Fzcy9wcm9kdWN0L19wcm9kdWN0LW1vbnRobHktbG93ZXN0LXByaWNlLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9lc2hvcC5zZXRvcy5jei9zYXNzL3Byb2R1Y3QvX3Byb2R1Y3RzLWNvbmRpdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvcHJvZHVjdC9fcHJvZHVjdC1naWZ0LnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9lc2hvcC5zZXRvcy5jei9zYXNzL2VtYmxhL19wYWdpbmcuc2NzcyIsIndlYnBhY2s6Ly9zaG9waW8vLi9kYXRhL3d3dy90ZW1wbGF0ZXMvYXNnYXJkL2VzaG9wLnNldG9zLmN6L3Nhc3MvZW1ibGEtcGFnaW5nLnNjc3MiLCJ3ZWJwYWNrOi8vc2hvcGlvLy4vZGF0YS93d3cvdGVtcGxhdGVzL2FzZ2FyZC9kZWZhdWx0L3Nhc3MvaW1hZ2UtbW9kYWwvX2FsbC5zY3NzIiwid2VicGFjazovL3Nob3Bpby8uL2RhdGEvd3d3L3RlbXBsYXRlcy9hc2dhcmQvZXNob3Auc2V0b3MuY3ovc2Fzcy9pbWFnZS1tb2RhbC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBpbXBvcnQgJ3RoZW1lLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuLi8uLi9kZWZhdWx0L3Nhc3MvYXNnYXJkLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICdhcHAvYWJzdHJhY3RzL2FsbCc7XG5cbi8vIEBpbXBvcnQgJy4uLy4uL2RlZmF1bHQvc2Fzcy9wcm9kdWN0L2FsbCc7XG5AaW1wb3J0ICcuLi8uLi9kZWZhdWx0L3Nhc3MvcHJvZHVjdC9wcm9kdWN0LW1haW4tbGF5b3V0JztcbkBpbXBvcnQgJy4uLy4uL2RlZmF1bHQvc2Fzcy9wcm9kdWN0L3Byb2R1Y3QtaW1hZ2VzJztcbkBpbXBvcnQgJy4uLy4uL2RlZmF1bHQvc2Fzcy9wcm9kdWN0L3Byb2R1Y3QtdmFyaWFudHMnO1xuQGltcG9ydCAnLi4vLi4vZGVmYXVsdC9zYXNzL3Byb2R1Y3QvcHJvZHVjdC1wcmljZS1ibG9jayc7XG5AaW1wb3J0ICcuLi8uLi9kZWZhdWx0L3Nhc3MvcHJvZHVjdC9wcm9kdWN0LWFjdGlvbnMnO1xuXG4vLyBAaW1wb3J0ICdwcm9kdWN0LXZvdWNoZXInO1xuQGltcG9ydCAnLi4vLi4vZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnLi4vLi4vZGVmYXVsdC9zYXNzL2FwcC9jb21wb25lbnRzL2FjY29yZGlvbic7XG5cbi8vIC0tIGRlZmF1bHQvc2Fzcy9wcm9kdWN0L2FsbFxuXG5AaW1wb3J0ICdhcHAvYWJzdHJhY3RzL21peGlucyc7XG5AaW1wb3J0ICdwcm9kdWN0L2FsbCc7XG5cbjpyb290IHtcbiAgICAtLXByb2R1Y3QtZGV0YWlsLXByaWNlLXNpemU6ICN7JGZvbnQtc2l6ZS1sYXJnZXN0fTtcbn1cbiIsIi8vIHNjcmVlbiByZWFkZXJzIG9ubHlcbiVzci1vbmx5IHtcbiAgICBAaW5jbHVkZSBzci1vbmx5O1xufVxuXG4lc3Itb25seS11bmRvIHtcbiAgICBAaW5jbHVkZSBzci1vbmx5KCd1bmRvJyk7XG59XG4iLCJAdXNlICdzYXNzOm1hdGgnO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczptZXRhJztcblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xufVxuXG5AbWl4aW4gY3VzdG9tLXNjcm9sbGJhci1jb250YWluZXIoJGlzLXZlcnRpY2FsOiBmYWxzZSkge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBAaWYgJGlzLXZlcnRpY2FsIHtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHNjcm9sbGJhci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHNjcm9sbGJhci1jb2xvcjtcbiAgICB9XG59XG5cbkBtaXhpbiBtb2RhbC12YXJpYWJsZXMge1xuICAgIC0tYnMtbW9kYWwtd2lkdGg6IG1heC1jb250ZW50O1xuICAgIC0tYnMtbW9kYWwtYm9yZGVyLXJhZGl1czogMDtcbiAgICAtLWJzLW1vZGFsLW1heC1oZWlnaHQ6IDk4ZHZoO1xuICAgIC0tYnMtbW9kYWwtd2lkdGgtbmFycm93OiA1MDBweDtcbiAgICAtLWJzLW1vZGFsLXdpZHRoLWRlZmF1bHQ6IDg1MHB4O1xuICAgIC0tYnMtbW9kYWwtd2lkdGgtd2lkZTogMTEwMHB4O1xuICAgIC0tbW9kYWwtcGFkZGluZy1ibG9jazogY2xhbXAoMXJlbSwgNHZ3LCAyLjVyZW0pO1xuICAgIC0tbW9kYWwtcGFkZGluZy1pbmxpbmU6IGNsYW1wKDFyZW0sIDV2dywgM3JlbSk7XG4gICAgLS1icy1tb2RhbC1wYWRkaW5nOiB2YXIoLS1tb2RhbC1wYWRkaW5nLWJsb2NrKSB2YXIoLS1tb2RhbC1wYWRkaW5nLWlubGluZSk7XG4gICAgLS1icy1tb2RhbC1tYXJnaW46IDA7XG4gICAgLS1icy1tb2RhbC1oZWFkZXItZm9udC1zaXplOiAjeyRoMy1mb250LXNpemV9O1xuICAgIC0tbW9kYWwtaW4tbW9kYWwtYmFja2Ryb3AtY29sb3I6ICN7cmdiYSgkbW9kYWwtYmFja2Ryb3AtYmcsICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KX07XG59XG5cbkBtaXhpbiBib3hlcygkcXVhbnRpdHk6IDMsICRnYXA6IDFyZW0sICRjZW50ZXItZ2FwOiBjbGFtcCgxcmVtLCA1JSwgNHJlbSksICRjZW50ZXItYmxvY2s6IGZhbHNlKSB7XG4gICAgJGdhcC13aXRoLXVuaXQ6IGlmKG1hdGguaXMtdW5pdGxlc3MoJGdhcCksICRnYXAgKiAxcmVtLCAkZ2FwKTtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGlmICRjZW50ZXItYmxvY2sge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAkY2VudGVyLWdhcDtcblxuICAgICAgICA+ICo6d2hlcmUoaW1nKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJldmVydC1sYXllcjtcbiAgICAgICAgICAgIHdpZHRoOiByZXZlcnQtbGF5ZXI7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgZ2FwOiAkZ2FwLXdpdGgtdW5pdDtcbiAgICB9XG5cbiAgICA+ICoge1xuICAgICAgICBAaWYgJHF1YW50aXR5IHtcbiAgICAgICAgICAgIC8vIEZZSTogY2FsY3VsYXRlIHRoZSAlIHdpZHRoIC0gKG51bWJlciBvZiBnYXBzIC8gcXVhbnRpdHkpXG4gICAgICAgICAgICAtLWZsZXgtYmFzaXM6IGNhbGMoI3ttYXRoLmRpdigxMDAsICRxdWFudGl0eSkgKiAxJX0gLSAjeyRnYXAtd2l0aC11bml0ICogKG1hdGguZGl2KCgkcXVhbnRpdHkgLSAxKSwgJHF1YW50aXR5KSl9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gKiBzY3JlZW4tcmVhZGVyIG9ubHlcbi8vICogQHBhcmFtIGNvbmZpZyAtIG51bGwgfCBzdHJpbmcgKCd1bmRvJykgLSByZXNldHMgYSBwcmV2aW91cyBzci1vbmx5IHJ1bGVzZXRcbkBtaXhpbiBzci1vbmx5KCRjb25maWc6IG51bGwpIHtcbiAgICBAaWYgJGNvbmZpZyA9PSAndW5kbycge1xuICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tZGVwcmVjYXRlZFxuICAgICAgICBjbGlwOiB1bnNldDtcbiAgICAgICAgY2xpcC1wYXRoOiB1bnNldDtcbiAgICAgICAgaGVpZ2h0OiB1bnNldDtcbiAgICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgICBwb3NpdGlvbjogdW5zZXQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tZGVwcmVjYXRlZFxuICAgICAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDUwJSk7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgfVxufVxuXG4vLyBNb2RpZmllcyB0aGUgYmVoYXZpb3VyIG9mIHRoZSBkZXNrdG9wIHN1Ym1lbnUgd2hlbiB0aGVyZSBhcmUgZmV3ZXIgdGhhbiAvJG1lbnUtc3VibWVudS1zaW5nbGUtY29sdW1uLW1pbi8gaXRlbXMsXG4vLyBBTkQsIHdoZW4gdGhlcmUgYXJlIG5vIHN1Yi1zdWJjYXRlZ29yeSBpdGVtc1xuQG1peGluIGRlc2t0b3AtbmF2aWdhdGlvbi1uYXJyb3cge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGhlYWRlci1uYXYtYnJlYWtwb2ludCkge1xuICAgICAgICAvLyBOT1RFOiBzbGlnaHRseSBvbGRlciBGaXJlZm94IHN1cHBvcnRzIDpoYXMoZWxlbWVudCkgYnV0IG5vdCA6aGFzKGVsZW1lbnQgKyBlbGVtZW50KVxuICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9vcGVyYXRvci1uby11bnNwYWNlZFxuICAgICAgICBAc3VwcG9ydHMgc2VsZWN0b3IoOmhhcygrICopKSB7XG4gICAgICAgICAgICAuaGVhZGVyIC5uYXYge1xuICAgICAgICAgICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLW1haW46bm90KDpoYXMoLnN1Ym1lbnUtLW1haW4gdWwgdWwpKTpub3QoOmhhcyguc3VibWVudS0tbWFpbiA+IC5tZW51LS1uZXN0ZWQgPiAubWVudV9faXRlbS0tbmVzdGVkOm50aC1jaGlsZCgjeyRtZW51LXN1Ym1lbnUtc2luZ2xlLWNvbHVtbi1taW59KSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIHN0aWNreS1zaWRlYmFyKCRtZWRpYS1xdWVyeS1taW4td2lkdGg6ICdsZycpIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRtZWRpYS1xdWVyeS1taW4td2lkdGgpIHtcbiAgICAgICAgLS10b3AtcG9zaXRpb246IGNhbGMoKHZhcigtLWhlaWdodC1kaWZmLCAwcHgpICogLTEpICsgMXJlbSk7XG5cbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiB2YXIoLS10b3AtcG9zaXRpb24pO1xuICAgIH1cbn1cblxuLy8vIEFkZHMgYSBzY3JvbGwtbWFyZ2luLWJsb2NrLXN0YXJ0IGRlY2xhcmF0aW9uIHRvIHRoZSBjdXJyZW50IHNlbGVjdG9yXG4vLy8gKHNjcm9sbC1tYXJnaW4tYmxvY2stc3RhcnQgaXMgdGhlIGRlZmF1bHQgcHJvcGVydHkpXG4vLy8gJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsIHZhbHVlcyBhcmUgc2V0IGluIHZhcmlhYmxlcyBmaWxlXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR0eXBlIC0gJ21hcmdpbicgb3IgJ3BhZGRpbmcnXG5AbWl4aW4gc2V0LXNjcm9sbC1ibG9jay1zdGFydCgkdHlwZTogJ21hcmdpbicpIHtcbiAgICBAaWYgbWV0YS52YXJpYWJsZS1leGlzdHMoJ2hlYWRlci1maXhlZC1hZGRpdGlvbmFsJykge1xuICAgICAgICBAaWYgbWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIGhlYWRlci1tb2JpbGUpIG9yIG1hcC5nZXQoJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsLCB0b3AtYmFubmVyLW1vYmlsZSkge1xuICAgICAgICAgICAgJHNjcm9sbC1zaXplOiAnJztcblxuICAgICAgICAgICAgQGlmIG1hcC5nZXQoJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsLCBoZWFkZXItbW9iaWxlKSB7XG4gICAgICAgICAgICAgICAgJHNjcm9sbC1zaXplOiAkc2Nyb2xsLXNpemUgKyB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGlmIG1hcC5nZXQoJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsLCB0b3AtYmFubmVyLW1vYmlsZSkge1xuICAgICAgICAgICAgICAgICRzY3JvbGwtc2l6ZTogY2FsYygjeyRzY3JvbGwtc2l6ZX0gKyB2YXIoLS1wcm9tby1oZWlnaHQsIDBweCkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogI3ttYXAuZ2V0KCRoZWFkZXItZml4ZWQtYWRkaXRpb25hbCwgbW9iaWxlLWJyZWFrcG9pbnQtdXApIC0gMXB4fSkge1xuICAgICAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1pbnZhbGlkLXBvc2l0aW9uLWRlY2xhcmF0aW9uXG4gICAgICAgICAgICAgICAgc2Nyb2xsLSN7JHR5cGV9LWJsb2NrLXN0YXJ0OiAjeyRzY3JvbGwtc2l6ZX07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgbWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIGhlYWRlci1kZXNrdG9wKSBvciBtYXAuZ2V0KCRoZWFkZXItZml4ZWQtYWRkaXRpb25hbCwgdG9wLWJhbm5lci1kZXNrdG9wKSB7XG4gICAgICAgICAgICAkc2Nyb2xsLXNpemU6ICcnO1xuXG4gICAgICAgICAgICBAaWYgbWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIGhlYWRlci1kZXNrdG9wKSB7XG4gICAgICAgICAgICAgICAgJHNjcm9sbC1zaXplOiAkc2Nyb2xsLXNpemUgKyB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGlmIG1hcC5nZXQoJGhlYWRlci1maXhlZC1hZGRpdGlvbmFsLCB0b3AtYmFubmVyLWRlc2t0b3ApIHtcbiAgICAgICAgICAgICAgICAkc2Nyb2xsLXNpemU6IGNhbGMoI3skc2Nyb2xsLXNpemV9ICsgdmFyKC0tcHJvbW8taGVpZ2h0LCAwcHgpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICN7bWFwLmdldCgkaGVhZGVyLWZpeGVkLWFkZGl0aW9uYWwsIG1vYmlsZS1icmVha3BvaW50LXVwKX0pIHtcbiAgICAgICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8taW52YWxpZC1wb3NpdGlvbi1kZWNsYXJhdGlvblxuICAgICAgICAgICAgICAgIHNjcm9sbC0jeyR0eXBlfS1ibG9jay1zdGFydDogI3skc2Nyb2xsLXNpemV9O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBjYXJkIGJveGVzIGFyZSB0eXBpY2FsbHkgdXNlZCBvbiBwcm9kdWN0IGRldGFpbCBzZXJ2aWNlcywgY2hlY2tvdXQgdHJhbnNwb3J0L3BheW1lbnQgb3B0aW9ucyxcbi8vIEFORCBwcmUtY2hlY2tvdXQgcGFnZVxuQG1peGluIGNhcmQtYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS05MDAnKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCRpbnB1dCwgYm9yZGVyLWNvbG9yKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IC0xcHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1kYXJrKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgJjpob3Zlcjpub3QoOmhhcyhbZGlzYWJsZWRdKSksXG4gICAgJjpmb2N1cy13aXRoaW46bm90KDpoYXMoW2Rpc2FibGVkXSkpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKTtcblxuICAgICAgICBbdHlwZT0nY2hlY2tib3gnXTpub3QoOmNoZWNrZWQpLFxuICAgICAgICBbdHlwZT0ncmFkaW8nXTpub3QoOmNoZWNrZWQpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiKDAsIDAsIDAsIDAuMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyhbZGlzYWJsZWRdKTpub3QoLmZpeC1zcGVjaWZpY2l0eSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMTAwKTtcbiAgICAgICAgYm9yZGVyLWlubGluZS1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTEwMCk7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNjAwKTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWJsb2NrLWVuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOmxpc3QnO1xuXG4vKipcbiAqIFJldHJpZXZlcyB0aGUgbmV4dCBzbWFsbGVyIGJyZWFrcG9pbnQgZnJvbSB0aGUgZ2l2ZW4gYnJlYWtwb2ludC5cbiAqXG4gKiBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBUaGUgYnJlYWtwb2ludCBmb3Igd2hpY2ggdG8gZmluZCB0aGUgbmV4dCBzbWFsbGVyIGJyZWFrcG9pbnQuXG4gKiBAcmV0dXJuIHtTdHJpbmd8bnVsbH0gLSBUaGUgbmV4dCBzbWFsbGVyIGJyZWFrcG9pbnQsIG9yIG51bGwgaWYgbm8gc21hbGxlciBicmVha3BvaW50IGlzIGF2YWlsYWJsZS5cbiAqL1xuQGZ1bmN0aW9uIGdldC1zbWFsbGVyLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAka2V5czogbWFwLmtleXMoJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmRleDogbGlzdC5pbmRleCgka2V5cywgJGJyZWFrcG9pbnQpO1xuXG4gICAgQGlmIG5vdCAkaW5kZXggb3IgJGluZGV4ID09IDEge1xuICAgICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgQHJldHVybiBsaXN0Lm50aCgka2V5cywgJGluZGV4IC0gMSk7XG59XG5cbi8qKlxuICogUmV0cmlldmVzIHRoZSBuZXh0IGxhcmdlciBicmVha3BvaW50IGZyb20gdGhlICRncmlkLWJyZWFrcG9pbnRzIG1hcC5cbiAqXG4gKiBAZnVuY3Rpb24gZ2V0LWJpZ2dlci1icmVha3BvaW50XG4gKiBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBUaGUgY3VycmVudCBicmVha3BvaW50IHRvIGZpbmQgdGhlIG5leHQgbGFyZ2VyIG9uZSBmb3IuXG4gKiBAcmV0dXJuIHtTdHJpbmcgfCBudWxsfSAtIFRoZSBuZXh0IGxhcmdlciBicmVha3BvaW50IG9yIG51bGwgaWYgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyB0aGUgbGFyZ2VzdCBvciBub3QgZm91bmQuXG4gKi9cbkBmdW5jdGlvbiBnZXQtbGFyZ2VyLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAka2V5czogbWFwLmtleXMoJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmRleDogbGlzdC5pbmRleCgka2V5cywgJGJyZWFrcG9pbnQpO1xuXG4gICAgQGlmIG5vdCAkaW5kZXggb3IgJGluZGV4ID09IGxpc3QubGVuZ3RoKCRicmVha3BvaW50KSB7XG4gICAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBAcmV0dXJuIGxpc3QubnRoKCRrZXlzLCAkaW5kZXggKyAxKTtcbn1cbiIsIkB1c2UgJ3Nhc3M6Y29sb3InO1xuQHVzZSAnc2FzczptYXAnO1xuQHVzZSAnc2FzczpsaXN0JztcblxuLy8gKiBWaXN1YWxzIGZvciBzbWFsbCBibG9ja3Mgd2l0aCBhIGhvdmVyIC8gZm9jdXMtd2l0aGluIGVmZmVjdCBpbmNsdWRlZFxuLy8gKiBUbyBtb2RpZnkgZGVmYXVsdCB2YWx1ZXMsIHlvdSBjb3VsZCB1c2UgQGluY2x1ZGUgc21hbGwtYmxvY2stY29tcG9uZW50KG1hcC5zZXQoJGNvbmZpZywgJ3JhZGl1cycsIDIwcHgpKVxuQG1peGluIHNtYWxsLWJsb2NrLWNvbXBvbmVudChcbiAgICAkcmFkaXVzOiAxMHB4LFxuICAgICRiYWNrZ3JvdW5kLXN0YXJ0OiBjb2xvci5hZGp1c3QobWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWxpZ2h0KSwgJGFscGhhOiAtMSksXG4gICAgJGJhY2tncm91bmQtZW5kOiBjb2xvci5hZGp1c3QobWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LW1pZCksICRhbHBoYTogMCksXG4gICAgJGJveC1zaGFkb3ctc3RhcnQ6IDAgNHB4IDIwcHggMCAjMDAwMDAwMTQsXG4gICAgJGJveC1zaGFkb3ctZW5kOiAwIDRweCA0cHggMCAjMDAwMDAwMTQsXG4gICAgJHRyYW5zaXRpb246ICdiYWNrZ3JvdW5kLWNvbG9yIGxpbmVhciAwLjE1cywgYm94LXNoYWRvdyBsaW5lYXIgMC4xNXMnXG4pIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLXN0YXJ0O1xuICAgIGJveC1zaGFkb3c6ICRib3gtc2hhZG93LXN0YXJ0O1xuICAgIHRyYW5zaXRpb246ICN7JHRyYW5zaXRpb259O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWVuZDtcbiAgICAgICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctZW5kO1xuICAgIH1cbn1cblxuQG1peGluIHdpZGUtY2FyZCgkYnJlYWtwb2ludDogJ3hsJykge1xuICAgICRzbWFsbGVyLWJyZWFrcG9pbnQ6IGdldC1sYXJnZXItYnJlYWtwb2ludCgkYnJlYWtwb2ludCk7XG5cbiAgICAucHJvZHVjdC1jYXJkIHtcbiAgICAgICAgLS10aHVtYm5haWwtd2lkdGg6IDIwMHB4O1xuICAgICAgICAtLWZsYWctZm9udC1zaXplOiAxLjJyZW07XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaWdodCk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IDAgcmdiKDAsIDAsIDAsIDAuMDcpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG5cbiAgICAgICAgJl9faW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpZiAkc21hbGxlci1icmVha3BvaW50IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJHNtYWxsZXItYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgICAgIC0tdGh1bWJuYWlsLXdpZHRoOiAyODBweDtcbiAgICAgICAgICAgICAgICAtLWZsYWctZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50KSB7XG4gICAgICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHZhcigtLXRodW1ibmFpbC13aWR0aCkgMWZyIGF1dG87XG4gICAgICAgICAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjRyZW07XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDRyZW0gM3JlbSAwO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIC0xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fcHJpbWFyeSxcbiAgICAgICAgICAgICZfX3NlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogY29udGVudHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3NlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGh1bWJuYWlsIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLXRodW1ibmFpbC13aWR0aCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgICAgICAgICAgZ3JpZC1hcmVhOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjQwcHg7XG4gICAgICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX192YXJpYW50cyB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDY7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gLTE7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3BlcmV4IHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIC0xO1xuICAgICAgICAgICAgICAgIGdyaWQtcm93OiAzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19wYXJhbWV0ZXJzIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIC0xO1xuICAgICAgICAgICAgICAgIGdyaWQtcm93OiA0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19hdmFpbGFiaWxpdHkge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gLTE7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3ByaWNlIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogNjtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAuY2FyZC1wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMCAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJl9fZnVsbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGRhcmspO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJl9fZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICZfX3NhdmluZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fZmxhZ3Mge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTNweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHBsYWNlLXNlbGY6IHN0YXJ0IGVuZDtcbiAgICAgICAgICAgICAgICBnYXA6IDAuM3JlbTtcblxuICAgICAgICAgICAgICAgIFtjbGFzcyo9J19faXRlbSddIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC4yMmVtIDAuNjNlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZsYWctZm9udC1zaXplKTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcblxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MqPSdfX3RleHQnXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2FkZCB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDM7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDY7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICYtbGluayB7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAqIEFkZCBpbnZlcnRlZCBib3JkZXIgcmFkaXVzIGNvcm5lcnNcbi8vICogbWFzayB2YWx1ZXMgYXJlIGluIHRoZSBvcmRlciB0bCAvIHRyIC8gYnIgLyBibFxuLy8gKiBOb3RlIHRoYXQgYWxsIHVuaXRzIHNob3VsZCBiZSBpbiBweFxuLy8gKiBAcGFyYW0ge2xpc3R9IC0gc3BlY2lmaWMgYm9yZGVyIGNvcm5lcnMgJGNvcm5lcnMgKGFsbHx0bHx0cnxibHxicilcbkBtaXhpbiBpbnZlcnRlZC1ib3JkZXItcmFkaXVzKCRjb3JuZXJzOiAnYWxsJykge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmV0dGllci9wcmV0dGllclxuICAgICR2YWxpZC1ib3JkZXItcmFkaXVzLXBhcmFtczogWydhbGwnLCAndGwnLCAndHInLCAnYmwnLCAnYnInLCAndCcsICdyJywgJ2InLCAnbCddO1xuICAgICRpbnZlcnRlZC1ib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgICRpbnZlcnRlZC1ib3JkZXItdGw6IDBweDtcbiAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRyOiAwcHg7XG4gICAgJGludmVydGVkLWJvcmRlci1icjogMHB4O1xuICAgICRpbnZlcnRlZC1ib3JkZXItYmw6IDBweDtcblxuICAgIC0taW52ZXJ0ZWQtYm9yZGVyLWdyYWRpZW50OiAjMDAwMCA5OCUsICMwMDA7XG4gICAgLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzOiAjeyRpbnZlcnRlZC1ib3JkZXItcmFkaXVzfTtcblxuICAgIEBpZiBub3QgbGlzdC5pbmRleCgkdmFsaWQtYm9yZGVyLXJhZGl1cy1wYXJhbXMsICRjb3JuZXJzKSB7XG4gICAgICAgIEBlcnJvciBcIiN7JGNvcm5lcnN9IGlzIG5vdCBhIHZhbGlkIHNpZGUuIEV4cGVjdGVkIG9uZSBvZiAjeyR2YWxpZC1ib3JkZXItcmFkaXVzLXBhcmFtc30uXCI7XG4gICAgfVxuXG4gICAgQGlmICRjb3JuZXJzID09ICdhbGwnIHtcbiAgICAgICAgJGludmVydGVkLWJvcmRlci10bDogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICRpbnZlcnRlZC1ib3JkZXItdHI6ICRpbnZlcnRlZC1ib3JkZXItcmFkaXVzO1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJyOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgJGludmVydGVkLWJvcmRlci1ibDogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAndGwnIHtcbiAgICAgICAgJGludmVydGVkLWJvcmRlci10bDogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAndHInIHtcbiAgICAgICAgJGludmVydGVkLWJvcmRlci10cjogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAnYnInIHtcbiAgICAgICAgJGludmVydGVkLWJvcmRlci1icjogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAnYmwnIHtcbiAgICAgICAgJGludmVydGVkLWJvcmRlci1ibDogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAndCcge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgJGludmVydGVkLWJvcmRlci10cjogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAncicge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRyOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgJGludmVydGVkLWJvcmRlci1icjogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAnYicge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLWJyOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgJGludmVydGVkLWJvcmRlci1ibDogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfSBAZWxzZSBpZiAkY29ybmVycyA9PSAnbCcge1xuICAgICAgICAkaW52ZXJ0ZWQtYm9yZGVyLXRsOiAkaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgJGludmVydGVkLWJvcmRlci1ibDogJGludmVydGVkLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRsOiAjeyRpbnZlcnRlZC1ib3JkZXItdGx9O1xuICAgIC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10cjogI3skaW52ZXJ0ZWQtYm9yZGVyLXRyfTtcbiAgICAtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYnI6ICN7JGludmVydGVkLWJvcmRlci1icn07XG4gICAgLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLWJsOiAjeyRpbnZlcnRlZC1ib3JkZXItYmx9O1xuXG4gICAgbWFzazpcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtdGwpIGF0IDAgMCwgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLWdyYWRpZW50KSkgMCAwLFxuICAgICAgICByYWRpYWwtZ3JhZGllbnQodmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10cikgYXQgMTAwJSAwLCB2YXIoLS1pbnZlcnRlZC1ib3JkZXItZ3JhZGllbnQpKSAxMDAlIDAsXG4gICAgICAgIHJhZGlhbC1ncmFkaWVudCh2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLWJsKSBhdCAwIDEwMCUsIHZhcigtLWludmVydGVkLWJvcmRlci1ncmFkaWVudCkpIDAgMTAwJSxcbiAgICAgICAgcmFkaWFsLWdyYWRpZW50KHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYnIpIGF0IDEwMCUgMTAwJSwgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLWdyYWRpZW50KSkgMTAwJSAxMDAlO1xuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1zaXplOiA1MSUgNTElO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUgbm8taW52YWxpZC1wb3NpdGlvbi1kZWNsYXJhdGlvblxuICAgIC8vIERpc2FibGUgZm9yIG9sZGVyIFNhZmFyaSBicm93c2VycyBhcyB0aGUgbGF5b3V0IGJyZWFrcyB0aGVyZSB3aXRoIG1hc2tcbiAgICBAc3VwcG9ydHMgKGJhY2tncm91bmQ6IC13ZWJraXQtbmFtZWQtaW1hZ2UoaSkpIHtcbiAgICAgICAgbWFzazogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBXZSBjYW5ub3QgY2hlY2sgZm9yIEBzdXBwb3J0cyAoY2xpcC1wYXRoOiBzaGFwZSgpKSBiZWNhdXNlLCB3aGlsZSBGaXJlZm94IHN1cHBvcnRzIHRoZSBydWxlLCBpdCBkb2VzIG5vdCB3b3JrIC0geWV0IChodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTEwMzI4KVxuICAgIC8vIEJ1dCwgYXMgc2hhcGUoKSBjYW4gYmUgdXNlZCBpbiBhbmltYXRpb24gcGF0aHMsIGFuZCBDaHJvbWUgYW5kIGN1cnJlbnQgU2FmYXJpIHN1cHBvcnQgdGhpcyBpbXBsZW1lbnRhdGlvbi5cbiAgICAvLyBOT1RFOiBXZSBzaG91bGQgc3RpbGwgY2hlY2sgdG8gc2VlIHdoZW4gY2xpcC1wYXRoOiBzaGFwZSgpIGlzIGZ1bGx5IGVuYWJsZWQgaW4gRmlyZWZveCwgYnV0IGluIHRoZSBtZWFudGltZSwgbWFza2luZyB3b3JrcyBuaWNlbHkgdGhlcmVcbiAgICBAc3VwcG9ydHMgKG9mZnNldC1wYXRoOiBzaGFwZShmcm9tIHRvcCBsZWZ0LCBjdXJ2ZSB0byA1MCUgNTAlIHdpdGggMjUlIDEwMCUpKSB7XG4gICAgICAgIG1hc2s6IG5vbmU7XG4gICAgICAgIGNsaXAtcGF0aDogc2hhcGUoXG4gICAgICAgICAgICBmcm9tIDAgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10bCksXG4gICAgICAgICAgICBhcmMgYnkgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10bCkgY2FsYyh2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRsKSAqIC0xKSBvZiB2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLXRsKSxcbiAgICAgICAgICAgIGxpbmUgdG8gY2FsYygxMDAlIC0gdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10cikpIDAsXG4gICAgICAgICAgICBhcmMgYnkgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10cikgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10cikgb2YgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy10ciksXG4gICAgICAgICAgICBsaW5lIHRvIDEwMCUgY2FsYygxMDAlIC0gdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1icikpLFxuICAgICAgICAgICAgYXJjIGJ5IGNhbGModmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1icikgKiAtMSkgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1icikgb2YgdmFyKC0taW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cy1iciksXG4gICAgICAgICAgICBsaW5lIHRvIHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYmwpIDEwMCUsXG4gICAgICAgICAgICBhcmMgYnkgY2FsYyh2YXIoLS1pbnZlcnRlZC1ib3JkZXItcmFkaXVzLWJsKSAqIC0xKSBjYWxjKHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYmwpICogLTEpIG9mIHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtYmwpLFxuICAgICAgICAgICAgbGluZSB0byAwIHZhcigtLWludmVydGVkLWJvcmRlci1yYWRpdXMtdGwpXG4gICAgICAgICk7XG4gICAgfVxuICAgIC8vIHN0eWxlbGludC1lbmFibGUgbm8taW52YWxpZC1wb3NpdGlvbi1kZWNsYXJhdGlvblxufVxuXG4vLyBMYWJlbCBpcyBzaGlmdGVkIHdoZW4gLVxuLy8gaW5wdXQgaXMgZm9jdXNlZFxuLy8gaGFzIHZhbHVlIHByb3AgYnV0IG5vdCBwbGFjZWhvbGRlciBzaG93biAoaGFwcGVuZHMgd2hlbiBwcmVmaWxsZWQgaW5wdXQgaXMgbWFudWFsbHkgY2xlYXJlZClcbi8vIGhhcyBzb21lIHRleHQgcGxhY2Vob2xkZXJcbi8vIGlzIGF1dG9maWxsZWRcbkBtaXhpbiBmb3JtLWlucHV0LWxhYmVsLXNlbGVjdG9ycyB7XG4gICAgJjpoYXMoOndoZXJlKGlucHV0LCBzZWxlY3QsIHRleHRhcmVhKTpub3QoOndoZXJlKDpwbGFjZWhvbGRlci1zaG93bikpOmlzKDp3aGVyZSg6bm90KDpwbGFjZWhvbGRlci1zaG93bikpLCA6d2hlcmUoOm5vdChbcGxhY2Vob2xkZXI9JyddLCBbcGxhY2Vob2xkZXI9JyAnXSkpLCA6bm90KFt2YWx1ZT0nJ10pLCA6LXdlYmtpdC1hdXRvZmlsbCwgOmF1dG9maWxsLCA6Zm9jdXMpKSA6d2hlcmUoLmZvcm0taW5wdXRfX2xhYmVsKSxcbiAgICAmOmhhcyg6d2hlcmUoaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEpOmlzKDp3aGVyZSg6cGxhY2Vob2xkZXItc2hvd246bm90KFtwbGFjZWhvbGRlcj0nJ10sIFtwbGFjZWhvbGRlcj0nICddKSkpKSA6d2hlcmUoLmZvcm0taW5wdXRfX2xhYmVsKSxcbiAgICAmOmhhcyg6d2hlcmUoaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEpOmlzKDpmb2N1cykpIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vKipcbiAqIFJlc2V0IGlTcGFjZSBjdXN0b20gZm9ybSBpbnB1dCBzdHlsZXMgdG8gYmUgYWJsZSB0byBkZXNpZ24gc3BlY2lhbCBpbnB1dHMgbW9yZSBlYXNpbHlcbiAqL1xuQG1peGluIHJlc2V0LWZvcm0taW5wdXQge1xuICAgICY6aGFzKDp3aGVyZShpbnB1dDpub3QoW3R5cGU9J2NoZWNrYm94J10sIFt0eXBlPSdyYWRpbyddKSwgdGV4dGFyZWEsIHNlbGVjdCkpIHtcbiAgICAgICAgei1pbmRleDogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogaW5pdGlhbDtcblxuICAgICAgICA6d2hlcmUoLmZvcm0tZmllbGQtY29udGFpbmVyKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBpbml0aWFsO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgOndoZXJlKC5mb3JtLWZpZWxkID4gKikge1xuICAgICAgICAgICAgJjpub3QoW2Rpc2FibGVkXSkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA6d2hlcmUoLmZvcm0tZmllbGRfX2lucHV0KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IGluaXRpYWw7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcyguZXJyb3JzKSB7XG4gICAgICAgICAgICAtLWlucHV0LWJnOiBpbml0aWFsO1xuXG4gICAgICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcyhbZGlzYWJsZWRdKSB7XG4gICAgICAgICAgICAuZm9ybS1maWVsZC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBpbml0aWFsICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA6d2hlcmUoLmZvcm0taW5wdXRfX2xhYmVsKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IGluaXRpYWw7XG4gICAgICAgICAgICBjb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICB6LWluZGV4OiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogaW5pdGlhbDtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IGluaXRpYWw7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpoYXMoLmZvcm0tZmllbGQtLXNtKSB7XG4gICAgICAgICAgICAuZm9ybS1pbnB1dF9fbGFiZWwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgICAgICA6d2hlcmUoLmZvcm0tZmllbGQtY29udGFpbmVyKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjpub3QoOndoZXJlKDpmb2N1cy13aXRoaW4sIFtkaXNhYmxlZF0pKSB7XG4gICAgICAgICAgICAgICAgJjp3aGVyZSg6bm90KDpoYXMoLmVycm9ycykpKSB7XG4gICAgICAgICAgICAgICAgICAgIDp3aGVyZSguZm9ybS1maWVsZC1jb250YWluZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIDp3aGVyZSguZm9ybS1pbnB1dF9fbGFiZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbml0aWFsO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpoYXMoLmVycm9ycykge1xuICAgICAgICAgICAgICAgICAgICA6d2hlcmUoLmZvcm0tZmllbGQtY29udGFpbmVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA6d2hlcmUoLmZvcm0taW5wdXRfX2xhYmVsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtbGFiZWwtc2VsZWN0b3JzIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBTdHlsZXMgdG8gaGlkZSB0aGUgc2Nyb2xsYmFyIGJ1dCBzdGlsbCBhbGxvdyBzY3JvbGxpbmdcbiAqL1xuQG1peGluIHNjcm9sbC13aXRob3V0LXNjcm9sbGJhciB7XG4gICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICBvdmVyZmxvdzogLW1vei1zY3JvbGxiYXJzLW5vbmU7IC8qIEZpcmVmb3ggKi9cbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8qIElFIGFuZCBFZGdlICovXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGaXJlZm94ICovXG5cbiAgICAvKiBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmEgKi9cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4vKipcbiAqIFNwZWNpYWwgdmVyc2lvbiBvZiB0aGUgY2FyZC1ib3goKSBsYXlvdXQgZm9yIHRoZSBCMkIgc2hvcFxuICovXG5AbWl4aW4gY2FyZC1ib3gtY2hlY2tvdXQge1xuICAgIEBpbmNsdWRlIGNhcmQtYm94O1xuXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZGFyayk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG5cbiAgICAmOmhhcyhpbnB1dDpjaGVja2VkKSxcbiAgICAmLnNlbGVjdGVkLXBheW1lbnQtc2hpcHBpbmctbWV0aG9kIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1kYXJrKTtcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1kYXJrKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdtZCcpIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktZGFyayk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZvcm0tYmxvY2stZGlzYWJsZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBjb250ZW50O1xufVxuXG5AbWl4aW4gY2FyZC1ib3gtY2hlY2tvdXQtY29tcG9uZW50cygkaXMtbWluaW1hbDogZmFsc2UpIHtcbiAgICBAaWYgJGlzLW1pbmltYWwge1xuICAgICAgICAmLWxhYmVsIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgJi1sYWJlbCxcbiAgICAgICAgJi1pbmZvLFxuICAgICAgICAmLXByaWNlIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLWxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IGluaXRpYWw7XG4gICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIEBpZiAkaXMtbWluaW1hbCB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aGFzKDpjaGVja2VkKSxcbiAgICAgICAgJjpoYXMoW2Rpc2FibGVkXSkge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucmFkaW8ge1xuICAgICAgICAgICAgJl9faW5wdXQge1xuICAgICAgICAgICAgICAgIHRvcDogLTE2cHg7IC8vIGNvbnNpZGVyIHRoZSAxNHB4IHBhZGRpbmcgKGV4dHJhIDJweCBmb3IgYm9yZGVyKVxuXG4gICAgICAgICAgICAgICAgJjpjaGVja2VkOm5vdCg6ZGlzYWJsZWQpOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgIEBpZiAkaXMtbWluaW1hbCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBjb250ZW50O1xufVxuXG4vKipcbiAqIGNhcmQtYm94IGxpc3QgbGF5b3V0IGZvciB0aGUgQjJCIHNob3BcbiAqL1xuQG1peGluIGNhcmQtYm94LWxpc3QtY2hlY2tvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgZ2FwOiAwLjhyZW07XG4gICAgdHJhbnNpdGlvbjogZ2FwIDAuM3M7XG59XG5cbi8vIEFsdGVybmF0aXZlIGRpc2MtbGlrZSBzdHlsaW5nIGZvciByYWRpbyBhbmQgY2hlY2tib3ggaW5wdXRzXG5AbWl4aW4gaW5wdXQtZGlzYyB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDAgMTBweCAwIGF1dG87XG4gICAgbWFyZ2luLWJsb2NrOiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgd2lkdGg6IDE1cHg7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIGZsZXg6IDAgMCAxNXB4OyAvLyBpbiBjYXNlIGl0J3MgcGFydCBvZiBhIGZsZXggbGF5b3V0XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgICBib3JkZXI6IDJweCBzb2xpZCByZ2IoMCwgMCwgMCwgMC4xKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbi8vIGNhcmQgYm94ZXMgYXJlIHR5cGljYWxseSB1c2VkIG9uIHByb2R1Y3QgZGV0YWlsIHNlcnZpY2VzLCBjaGVja291dCB0cmFuc3BvcnQvcGF5bWVudCBvcHRpb25zLFxuLy8gQU5EIHByZS1jaGVja291dCBwYWdlXG5AbWl4aW4gY2FyZC1ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGlnaHQpO1xuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTkwMCcpO1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCRpbnB1dCwgYm9yZGVyLWNvbG9yKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDE0cHggMzBweCAxNHB4IDIwcHg7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogLTFweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLWluLW91dDtcbiAgICB9XG5cbiAgICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgICAgIEBpbmNsdWRlIGlucHV0LWRpc2M7XG4gICAgfVxuXG4gICAgJjpoYXMoOmNoZWNrZWQpLFxuICAgICZbY2xhc3MqPSdzZWxlY3RlZCddIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIFt0eXBlPSdjaGVja2JveCddOm5vdCguZml4LXNwZWNpZmljaXR5KSxcbiAgICAgICAgW3R5cGU9J3JhZGlvJ106bm90KC5maXgtc3BlY2lmaWNpdHkpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3Zlcjpub3QoOmhhcyhbZGlzYWJsZWRdKSksXG4gICAgJjpmb2N1cy13aXRoaW46bm90KDpoYXMoW2Rpc2FibGVkXSkpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKTtcblxuICAgICAgICBbdHlwZT0nY2hlY2tib3gnXTpub3QoOmNoZWNrZWQpLFxuICAgICAgICBbdHlwZT0ncmFkaW8nXTpub3QoOmNoZWNrZWQpIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiKDAsIDAsIDAsIDAuMik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyhbZGlzYWJsZWRdKTpub3QoLmZpeC1zcGVjaWZpY2l0eSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcbiAgICAgICAgb3BhY2l0eTogMC43O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCB4eGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4ucHJvZHVjdC1kZXRhaWwge1xuICAgICRjb2x1bW5zLW1pbi13aWR0aDogMzMwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICBnYXA6IDMwcHggMDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3NtJykge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgjeyRjb2x1bW5zLW1pbi13aWR0aH0sIDFmcikpO1xuICAgICAgICAgICAgZ2FwOiAzMHB4IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLWltYWdlcyB7XG4gICAgICAgICAgICBvcmRlcjogLTE7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDEgLyAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICBjb250YWluZXItbmFtZTogcHJvZHVjdC10ZXh0LWJsb2NrO1xuICAgICAgICAgICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogMnJlbTtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuXG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1ub3Qtbm90YXRpb25cbiAgICAgICAgICAgID4gKjp3aGVyZSg6bm90KC5wcm9kdWN0LWRldGFpbF9faGFzLWZyZWUtc2hpcHBpbmcpOm5vdCgucHJvZHVjdC1kZXRhaWxfX2FjdGlvbnMpKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZW5hYmxlIHNlbGVjdG9yLW5vdC1ub3RhdGlvblxuXG4gICAgICAgICAgICAucHJvZHVjdC1kZXRhaWwge1xuICAgICAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICAgICAvLyBkbyBub3QgdGFrZSB1cCBzcGFjZSBpZiBlbXB0eVxuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6aGFzKD4gKikpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3NtJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGNvbnRhaW5lciBwcm9kdWN0LXRleHQtYmxvY2sgKHdpZHRoIDwgODB2dykgYW5kICh3aWR0aCA+ICN7JGNvbHVtbnMtbWluLXdpZHRoIC0gMX0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcmV2aWV3cy1pbmZvIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWF4LWNvbnRlbnQpO1xuICAgICAgICBnYXA6IDAuNXJlbSAxcmVtO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdzbScpIHtcbiAgICAgICAgICAgIEBjb250YWluZXIgcHJvZHVjdC10ZXh0LWJsb2NrICh3aWR0aCA8IDgwdncpIGFuZCAod2lkdGggPiAjeyRjb2x1bW5zLW1pbi13aWR0aCAtIDF9KSB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtcGVyY2VudGFnZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yYXRpbmdzIHtcbiAgICAgICAgICAgICYtb3ZlcmFsbC1oZWFkaW5nLFxuICAgICAgICAgICAgJi1hdmVyYWdlIHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVzci1vbmx5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLW92ZXJhbGwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWNvdW50IHtcbiAgICAgICAgICAgICAgICBAZXh0ZW5kICVzci1vbmx5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3NtJykge1xuICAgICAgICAgICAgQGNvbnRhaW5lciBwcm9kdWN0LXRleHQtYmxvY2sgKHdpZHRoIDwgODB2dykgYW5kICh3aWR0aCA+ICN7JGNvbHVtbnMtbWluLXdpZHRoIC0gMX0pIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZm9ybSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAycmVtO1xuICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcblxuICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1ub3Qtbm90YXRpb25cbiAgICAgICAgPiAqOndoZXJlKDpub3QoLnByb2R1Y3QtZGV0YWlsX19oYXMtZnJlZS1zaGlwcGluZyk6bm90KC5wcm9kdWN0LWRldGFpbF9fYWN0aW9ucykpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm90LW5vdGF0aW9uXG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgICZfX21ldGEge1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTYwMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAwIGNsYW1wKDEuNXJlbSwgM3Z3LCAzcmVtKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtaW4taGVpZ2h0OiAxbGg7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnc20nKSB7XG4gICAgICAgICAgICBAY29udGFpbmVyIHByb2R1Y3QtdGV4dC1ibG9jayAod2lkdGggPCA4MHZ3KSBhbmQgKHdpZHRoID4gI3skY29sdW1ucy1taW4td2lkdGggLSAxfSkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgICY6aGFzKC5wZXJleC1tb3JlKSB7XG4gICAgICAgICAgICA+ICo6bnRoLWxhc3QtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hhcy1mcmVlLXNoaXBwaW5nIHtcbiAgICAgICAgLy8gbW92ZSB0aGUgYWN0aW9ucyBvdmVyIGJ5IDUwJSAtIDAuNSB4IGZsZXggZ2FwXG4gICAgICAgIG1pbi13aWR0aDogY2FsYyg1MCUgLSAxcmVtKTtcbiAgICB9XG5cbiAgICAmX19zZWNvbmRhcnkge1xuICAgICAgICAvLyAubmF2LXRhYnMgaW5zaWRlIGFyZSAxMDB2dyB3aWR0aFxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgIHRoZWFkICsgdGJvZHkgPiAmOmZpcnN0LWNoaWxkLFxuICAgICAgICAgICAgdHIgKyB0ciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aCxcbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNGVtO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICArIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoZWFkIHRoIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYnMge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlciAqIDY7XG4gICAgICAgIH1cblxuICAgICAgICArIC5wcm9kdWN0cy1zZWN0aW9uIHtcbiAgICAgICAgICAgICYsXG4gICAgICAgICAgICArIC5wcm9kdWN0cy1zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYmxvY2stc3RhcnQ6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMjAwKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6ICRzcGFjZXIgKiA2O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJ21kJykge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ibG9jay1zdGFydDogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgKyAqOndoZXJlKDpub3QoLnByb2R1Y3RzLXNlY3Rpb24pKSB7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6ICRzcGFjZXIgKiA2O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gc3BlY2lmaWMgc2VjdGlvbiBzdHlsaW5nXG4gICAgLnRhYnNfX21haW4ge1xuICAgICAgICBjb250YWluZXI6IG1haW4tdGFiIC8gaW5saW5lLXNpemU7XG5cbiAgICAgICAgLnRhYnNfX3NlY3Rpb24taW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAucHJvZHVjdC1kZXRhaWxfX3RleHQge1xuICAgICAgICAgICAgICAgIGZsZXg6IDExIDAgMzUwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAgICAgICAgICAgICAgIEBjb250YWluZXIgbWFpbi10YWIgKG1pbi13aWR0aDogNTM3cHgpIHtcbiAgICAgICAgICAgICAgICAgICAgJjp3aGVyZSg6bm90KDpsYXN0LWNoaWxkKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMy41JTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6d2hlcmUoOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBtaW4oNzY4cHgsIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICsgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMiAwIDE4N3B4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBjb250YWluZXIgbWFpbi10YWIgKG1pbi13aWR0aDogNzAycHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMuNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlsX19zZWNvbmRhcnktc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgJi1oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICArIC5wcm9kdWN0LWRldGFpbF9fc2Vjb25kYXJ5LXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzICogJHNwYWNlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbF9fcHJvZHVjZXIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sZztcblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbF9fc2Vjb25kYXJ5LXNlY3Rpb24taGVhZGluZyB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgJXNyLW9ubHk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcGFyYW1ldGVycy1saXN0IHtcbiAgICAgICAgLnBvcG92ZXIge1xuICAgICAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiAwLjJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaXRlbS1kZXNjcmlwdGlvbi12YXJpYW50cyB7XG4gICAgICAgICAgICAuY29sdW1uLWl0ZW1zIHtcbiAgICAgICAgICAgICAgICAmLWR5bmFtaWMge1xuICAgICAgICAgICAgICAgICAgICAtLWNvbHVtbi1jb3VudDogMTtcbiAgICAgICAgICAgICAgICAgICAgLS1jb2x1bW4td2lkdGg6ICcnO1xuXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5zaG93LWFsbC1pdGVtcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbHVtbi1pdGVtcy1keW5hbWljIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLS10cmlnZ2VyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGF4b25vbXkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyICogNjtcblxuICAgICAgICAmLWhlYWRpbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NpbWlsYXItY2F0ZWdvcmllcyB7XG4gICAgICAgICYtaGVhZGluZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1saXN0LWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190YWdzIHtcbiAgICAgICAgPiBkbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLFxuICAgICAgICAgICAgZHQsXG4gICAgICAgICAgICBkZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdmFyaWFudHMtbGlzdCB7XG4gICAgICAgIGxpICsgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC4zcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZW1wdHktbGluZS1iZWZvcmVcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZG91YmxlLXNsYXNoLWNvbW1lbnQtZW1wdHktbGluZS1iZWZvcmVcbkB1c2UgJ3Nhc3M6bWFwJztcbkB1c2UgJy4uLy4uL2RlZmF1bHQvc2Fzcy9hc2dhcmQtdmFyaWFibGVzJyBhcyBhc2dhcmQtdmFyaWFibGVzO1xuXG4vLyBib290c3RyYXAgdmFyaWFibGVzXG4vLyBsYXlvdXRcbiRncmlkLWJyZWFrcG9pbnRzOiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kZ3JpZC1icmVha3BvaW50cyxcbiAgICAoXG4gICAgICAgIGRlc2t0b3A6IDE2NTBweCxcbiAgICAgICAgZnVsbGhkOiAxOTIwcHgsXG4gICAgICAgIDJrOiAyNTAwcHhcbiAgICApXG4pO1xuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IG1hcC5tZXJnZShcbiAgICBhc2dhcmQtdmFyaWFibGVzLiRjb250YWluZXItbWF4LXdpZHRocyxcbiAgICAoXG4gICAgICAgIGxnOiAxMDI0cHgsXG4gICAgICAgIHhsOiAxMTQwcHgsXG4gICAgICAgIHh4bDogMTY4NXB4XG4gICAgKVxuKTtcblxuLy8gc3BhY2luZ1xuJGNvbnRhaW5lci1wYWRkaW5nLXg6IDNyZW07XG4kY2FudmFzLXBhZGRpbmcteTogNHJlbTtcbiRjYW52YXMtcGFkZGluZy15LW1kOiA2cmVtO1xuJGNhbnZhcy1wYWRkaW5nLXkteHhsOiA3cmVtO1xuXG4vLyBmb250XG4kZm9udC1zaXplLXJvb3Q6IDYyLjUlO1xuJGZvbnQtc2l6ZS1iYXNlOiAxLjRyZW07XG4kbGluZS1oZWlnaHQtYmFzZTogMS42O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICdQbHVzIEpha2FydGEgU2FucycsICdQbHVzIEpha2FydGEgU2Fucy1mYWxsYmFjaycsICdBcmlhbCcsIHNhbnMtc2VyaWY7XG4kZm9udC1zaXplLXNtOiAxLjJyZW07XG4kZm9udC1zaXplLWxnOiAkZm9udC1zaXplLWJhc2UgKiAxLjI1O1xuJGZvbnQtc2l6ZS1sYXJnZXI6ICRmb250LXNpemUtYmFzZSAqIDEuNTsgLy8gJGg0LWZvbnQtc2l6ZTtcbiRmb250LXNpemUtbGFyZ2VzdDogJGZvbnQtc2l6ZS1iYXNlICogMjsgLy8gJGgyLWZvbnQtc2l6ZTtcblxuJGxlZ2VuZC1mb250LXNpemU6IDJyZW07XG4kbGVnZW5kLW1hcmdpbi1ib3R0b206IDJyZW07XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiA3MDA7XG5cbi8vIHR5cG9cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAxZW07XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDcwMDtcblxuLy8gY29sb3JzXG4kcHJpbWFyeTogIzMzMzM3MjtcbiRwcmltYXJ5LWRhcms6ICMyMzIzNTI7XG4kcHJpbWFyeS1taWQ6ICNlOGU4ZmQ7XG4kcHJpbWFyeS1saWdodDogI2ViZWJmMTtcbiRwcmltYXJ5LWdyYXk6ICNmMWYxZjE7XG4kcHJpbWFyeS1yZWQ6ICNhZjMyMzI7XG4kc2Vjb25kYXJ5OiAjMjMyMzUyO1xuJGxpZ2h0OiAjZmZmO1xuJGRhcms6ICMwMDA7XG4kYm9keS1iZzogI2Y4ZjlmYztcblxuJGdyZWVuOiAjMDU4ODAyO1xuJGdyZWVuLWRhcms6ICMxODgwMzg7XG4kZ3JlZW4tc3A6IHJnYigzLCAxODEsIDApO1xuJGdyZWVuLWRhcmstc2VtaS10cmFuc3A6IHJnYigyNCwgMTI4LCA1NiwgMC4xKTtcblxuJHRoZW1lLWNvbG9yczogbWFwLm1lcmdlKFxuICAgIGFzZ2FyZC12YXJpYWJsZXMuJHRoZW1lLWNvbG9ycyxcbiAgICAoXG4gICAgICAgIHByaW1hcnk6ICRwcmltYXJ5LFxuICAgICAgICBwcmltYXJ5LWRhcms6ICRwcmltYXJ5LWRhcmssXG4gICAgICAgIHByaW1hcnktbWlkOiAkcHJpbWFyeS1taWQsXG4gICAgICAgIHByaW1hcnktbGlnaHQ6ICRwcmltYXJ5LWxpZ2h0LFxuICAgICAgICBwcmltYXJ5LWdyYXk6ICRwcmltYXJ5LWdyYXksXG4gICAgICAgIHByaW1hcnktcmVkOiAkcHJpbWFyeS1yZWQsXG4gICAgICAgIHByaW1hcnktZ3JlZW46ICRncmVlbixcbiAgICAgICAgc2Vjb25kYXJ5OiAkc2Vjb25kYXJ5LFxuICAgICAgICBsaWdodDogJGxpZ2h0LFxuICAgICAgICBkYXJrOiAkZGFyayxcbiAgICAgICAgZGFyay1zZW1pLXRyYW5zcDogcmdiKDAsIDAsIDAsIDAuMSksXG4gICAgICAgIGJhc2UtYmc6ICRsaWdodCxcbiAgICAgICAgYmFzZS10ZXh0OiAkZGFyayxcbiAgICAgICAgbGluazogJHByaW1hcnksXG4gICAgICAgIHN1Y2Nlc3M6ICM4ZWQ2MDksXG4gICAgICAgIHN1Y2Nlc3MtYmc6ICNlOGYxZDksXG4gICAgICAgIHN1Y2Nlc3MtdGV4dDogJGRhcmssXG4gICAgICAgIGluZm86ICM5Y2I1ZTEsXG4gICAgICAgIGluZm8tYmc6ICNkZGVkZjMsXG4gICAgICAgIGluZm8tdGV4dDogJGRhcmssXG4gICAgICAgIHdhcm5pbmc6ICMyMzliYzgsXG4gICAgICAgIHdhcm5pbmctYmc6ICM5Y2I1ZTEsXG4gICAgICAgIHdhcm5pbmctdGV4dDogJGRhcmssXG4gICAgICAgIGRhbmdlcjogI2UyNjk2OSxcbiAgICAgICAgZGFuZ2VyLWJnOiAjZjZkZmRmLFxuICAgICAgICBkYW5nZXItdGV4dDogJGRhcmssXG4gICAgICAgIHN0YXItcmF0aW5nLWJnOiAjZmIwLFxuICAgICAgICBpbi1zdG9jazogJGdyZWVuLFxuICAgICAgICBvdXQtb2Ytc3RvY2s6ICNlMjY5NjksXG4gICAgICAgIHByZW9yZGVyOiAjZWFiMDAwLFxuICAgICAgICAvLyAxMCUgb2YgaW4tc3RvY2sgY29sb3VyXG4gICAgICAgIGluLXN0b2NrLWJnOiByZ2IoNSwgMTM2LCAyLCAwLjEpLFxuICAgICAgICBncmF5LTEwMDogI2YzZjNmMyxcbiAgICAgICAgZ3JheS0yMDA6ICNkZWRlZGUsXG4gICAgICAgIGdyYXktMzAwOiAjZDBkMGQwLFxuICAgICAgICBncmF5LTQwMDogI2IxYjFiMSxcbiAgICAgICAgZ3JheS02MDA6ICM3NDc0NzQsXG4gICAgICAgIGdyYXktNzAwOiAjNGQ0ZDRkLFxuICAgICAgICBncmF5LTgwMDogIzM4MzgzOCxcbiAgICAgICAgZ3JheS05MDA6ICMyNjI2MjYsXG4gICAgICAgIGdyYXktc2VtaS10cmFuc3A6IHJnYigyMCwgOTIsIDEyOCwgMC4xKSxcbiAgICAgICAgc2F2aW5nLWNvbG9yOiByZ2IoMjQsIDEyOCwgNTYsIDEpLFxuICAgICAgICBzYXZpbmctY29sb3ItYmc6ICRncmVlbi1kYXJrLXNlbWktdHJhbnNwLFxuICAgICAgICB2b3VjaGVyLWJnOiAjZDhlZGY3XG4gICAgKVxuKTtcbi8vIGJvb3RzdHJhcCB2YXJpYWJsZXMgZW5kXG5cbiR0aGVtZS1ncmFkaWVudHM6IChcbiAgICAncHJpbWFyeS1iZyc6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1kYXJrJyksIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKSlcbik7XG5cbiRsYWJlbC1naWZ0LWNvbG9yOiAjMDBhZWEzO1xuJGxhYmVsLXVzZWQtcHJvZHVjdC1jb2xvcjogI2VhYjAwMDtcbiRsYWJlbC1naWZ0LWJnLWNvbG9yOiAjZTZmYmYzO1xuXG4vLyBzaG9waW8gdmFyaWFibGVzXG4kZm9udC1wYXRoOiAnL2Fzc2V0cy9lc2hvcC5zZXRvcy5jei9mb250JztcblxuJGgxLWZvbnQtc2l6ZTogY2xhbXAoM3JlbSwgNnZ3LCA0cmVtKTsgLy8gJGZvbnQtc2l6ZS1iYXNlICogMi41O1xuJGgyLWZvbnQtc2l6ZTogMy42cmVtOyAvLyBDdXN0b20gZm9udCBzaXplIGJ5IGRlc2lnblxuJGgzLWZvbnQtc2l6ZTogMnJlbTsgLy8gJGZvbnQtc2l6ZS1iYXNlICogMS43NTtcbiRoNC1mb250LXNpemU6IDEuOHJlbTtcbiRoNS1mb250LXNpemU6IDEuNnJlbTtcbiRoNi1mb250LXNpemU6IDEuNnJlbTtcblxuJGJ0bjogbWFwLm1lcmdlKFxuICAgIGFzZ2FyZC12YXJpYWJsZXMuJGJ0bixcbiAgICAoXG4gICAgICAgIGJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5JyksXG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpLFxuICAgICAgICBob3Zlci1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1kYXJrJyksXG4gICAgICAgIGhvdmVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdsaWdodCcpLFxuICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtXG4gICAgKVxuKTtcblxuJGJ0bi1kaXNhYmxlZDogbWFwLm1lcmdlKFxuICAgIGFzZ2FyZC12YXJpYWJsZXMuJGJ0bi1kaXNhYmxlZCxcbiAgICAoXG4gICAgICAgIGJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMjAwKSxcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2Jhc2UtdGV4dCcpLFxuICAgICAgICBob3Zlci1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCksXG4gICAgICAgIGhvdmVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdiYXNlLXRleHQnKVxuICAgIClcbik7XG5cbiRidG4tZGFyazogKFxuICAgIGJnLWNvbG9yOiAkZGFyayxcbiAgICBjb2xvcjogI2ZmZixcbiAgICBob3Zlci1iZy1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTkwMCksXG4gICAgaG92ZXItY29sb3I6ICNmZmZcbik7XG5cbiRpbnB1dDogbWFwLm1lcmdlKFxuICAgIGFzZ2FyZC12YXJpYWJsZXMuJGlucHV0LFxuICAgIChcbiAgICAgICAgYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0JyksXG4gICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0yMDAnKSxcbiAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKSxcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMFxuICAgIClcbik7XG5cbiRjaGVja2JveC1jaGVjazogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsXFxcbiAgICA8c3ZnIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcXFxuICAgIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiXFxcbiAgICBmaWxsPVwibm9uZVwiXFxcbiAgICBzdHJva2U9XCIje3JnYmEoJGxpZ2h0LCAxKX1cIlxcXG4gICAgc3Ryb2tlLXdpZHRoPVwiM1wiPlxcXG4gICAgPHBvbHlsaW5lIHBvaW50cz1cIjIwIDYgOSAxNyA0IDEyXCI+PC9wb2x5bGluZT5cXFxuICAgIDwvc3ZnPicpO1xuXG4kcGFzc3dvcmQtc2hvdzogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsXFxcbiAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDU3NiA1MTJcIj5cXFxuICAgIDxwYXRoIGQ9XCJNMjg4IDgwYy02NS4yIDAtMTE4LjggMjkuNi0xNTkuOSA2Ny43Qzg5LjYgMTgzLjUgNjMgMjI2IDQ5LjQgMjU2IDYzIDI4NiA4OS42IDMyOC41IDEyOCAzNjQuM2M0MS4yIDM4LjEgOTQuOCA2Ny43IDE2MCA2Ny43czExOC44LTI5LjYgMTU5LjktNjcuN0M0ODYuNCAzMjguNSA1MTMgMjg2IDUyNi42IDI1NmMtMTMuNi0zMC00MC4yLTcyLjUtNzguNi0xMDguM0M0MDYuOCAxMDkuNiAzNTMuMiA4MCAyODggODB6TTk1LjQgMTEyLjZDMTQyLjUgNjguOCAyMDcuMiAzMiAyODggMzJzMTQ1LjUgMzYuOCAxOTIuNiA4MC42YzQ2LjggNDMuNSA3OC4xIDk1LjQgOTMgMTMxLjEgMy4zIDcuOSAzLjMgMTYuNyAwIDI0LjYtMTQuOSAzNS43LTQ2LjIgODcuNy05MyAxMzEuMUM0MzMuNSA0NDMuMiAzNjguOCA0ODAgMjg4IDQ4MHMtMTQ1LjUtMzYuOC0xOTIuNi04MC42QzQ4LjYgMzU2IDE3LjMgMzA0IDIuNSAyNjguM2MtMy4zLTcuOS0zLjMtMTYuNyAwLTI0LjZDMTcuMyAyMDggNDguNiAxNTYgOTUuNCAxMTIuNnpNMjg4IDMzNmM0NC4yIDAgODAtMzUuOCA4MC04MHMtMzUuOC04MC04MC04MGgtMmMxLjMgNS4xIDIgMTAuNSAyIDE2IDAgMzUuMy0yOC43IDY0LTY0IDY0LTUuNSAwLTEwLjktLjctMTYtMnYyYzAgNDQuMiAzNS44IDgwIDgwIDgwem0wLTIwOGExMjggMTI4IDAgMSAxIDAgMjU2IDEyOCAxMjggMCAxIDEgMC0yNTZ6XCIvPlxcXG4gICAgPC9zdmc+Jyk7XG5cbiRhbmdsZS1yaWdodDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsXFxcbiAgICA8c3ZnIHZpZXdCb3g9XCIwIDAgMzIwIDUxMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cXFxuICAgIDxwYXRoIGZpbGw9XCIje3JnYmEobWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KSwgMC45OTkpfVwiXFxcbiAgICBkPVwiTTI3OC42IDIzMy40YzEyLjUgMTIuNSAxMi41IDMyLjggMCA0NS4zbC0xNjAgMTYwYy0xMi41IDEyLjUtMzIuOCAxMi41LTQ1LjMgMHMtMTIuNS0zMi44IDAtNDUuM0wyMTAuNyAyNTYgNzMuNCAxMTguNmMtMTIuNS0xMi41LTEyLjUtMzIuOCAwLTQ1LjNzMzIuOC0xMi41IDQ1LjMgMGwxNjAgMTYwelwiLz5cXFxuICAgIDwvc3ZnPicpO1xuXG4kZGlhZ29uYWwtbGluZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsXFxcbiAgICA8c3ZnIHZpZXdCb3g9XCIwIDAgMTAwIDEwMFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPVwibm9uZVwiPlxcXG4gICAgPGxpbmUgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZT1cIiN7cmdiYShtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKSwgMC45OTkpfVwiXFxcbiAgICB4MT1cIjBcIiB5MT1cIjBcIiB4Mj1cIjEwMFwiIHkyPVwiMTAwXCIgdmVjdG9yLWVmZmVjdD1cIm5vbi1zY2FsaW5nLXN0cm9rZVwiLz5cXFxuICAgIDwvc3ZnPicpO1xuXG4kYnJlYWRjcnVtYnM6IG1hcC5tZXJnZShcbiAgICBhc2dhcmQtdmFyaWFibGVzLiRicmVhZGNydW1icyxcbiAgICAoXG4gICAgICAgIGJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTEwMCcpLFxuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS04MDAnKSxcbiAgICAgICAgYWN0aXZlLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYXJrJylcbiAgICApXG4pO1xuXG4vLyBoZWFkZXJcbiRoZWFkZXItbmF2LWhlaWdodDogNS41cmVtOyAvLyBoZWlnaHQgb24gc21hbGwgc2NyZWVuc1xuJGhlYWRlci1uYXYtZGVza3RvcC1oZWlnaHQ6IDE0LjVyZW07IC8vIGhlaWdodCBvbiBiaWdnZXIgc2NyZWVuc1xuJGhlYWRlci10b3AtbmF2LWRlc2t0b3AtaGVpZ2h0OiAxNC41cmVtOyAvLyBoZWlnaHQgb24gYmlnZ2VyIHNjcmVlbnNcbiRoZWFkZXItbmF2LWJyZWFrcG9pbnQ6ICd4bCc7IC8vIGJyZWFrcG9pbnQgd2hlbiBuYXYgY2hhbmdlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wXG4kaGVhZGVyLXNlYXJjaC1kZXNrdG9wLWhlaWdodDogNXJlbTtcbiRoZWFkZXItc2VhcmNoLWRlc2t0b3Atd2lkdGg6IDEwMCU7XG5cbiRzY3JvbGxiYXItY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcblxuLy8gbWVudVxuJG1lbnUtaXRlbS1kZXNrdG9wLXBhZGRpbmc6IDFyZW07XG4kbWVudS1zZWNvbmRhcnktbGlua3MtYmc6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2xpZ2h0Jyk7XG4kbWVudS1zdWJtZW51LXNpbmdsZS1jb2x1bW4tbWluOiA5O1xuXG4vLyBmb290ZXJcbiRmb290ZXItYmxvY2stY29sbGFwc2VkLWhlaWdodDogNi41cmVtO1xuXG4vLyB2b3VjaGVyIFBERlxuLy8gTk9URTogaWYgdGhlIGZvbnRzIHVzZWQgaGVyZSBhcmUgbm9uLXN0YW5kYXJkLCB0aGVuIHRoZXkgbmVlZCB0byBiZSB1cGxvYWRlZCBhbmQgc3BlY2lmaWVkIHNlcGFyYXRlbHkgaW4gdGhlXG4vLyBtUERGIGluaXRpYWxpemF0aW9uIChzZWUgdXNhZ2UgaW4gU0Qgb3Igc3BlYWsgd2l0aCBEQiA6KSlcbiR2b3VjaGVyOiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kdm91Y2hlcixcbiAgICAoXG4gICAgICAgIHByaW1hcnktYmFja2dyb3VuZC1jb2xvcjogI2ZmZixcbiAgICAgICAgcHJpbWFyeS1jb2xvcjogIzQ0NCxcbiAgICAgICAgc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3I6ICNkZGQsXG4gICAgICAgIHNlY29uZGFyeS1jb2xvcjogIzQ0NCxcbiAgICAgICAgYmxvY2staGlnaGxpZ2h0LWJhY2tncm91bmQtY29sb3I6ICNmMGYwZjAsXG4gICAgICAgIGJsb2NrLWhpZ2hsaWdodC1jb2xvcjogIzQ0NCxcbiAgICAgICAgYmFzZS1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSxcbiAgICAgICAgYmFzZS1saW5lLWhlaWdodDogMS41LFxuICAgICAgICBoZWFkaW5nLWZvbnQ6ICRmb250LWZhbWlseS1iYXNlLFxuICAgICAgICBib2R5LWZvbnQ6ICRmb250LWZhbWlseS1iYXNlLFxuICAgICAgICBsb2dvLW1heC1oZWlnaHQ6IDEwbW1cbiAgICApXG4pO1xuXG4vLyBGdWxsLXdpZHRoIHNsaWRlciBpbWFnZSBkaW1lbnNpb25zIChhcHBsaWVzIHRvIGRlc2t0b3Agb25seSlcbi8vIGltYWdlLXdpZHRoOiBpbWFnZSBzaXplXG4vLyBpbWFnZS1jb250ZW50LWFyZWEtd2lkdGg6IHdoZXJlIHdlIGNhbiBzYWZlbHkgY3JvcCAoZnJvbSB0aGUgZnVsbCBzaXplIGltYWdlKVxuJHNsaWRlci1kZXNrdG9wOiBtYXAubWVyZ2UoXG4gICAgYXNnYXJkLXZhcmlhYmxlcy4kc2xpZGVyLWRlc2t0b3AsXG4gICAgKFxuICAgICAgICBpbWFnZS13aWR0aDogMTkwMHB4LFxuICAgICAgICBpbWFnZS1jb250ZW50LWFyZWEtd2lkdGg6IDEyMDBweFxuICAgIClcbik7XG4vLyBzaG9waW8gdmFyaWFibGVzIGVuZFxuXG4vLyBDU1MgdmFyaWFibGVzXG4vLyBtb3ZlIHRvIGFwcC5zY3NzXG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5wcm9kdWN0LWRldGFpbCB7XG4gICAgJl9fbWFpbiB7XG4gICAgICAgICYtaW1hZ2Uge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAuZW1ibGFfX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgJi0tcHJldiB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLS1uZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmVtYmxhX19zbGlkZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgPiAqOm5vdCguZW1ibGFfX3NsaWRlLS1zcGlubmVyKSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eSBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhLFxuICAgICAgICAgICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi0tc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHNwaW5uZXIgMC43NXMgaW5maW5pdGUgbGluZWFyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIGxhenktbG9hZGluZyBpbWFnZXNcbiAgICAgICAgICAgICAgICAmOndoZXJlKDpub3QoLmVtYmxhX19sYXp5LWxvYWQtLWhhcy1sb2FkZWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG5cbiAgICAgICAgICAgICAgICAgICAgPiAqOm5vdCguZW1ibGFfX3NsaWRlLS1zcGlubmVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmVtYmxhX19zbGlkZS0tc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWltYWdlcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1ib2R5LWJnKTtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogLTAuNSk7XG4gICAgICAgICAgICBwYWRkaW5nOiBjbGFtcCgxNXB4LCA1dncsIDMwcHgpIGNsYW1wKDE1cHgsIDMuMzMzdncsIDIwcHgpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdzbScpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGh1bWJuYWlsLWltYWdlcyB7XG4gICAgICAgIG1hcmdpbjogY2xhbXAoMTVweCwgNXZ3LCAzMHB4KSBjbGFtcCgtMjBweCwgLTMuMzMzdncsIC0xNXB4KSBjbGFtcCgtMzBweCwgLTV2dywgLTE1cHgpO1xuICAgICAgICBqdXN0aWZ5LXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIHBhZGRpbmc6IGNsYW1wKDE1cHgsIDMuMzMzdncsIDIwcHgpO1xuICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuXG4gICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL29wZXJhdG9yLW5vLXVuc3BhY2VkXG4gICAgICAgIEBzdXBwb3J0cyBzZWxlY3Rvcig6aGFzKD4gW3N0eWxlKj0nbm9uZSddKSkge1xuICAgICAgICAgICAgJjpoYXMoPiBbc3R5bGUqPSdub25lJ10pIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1saXN0IHtcbiAgICAgICAgICAgIC0tdGh1bWJuYWlsLXdpZHRoOiA5NXB4O1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgodmFyKC0tdGh1bWJuYWlsLXdpZHRoKSwgMWZyKSk7XG4gICAgICAgICAgICBnYXA6IDAgMXB4O1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyIDBmcjtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDBmcjtcbiAgICAgICAgICAgIGdyaWQtYXV0by1yb3dzOiAwZnI7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3MgMC41cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICBnYXAgMC4zcyBlYXNlLW91dDtcblxuICAgICAgICAgICAgJi5zaG93LWFsbC10aHVtYm5haWxzIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byAxZnI7XG4gICAgICAgICAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IGF1dG87XG4gICAgICAgICAgICAgICAgZ2FwOiAxcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB2YXIoLS10aHVtYm5haWwtd2lkdGgpO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS10aHVtYm5haWwtd2lkdGgpIC0gMnB4KTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGModmFyKC0tdGh1bWJuYWlsLXdpZHRoKSAtIDJweCk7XG5cbiAgICAgICAgICAgICAgICAgICAgcGljdHVyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk2JTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogOTYlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAudGh1bWJuYWlsLWxhc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAgICAgICAgICAgICAgICAgJl9fdGh1bWJuYWlsLWltYWdlcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmLXRyaWdnZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAtNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyNTUsIDI1NSwgMjU1LCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hY3RpdmUtdGh1bWIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAmX192YXJpYW50cyB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMjAwKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICAgICAgLmZvcm0taW5wdXQge1xuICAgICAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsgLmZvcm0taW5wdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLWZpZWxkIHtcbiAgICAgICAgICAgICAgICAmLWJ1dHRvbnMtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ibG9jazogNnB4O1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA2MnB4OyAvLyBzYW1lIGFzIGJ1dHRvbnMgaGVpZ2h0IHRvIHByZXZlbnQganVtcGluZ1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gaW1hZ2UgdmFyaWFudHNcbiAgICAgICAgLnRyaWdnZXItZGlzYWJsZWQtLXNlbGVjdC10by10cmlnZ2VycyB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRkaWFnb25hbC1saW5lO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50cmlnZ2VyLS1zZWxlY3QtdG8tdHJpZ2dlcnMtaW1hZ2Uge1xuICAgICAgICAgICAgLS10aHVtYm5haWwtd2lkdGg6IDgwcHg7XG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tdGh1bWJuYWlsLXdpZHRoKTtcbiAgICAgICAgICAgIG1heC13aWR0aDogdmFyKC0tdGh1bWJuYWlsLXdpZHRoKTtcblxuICAgICAgICAgICAgLnZhcmlhbnQtb3B0aW9uLWl0ZW0taW5uZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogdmFyKC0tdGh1bWJuYWlsLXdpZHRoKTtcblxuICAgICAgICAgICAgICAgIHBpY3R1cmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA5NiU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5NiU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBbaWQ9J3ZhcmlhbnRDb2xvdXJPcHRpb25zJ10ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC52YXJpYW50LXBhcmFtZXRlci1uYW1lIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2Nzcy9kb2xsYXItdmFyaWFibGUtZW1wdHktbGluZS1iZWZvcmVcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvZG91YmxlLXNsYXNoLWNvbW1lbnQtZW1wdHktbGluZS1iZWZvcmVcbkB1c2UgJ3Nhc3M6bWFwJztcblxuLy8gYm9vdHN0cmFwIHZhcmlhYmxlc1xuLy8gT3B0aW9uc1xuJGVuYWJsZS1kYXJrLW1vZGU6IGZhbHNlO1xuJGVuYWJsZS1yb3VuZGVkOiBmYWxzZTtcbiRlbmFibGUtdHJhbnNpdGlvbnM6IGZhbHNlO1xuLy8gJGVuYWJsZS1ncmlkLWNsYXNzZXM6IGZhbHNlO1xuLy8gJGVuYWJsZS1jb250YWluZXItY2xhc3NlczogZmFsc2U7XG4kZW5hYmxlLWJ1dHRvbi1wb2ludGVyczogZmFsc2U7XG4vLyAkZW5hYmxlLXJmczogZmFsc2U7XG4vLyAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6IGZhbHNlO1xuLy8gJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzOiBmYWxzZTtcbiRlbmFibGUtc21vb3RoLXNjcm9sbDogdHJ1ZTtcblxuLy8gbGF5b3V0XG4kZ3JpZC1icmVha3BvaW50czogKFxuICAgIHhzOiAwLFxuICAgIG1zOiAzNjBweCxcbiAgICBzOiA0ODBweCxcbiAgICBzbTogNTc2cHgsXG4gICAgbWQ6IDc2OHB4LFxuICAgIGxnOiA5OTJweCxcbiAgICB4bDogMTIwMHB4LFxuICAgIHh4bDogMTM2NnB4XG4pICFkZWZhdWx0O1xuXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgICBsZzogOTYwcHgsXG4gICAgeGw6IDExNDBweCxcbiAgICB4eGw6IDEzMDBweFxuKSAhZGVmYXVsdDtcblxuLy8gc3BhY2luZ1xuJGNvbnRhaW5lci1wYWRkaW5nLXg6IDNyZW0gIWRlZmF1bHQ7XG4kY2FudmFzLXBhZGRpbmcteTogNHJlbSAhZGVmYXVsdDtcbiRjYW52YXMtcGFkZGluZy15LW1kOiA2cmVtICFkZWZhdWx0O1xuJGNhbnZhcy1wYWRkaW5nLXkteHhsOiA3cmVtICFkZWZhdWx0O1xuXG4vLyBmb250XG4kZm9udC1zaXplLXJvb3Q6IDYyLjUlICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1iYXNlOiAxLjRyZW0gIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogMS42ICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICdCZSBWaWV0bmFtIFBybycsICdCZSBWaWV0bmFtIFBybyBGYWxsYmFjaycsICdBcmlhbCcsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1zaXplLXNtOiAxLjJyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZXI6ICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDsgLy8gJGg0LWZvbnQtc2l6ZTtcbiRmb250LXNpemUtbGFyZ2VzdDogJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDsgLy8gJGgyLWZvbnQtc2l6ZTtcblxuJGxlZ2VuZC1mb250LXNpemU6IDJyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLW1hcmdpbi1ib3R0b206IDJyZW0gIWRlZmF1bHQ7XG4kbGVnZW5kLWZvbnQtd2VpZ2h0OiA3MDAgIWRlZmF1bHQ7XG5cbi8vIHR5cG9cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAxZW0gIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDcwMCAhZGVmYXVsdDtcblxuLy8gY29sb3JzXG4kcHJpbWFyeTogIzhlZDYwOSAhZGVmYXVsdDtcbiRwcmltYXJ5LWRhcms6ICM4MWM3MDAgIWRlZmF1bHQ7XG4kcHJpbWFyeS1saWdodDogI2VlZmJkNyAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICMwMDZhYWYgIWRlZmF1bHQ7XG4kbGlnaHQ6ICNmZmYgIWRlZmF1bHQ7XG4kZGFyazogIzAwMCAhZGVmYXVsdDtcblxuJHRoZW1lLWNvbG9yczogKFxuICAgIHByaW1hcnk6ICRwcmltYXJ5LFxuICAgIHByaW1hcnktZGFyazogJHByaW1hcnktZGFyayxcbiAgICBwcmltYXJ5LWxpZ2h0OiAkcHJpbWFyeS1saWdodCxcbiAgICBzZWNvbmRhcnk6ICRzZWNvbmRhcnksXG4gICAgbGlnaHQ6ICRsaWdodCxcbiAgICBkYXJrOiAkZGFyayxcbiAgICBiYXNlLWJnOiAkbGlnaHQsXG4gICAgYmFzZS10ZXh0OiAkZGFyayxcbiAgICBsaW5rOiAkc2Vjb25kYXJ5LFxuICAgIHN1Y2Nlc3M6ICM4ZWQ2MDksXG4gICAgc3VjY2Vzcy1iZzogI2U4ZjFkOSxcbiAgICBzdWNjZXNzLXRleHQ6ICRkYXJrLFxuICAgIGluZm86ICM5Y2I1ZTEsXG4gICAgaW5mby1iZzogI2RkZWRmMyxcbiAgICBpbmZvLXRleHQ6ICRkYXJrLFxuICAgIHdhcm5pbmc6ICMyMzliYzgsXG4gICAgd2FybmluZy1iZzogIzljYjVlMSxcbiAgICB3YXJuaW5nLXRleHQ6ICRkYXJrLFxuICAgIGRhbmdlcjogI2UyNjk2OSxcbiAgICBkYW5nZXItYmc6ICNmNmRmZGYsXG4gICAgZGFuZ2VyLXRleHQ6ICRkYXJrLFxuICAgIGRhbmdlci1kYXJrZXI6ICNkZjE2MDcsXG4gICAgc3Rhci1yYXRpbmctYmc6ICNmYjAsXG4gICAgaW4tc3RvY2s6ICM1MTgzMDIsXG4gICAgZ3JheS0xMDA6ICNmM2YzZjMsXG4gICAgZ3JheS0yMDA6ICNkZWRlZGUsXG4gICAgZ3JheS00MDA6ICNiMWIxYjEsXG4gICAgZ3JheS02MDA6ICM2ZTZlNmUsXG4gICAgZ3JheS05MDA6ICMyNjI2MjZcbikgIWRlZmF1bHQ7XG4vLyBib290c3RyYXAgdmFyaWFibGVzIGVuZFxuXG4vLyBzaG9waW8gdmFyaWFibGVzXG4kZm9udC1wYXRoOiAnL2ZvbnQnICFkZWZhdWx0O1xuJHByb2R1Y3QtYXZhaWxhYmlsaXR5OiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNjAwKTtcblxuJGgxLWZvbnQtc2l6ZTogY2xhbXAoM3JlbSwgNnZ3LCA0cmVtKSAhZGVmYXVsdDsgLy8gJGZvbnQtc2l6ZS1iYXNlICogMi41O1xuJGgyLWZvbnQtc2l6ZTogMi40cmVtICFkZWZhdWx0OyAvLyAkZm9udC1zaXplLWJhc2UgKiAyO1xuJGgzLWZvbnQtc2l6ZTogMnJlbSAhZGVmYXVsdDsgLy8gJGZvbnQtc2l6ZS1iYXNlICogMS43NTtcbiRoNC1mb250LXNpemU6IDEuOHJlbSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6IDEuNnJlbSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDEuNnJlbSAhZGVmYXVsdDtcblxuJGJ0bjogKFxuICAgIGJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5JyksXG4gICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2Jhc2UtdGV4dCcpLFxuICAgIGhvdmVyLWJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LWRhcmsnKSxcbiAgICBob3Zlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnYmFzZS10ZXh0JyksXG4gICAgYm9yZGVyLXJhZGl1czogMFxuKSAhZGVmYXVsdDtcblxuJGJ0bi1kaXNhYmxlZDogKFxuICAgIGJnLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktMjAwKSxcbiAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnYmFzZS10ZXh0JyksXG4gICAgaG92ZXItYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApLFxuICAgIGhvdmVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdiYXNlLXRleHQnKVxuKSAhZGVmYXVsdDtcblxuJGlucHV0OiAoXG4gICAgYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMTAwJyksXG4gICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTIwMCcpLFxuICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYXJrJyksXG4gICAgYm9yZGVyLXJhZGl1czogMFxuKSAhZGVmYXVsdDtcblxuJGNoZWNrYm94LWNoZWNrOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCxcXFxuICAgIDxzdmcgdmlld0JveD1cIjAgMCAyNCAyNFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxcXG4gICAgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCJcXFxuICAgIGZpbGw9XCJub25lXCJcXFxuICAgIHN0cm9rZT1cIiN7cmdiYSgkbGlnaHQsIDEpfVwiXFxcbiAgICBzdHJva2Utd2lkdGg9XCIzXCI+XFxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiMjAgNiA5IDE3IDQgMTJcIj48L3BvbHlsaW5lPlxcXG4gICAgPC9zdmc+Jyk7XG5cbiRwYXNzd29yZC1zaG93OiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCxcXFxuICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIj5cXFxuICAgIDxwYXRoIGQ9XCJNMSAxMnM0LTggMTEtOCAxMSA4IDExIDgtNCA4LTExIDgtMTEtOC0xMS04elwiPjwvcGF0aD48Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjNcIj48L2NpcmNsZT5cXFxuICAgIDwvc3ZnPicpO1xuXG4kcGFzc3dvcmQtc2hvdy1hY3RpdmU6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLFxcXG4gICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiPlxcXG4gICAgPHBhdGggZD1cIk0xNy45NCAxNy45NEExMC4wNyAxMC4wNyAwIDAgMSAxMiAyMGMtNyAwLTExLTgtMTEtOGExOC40NSAxOC40NSAwIDAgMSA1LjA2LTUuOTRNOS45IDQuMjRBOS4xMiA5LjEyIDAgMCAxIDEyIDRjNyAwIDExIDggMTEgOGExOC41IDE4LjUgMCAwIDEtMi4xNiAzLjE5bS02LjcyLTEuMDdhMyAzIDAgMSAxLTQuMjQtNC4yNFwiPjwvcGF0aD48bGluZSB4MT1cIjFcIiB5MT1cIjFcIiB4Mj1cIjIzXCIgeTI9XCIyM1wiPjwvbGluZT5cXFxuICAgIDwvc3ZnPicpO1xuXG4kYW5nbGUtcmlnaHQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLFxcXG4gICAgPHN2ZyB2aWV3Qm94PVwiMCAwIDMyMCA1MTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XFxcbiAgICA8cGF0aCBmaWxsPVwiI3tyZ2JhKG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSksIDAuOTk5KX1cIlxcXG4gICAgZD1cIk0yNzguNiAyMzMuNGMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM2wtMTYwIDE2MGMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNMMjEwLjcgMjU2IDczLjQgMTE4LjZjLTEyLjUtMTIuNS0xMi41LTMyLjggMC00NS4zczMyLjgtMTIuNSA0NS4zIDBsMTYwIDE2MHpcIi8+XFxcbiAgICA8L3N2Zz4nKTtcblxuJGRpYWdvbmFsLWxpbmU6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLFxcXG4gICAgPHN2ZyB2aWV3Qm94PVwiMCAwIDEwMCAxMDBcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgcHJlc2VydmVBc3BlY3RSYXRpbz1cIm5vbmVcIj5cXFxuICAgIDxsaW5lIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2U9XCIje3JnYmEobWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTQwMCksIDAuOTk5KX1cIlxcXG4gICAgeDE9XCIwXCIgeTE9XCIwXCIgeDI9XCIxMDBcIiB5Mj1cIjEwMFwiIHZlY3Rvci1lZmZlY3Q9XCJub24tc2NhbGluZy1zdHJva2VcIi8+XFxcbiAgICA8L3N2Zz4nKTtcblxuJGJyZWFkY3J1bWJzOiAoXG4gICAgYmctY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktMTAwJyksXG4gICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2RhcmsnKSxcbiAgICBhY3RpdmUtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ2dyYXktNjAwJyksXG4gICAgYnJlYWtwb2ludC1kb3duOiBtYXAuZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAnbGcnKVxuKSAhZGVmYXVsdDtcblxuLy8gaGVhZGVyXG4kaGVhZGVyLWZpeGVkOiB0cnVlICFkZWZhdWx0O1xuJGhlYWRlci1uYXYtaGVpZ2h0OiA1LjVyZW0gIWRlZmF1bHQ7IC8vIGhlaWdodCBvbiBzbWFsbCBzY3JlZW5zXG4kaGVhZGVyLW5hdi1kZXNrdG9wLWhlaWdodDogMTYuOHJlbSAhZGVmYXVsdDsgLy8gaGVpZ2h0IG9uIGJpZ2dlciBzY3JlZW5zXG4kaGVhZGVyLXRvcC1uYXYtZGVza3RvcC1oZWlnaHQ6IDEwLjhyZW0gIWRlZmF1bHQ7IC8vIGhlaWdodCBvbiBiaWdnZXIgc2NyZWVuc1xuJGhlYWRlci1uYXYtYnJlYWtwb2ludDogJ3hsJyAhZGVmYXVsdDsgLy8gYnJlYWtwb2ludCB3aGVuIG5hdiBjaGFuZ2VzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3BcbiRoZWFkZXItZml4ZWQtYWRkaXRpb25hbDogKFxuICAgIG1vYmlsZS1icmVha3BvaW50LXVwOiBtYXAuZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkaGVhZGVyLW5hdi1icmVha3BvaW50KSxcbiAgICBoZWFkZXItbW9iaWxlOiB0cnVlLFxuICAgIGhlYWRlci1kZXNrdG9wOiBmYWxzZSxcbiAgICB0b3AtYmFubmVyLW1vYmlsZTogZmFsc2UsXG4gICAgdG9wLWJhbm5lci1kZXNrdG9wOiBmYWxzZVxuKSAhZGVmYXVsdDtcbiRoZWFkZXItc2VhcmNoLWRlc2t0b3AtaGVpZ2h0OiA1LjRyZW0gIWRlZmF1bHQ7XG4kaGVhZGVyLXNlYXJjaC1kZXNrdG9wLXdpZHRoOiA0MnJlbSAhZGVmYXVsdDtcblxuJHNjcm9sbGJhci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeScpICFkZWZhdWx0O1xuXG4vLyBtZW51XG4kbWVudS1pdGVtLWRlc2t0b3AtcGFkZGluZzogMXJlbTtcbiRtZW51LXNlY29uZGFyeS1saW5rcy1iZzogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1kYXJrJykgIWRlZmF1bHQ7XG4kbWVudS1zdWJtZW51LXNpbmdsZS1jb2x1bW4tbWluOiA5ICFkZWZhdWx0O1xuXG4vLyBmb290ZXJcbiRmb290ZXItYmxvY2stY29sbGFwc2VkLWhlaWdodDogNi41cmVtICFkZWZhdWx0O1xuXG4vLyB2b3VjaGVyIFBERlxuLy8gTk9URTogaWYgdGhlIGZvbnRzIHVzZWQgaGVyZSBhcmUgbm9uLXN0YW5kYXJkLCB0aGVuIHRoZXkgbmVlZCB0byBiZSB1cGxvYWRlZCBhbmQgc3BlY2lmaWVkIHNlcGFyYXRlbHkgaW4gdGhlXG4vLyBtUERGIGluaXRpYWxpemF0aW9uIChzZWUgdXNhZ2UgaW4gU0Qgb3Igc3BlYWsgd2l0aCBEQiA6KSlcbiR2b3VjaGVyOiAoXG4gICAgcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmLFxuICAgIHByaW1hcnktY29sb3I6ICM0NDQsXG4gICAgc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3I6ICNkZGQsXG4gICAgc2Vjb25kYXJ5LWNvbG9yOiAjNDQ0LFxuICAgIGJsb2NrLWhpZ2hsaWdodC1iYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwLFxuICAgIGJsb2NrLWhpZ2hsaWdodC1jb2xvcjogIzQ0NCxcbiAgICBiYXNlLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlLFxuICAgIGJhc2UtbGluZS1oZWlnaHQ6IDEuNSxcbiAgICBoZWFkaW5nLWZvbnQ6ICRmb250LWZhbWlseS1iYXNlLFxuICAgIGJvZHktZm9udDogJGZvbnQtZmFtaWx5LWJhc2UsXG4gICAgbG9nby1tYXgtaGVpZ2h0OiAxMG1tXG4pICFkZWZhdWx0O1xuXG4vLyBGdWxsLXdpZHRoIHNsaWRlciBpbWFnZSBkaW1lbnNpb25zIChhcHBsaWVzIHRvIGRlc2t0b3Agb25seSlcbi8vIGltYWdlLXdpZHRoOiBpbWFnZSBzaXplXG4vLyBpbWFnZS1jb250ZW50LWFyZWEtd2lkdGg6IHdoZXJlIHdlIGNhbiBzYWZlbHkgY3JvcCAoZnJvbSB0aGUgZnVsbCBzaXplIGltYWdlKVxuJHNsaWRlci1kZXNrdG9wOiAoXG4gICAgaW1hZ2Utd2lkdGg6IDE5MDBweCxcbiAgICBpbWFnZS1jb250ZW50LWFyZWEtd2lkdGg6IDEyMDBweFxuKTtcbi8vIHNob3BpbyB2YXJpYWJsZXMgZW5kXG5cbi8vIENTUyB2YXJpYWJsZXMgLSBub3cgYWRkZWQgaW4gYXBwLnNjc3NcbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAmX19wcmljZS1ibG9jayB7XG4gICAgICAgIGJhY2tncm91bmQ6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgYmFzZS1iZyk7XG4gICAgICAgIHBhZGRpbmc6IGNsYW1wKDE1cHgsIDMuMzMzdncsIDIwcHgpO1xuICAgIH1cblxuICAgIC8vIGxheW91dFxuICAgIEBtaXhpbiBwcmljZS1ibG9jay1icmVha3BvaW50IHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICN7bWFwLmdldCgkZ3JpZC1icmVha3BvaW50cywgJ3hsJyl9KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByaWNlLWluZm8tYmxvY2tzIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAwIDEwcHg7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNzBweCBhdXRvIGF1dG8gMWZyO1xuXG4gICAgICAgIEBpbmNsdWRlIHByaWNlLWJsb2NrLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOlxuICAgICAgICAgICAgICAgIGF1dG9cbiAgICAgICAgICAgICAgICAxZnJcbiAgICAgICAgICAgICAgICBtaW5tYXgoYXV0bywgNzBweClcbiAgICAgICAgICAgICAgICBtaW5tYXgoYXV0bywgMjAwcHgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcHJpY2UtaW5mby1ibG9jayB7XG4gICAgICAgICYtaGVhZGluZyB7XG4gICAgICAgICAgICBAZXh0ZW5kICVzci1vbmx5O1xuXG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50cyB7XG4gICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgIH1cblxuICAgICZfX3ByaWNlLWluZm8tc2F2aW5nLWFtb3VudCxcbiAgICAmX19wcmljZS1pbmZvLXNhdmluZy1wZXJjZW50ID4gc3Bhbjpub3QoW2lkXSkge1xuICAgICAgICBAZXh0ZW5kICVzci1vbmx5O1xuICAgIH1cblxuICAgICZfX3ByaWNlLWluZm8tY29taW5nLXNvb24ge1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgICZfX3ByaWNlLWluZm8tYmVpbmctc29sZC1vbGQtcHJpY2Uge1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDQ7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNjAwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gICAgfVxuXG4gICAgJl9fcHJpY2Uge1xuICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1wcm9kdWN0LWRldGFpbC1wcmljZS1zaXplKTtcbiAgICAgICAgfVxuXG4gICAgICAgIFtpZD0ncHJpY2VFeGNsVmF0J10ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTYwMCk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogLTAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGVsaXZlcnktZGF0ZSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAzO1xuICAgICAgICBncmlkLXJvdzogNDtcbiAgICB9XG5cbiAgICAmX19wcmljZS1pbmZvLWJlaW5nLXNvbGQtcGVyY2VudGFnZS1kaXNjb3VudCB7XG4gICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICBncmlkLWNvbHVtbjogMyAvIHNwYW4gMjtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuXG4gICAgICAgICoge1xuICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsX19wcmljZS1pbmZvLWJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGRhbmdlci1kYXJrZXIpO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYXZhaWxhYmlsaXR5IHtcbiAgICAgICAgZ3JpZC1yb3c6IDM7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiA0O1xuICAgICAgICBwYWRkaW5nLXRvcDogMC43NXJlbTtcblxuICAgICAgICAuc3RvY2sge1xuICAgICAgICAgICAgJi0tYXZhaWxhYmxlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgICY6aGFzKFtjbGFzcyo9J3N0b2NrJ10pIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOmxpbmssXG4gICAgICAgICAgICAgICAgJjp2aXNpdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzKj0nc3RvY2snXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcyo9J3N0b2NrJ10ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsX19wcmljZS1pbmZvLWJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgLnBvcG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgICAgIHRvcDogLTAuMXJlbTtcblxuICAgICAgICAgICAgICAgIC5wb3BvdmVyX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IsICN7bWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcXVhbnRpdHksXG4gICAgJl9fc3VibWl0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gICAgfVxuXG4gICAgJl9fcXVhbnRpdHkge1xuICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgZ3JpZC1yb3c6IDU7XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsX19jb250ZW50czpoYXMoLnN1Ym1pdFtkaXNhYmxlZF0pICYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXNyLW9ubHk7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCRpbnB1dCwgYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1Ym1pdCB7XG4gICAgICAgIGdyaWQtcm93OiA1O1xuICAgICAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMztcblxuICAgICAgICAuc3VibWl0IHtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIHByaWNlLWJsb2NrLWJyZWFrcG9pbnQge1xuICAgICAgICAmX19wcmljZS1pbmZvLWJlaW5nLXNvbGQtb2xkLXByaWNlIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcHJpY2Uge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmX19hdmFpbGFiaWxpdHkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19kZWxpdmVyeS1kYXRlIHtcbiAgICAgICAgICAgIGdyaWQtcm93OiA1O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcXVhbnRpdHksXG4gICAgICAgICZfX3N1Ym1pdCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmX19xdWFudGl0eSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VibWl0IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiA0O1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDEgLyBzcGFuIDM7XG4gICAgICAgIH1cblxuICAgICAgICAmX19wcmljZS1pbmZvLWJlaW5nLXNvbGQtcGVyY2VudGFnZS1kaXNjb3VudCB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAmX19hY3Rpb25zIHtcbiAgICAgICAgJi1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiA1cHg7XG5cbiAgICAgICAgICAgICY6bGluayxcbiAgICAgICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGluayk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOndoZXJlKFtkaXNhYmxlZF0pIHtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTYwMCk7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkYnRuLWRpc2FibGVkLCBncmF5LTYwMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgIGhlaWdodDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWN0aW9uIHtcbiAgICAgICAgKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5uYXYtdGFicyB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAxMHB4O1xuICAgIHBhZGRpbmctdG9wOiAkc3BhY2VyICsgMjtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdncmF5LTEwMCcpO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXgtd2lkdGg6IDI1JTtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogbm9ybWFsO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCBjbGFtcCg1cHgsIDV2dywgMjBweCk7XG5cbiAgICAgICAgICAgICY6bGluayxcbiAgICAgICAgICAgICY6dmlzaXRlZCxcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYWN0aXZlIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGJhc2UtYmcpO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50YWJzIHtcbiAgICAmX19zZWN0aW9uIHtcbiAgICAgICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtaW5uZXItY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWhlYWRpbmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNyLW9ubHk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWhlYWRpbmctLWljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuQG1peGluIGFjY29yZGlvbiB7XG4gICAgLnByb2R1Y3QtZGV0YWlsICYge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5uYXYtdGFicyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnRvZ2dsZWQtc2VjdGlvbiB7XG4gICAgICAgIGJvcmRlci1ibG9jay1zdGFydDogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4taW5saW5lOiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIC0wLjUpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAwLjUpO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYmxvY2stZW5kOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMGZyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycyBncmlkLXRlbXBsYXRlLXJvd3MgbGluZWFyO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgJi1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtaGVhZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDAuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgbWluLWhlaWdodDogNnJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAudGFic19fc2VjdGlvbi1oZWFkaW5nLS1pY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAudG9nZ2xlZC1zZWN0aW9uLWhlYWRlciAudGFic19fc2VjdGlvbi1oZWFkaW5nLS1pY29uIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudG9nZ2xlZC1zZWN0aW9uLWlubmVyIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAudG9nZ2xlZC1zZWN0aW9uLWhlYWRlciAudGFic19fc2VjdGlvbi1oZWFkaW5nLS1pY29uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudG9nZ2xlZC1zZWN0aW9uLWlubmVyIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIHJlc2V0IHRhYnMgc2V0dGluZy4uLlxuICAgICYudGFic19fc2VjdGlvbjpub3QoLmFjdGl2ZSkge1xuICAgICAgICBkaXNwbGF5OiB1bnNldDtcbiAgICB9XG5cbiAgICAmLnRhYnNfX3NlY3Rpb24taGVhZGluZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG5bZGF0YS1jb250ZW50PSdhY2NvcmRpb24nXSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uO1xufVxuXG4vLyBTdHlsZSB0aGlzIG9uIG1lZGlhIHF1ZXJ5IHRvbyB0byBwcmV2ZW50IGZsYXNoIG9mIHVuc3R5bGVkIGNvbnRlbnQgKHdhaXRpbmcgZm9yIGRhdGEtY29udGVudCB2YWx1ZSB0byBiZSBzZXQpXG4udGFicyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIEBpbmNsdWRlIGFjY29yZGlvbjtcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5wcm9kdWN0LWRldGFpbCB7XG4gICAgJl9fbWFpbiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIGdhcDogM3JlbSAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgIGdhcDogMnJlbSA0cmVtO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgzMzBweCwgMWZyKSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLWltYWdlcyB7XG4gICAgICAgICAgICBwbGFjZS1pdGVtczogbm9ybWFsO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgICAgICAgICAgIHRvcDogKCRoZWFkZXItbmF2LWhlaWdodCArIDEpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRoZWFkZXItbmF2LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICB0b3A6ICgkaGVhZGVyLW5hdi1kZXNrdG9wLWhlaWdodCArIDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1pbWFnZSB7XG4gICAgICAgICAgICAuZW1ibGEge1xuICAgICAgICAgICAgICAgICZfX3NsaWRlIGEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiBjbGFtcCgxcmVtLCA1dncsIDUuNnJlbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgIGdyaWQtcm93OiAzO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi44cmVtO1xuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBncmlkLXJvdzogMTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgIH1cblxuICAgICAgICAuZmxhZ3Mge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2s6IDJyZW0gMDtcbiAgICAgICAgICAgIHBsYWNlLXNlbGY6IHN0YXJ0O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiAwIDFyZW07XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIuOHJlbTtcblxuICAgICAgICAgICAgICAgICY6aGFzKD4gLnBvcG92ZXJfX2NvbnRhaW5lcikge1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDAuMjVyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMC4zcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wb3BvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgJl9fdHJpZ2dlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKGhvdmVyOiBub25lKSBhbmQgKHBvaW50ZXI6IGNvYXJzZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc2V0OiBjYWxjKDUwJSAtIDJyZW0pIDAgMCBjYWxjKDUwJSAtIDJyZW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICAmW2lkPSdwZXJleCddIHtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGJhc2UtdGV4dC1taWQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgIH1cblxuICAgICAgICAucGVyZXgtbW9yZSB7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcblxuICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0bi1saW5rIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICAgICAgICAgICAgZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aW1lLWxpbWl0ZWQtb2ZmZXIge1xuICAgICAgICBAaW5jbHVkZSBpbnZlcnRlZC1ib3JkZXItcmFkaXVzKCdiJyk7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBzZWNvbmRhcnkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNHB4IDE0cHggMCAwO1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaWdodCk7XG4gICAgICAgIGJvcmRlci1pbmxpbmUtc3RhcnQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IGNhbGMoLTJyZW0gLSAxcHgpOyAvLyBncmlkIGdhcCB2YWx1ZVxuICAgICAgICBwYWRkaW5nOiBjbGFtcCgxMHB4LCAyLjV2dywgMjBweCkgY2xhbXAoMTVweCwgMy4zMzN2dywgNDBweCk7XG5cbiAgICAgICAgLnRpbWUtbGltaXRlZC1vZmZlcnMge1xuICAgICAgICAgICAgJl9fb2ZmZXIge1xuICAgICAgICAgICAgICAgICYtdGltZS1yZW1haW5pbmcge1xuICAgICAgICAgICAgICAgICAgICAmLWhlYWRpbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLXZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgKyAucHJvZHVjdC1kZXRhaWxfX3ByaWNlLWJsb2NrIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGludmVydGVkLWJvcmRlci1yYWRpdXMoJ3QnKTtcblxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5mbyB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogM3JlbSA0cmVtO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KG1pbig2MDBweCwgMTAwJSksIDFmcikpO1xuICAgICAgICBncmlkLWF1dG8tcm93czogYXV0byAxZnIgYXV0bztcblxuICAgICAgICAmLS1zZWN0aW9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0xMDApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMyUgY2xhbXAoMi41cmVtLCAydncsIDMuNXJlbSk7XG4gICAgICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgICYucHJvbW8taXMtLWltZyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLXJlbGF0ZWQge1xuICAgICAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iZW5lZml0cy1zZWN0aW9uIHtcbiAgICAgICAgICAgICZfX2xpc3Qge1xuICAgICAgICAgICAgICAgIGdhcDogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5iZW5lZml0LWl0ZW0ge1xuICAgICAgICAgICAgZ2FwOiBjbGFtcCgwLjVyZW0sIDJ2dywgMXJlbSk7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAgICAgJl9fbmFtZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1LjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFjdC1zZWN0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heChtaW4oMjAwcHgsIDEwMCUpLCAxZnIpKTtcbiAgICAgICAgICAgIGdhcDogMXJlbSAycmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2ludHJvIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgZ2FwOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgJi0tdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2xpc3Qge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuXG4gICAgICAgICAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmljb24tbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhhcyhbaHJlZj0nI2ljb24tc2hvcC1tb2JpbGUnXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMS4yN3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aGFzKFtocmVmPScjaWNvbi1zaG9wLWVudmVsb3BlJ10pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDIuMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjdyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2JhY2tncm91bmQtaWNvbiB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDIwIC8gMTg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4NSU7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTYycHg7XG4gICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC4wNzU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yZXZpZXdzLWluZm8ge1xuICAgICAgICAmLXBlcmNlbnRhZ2Uge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNjAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2Vjb25kYXJ5IHtcbiAgICAgICAgPiAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRyZW0gY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAwLjUpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBnYXA6IDVyZW0gMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXJlbSBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG4gICAgICAgICAgICAgICAgZ2FwOiA2cmVtIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cmVtIGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpICogMC41KTtcbiAgICAgICAgICAgICAgICBnYXA6IDhyZW0gMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhbnZhcyB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRhYnMgKyAqOndoZXJlKDpub3QoLnByb2R1Y3RzLXNlY3Rpb24pKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG5cbiAgICAgICAgICAgICAgICArIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA2MDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGVhZCB0aCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3BhcmFtZXRlcnMge1xuICAgICAgICAtLWxpbmUtc2l6ZTogMy44NHJlbTtcblxuICAgICAgICAudG9nZ2xlZC1zZWN0aW9uLWlubmVyLWNvbnRlbnQudG9nZ2xlZC1zZWN0aW9uLWlubmVyLWNvbnRlbnQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2x1bW5zOiAyIDQ4MHB4O1xuICAgICAgICAgICAgY29sdW1uLWdhcDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYm94IHtcbiAgICAgICAgICAgIC8vIFsxXSBjaGFuZ2UgZnJvbSBpbmxpbmUtYmxvY2sgdG8gZml4IENocm9tZSBsYXlvdXQgKGZld2VyIHRoYW4gMyBpdGVtcyBhcmUgZGlzcGxheWVkIGluIGEgc2luZ2xlIGNvbHVtbi4uLilcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZC1jb2x1bW47IC8vIChyZXF1aXJlZCB3aXRoIGRpc3BsYXk6IGJsb2NrLCBvdGhlcndpc2UgY29sdW1uIGl0ZW0gYnJlYWtzIG92ZXIgbXVsdGlwbGUgY29sdW1ucylcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgZ3JheS0yMDApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYygyLjA0cmVtIC0gMXB4KSAzMHB4IGNhbGMoMi42NHJlbSAtIDFweCk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAgICAgICAgIC8vIFsyXS4uLmRpc3BsYXk6YmxvY2sgY2F1c2VzIG1pc2FsaWduZWQgaXRlbSBhdCB0b3Agb2Ygc2Vjb25kIGNvbHVtbiBpbiBTYWZhcmlcbiAgICAgICAgICAgIEBzdXBwb3J0cyAoYmFja2dyb3VuZDogLXdlYmtpdC1uYW1lZC1pbWFnZShpKSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQHN1cHBvcnRzIChoZWlnaHQ6IHJvdW5kKHVwLCAxMDAlLCB2YXIoLS1saW5lLXNpemUpKSkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyhyb3VuZCh1cCwgMTAwJSwgdmFyKC0tbGluZS1zaXplKSkgLSAzcmVtIC0gMnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi44cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuMDRyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgbWluLWhlaWdodDogdmFyKC0tbGluZS1zaXplKTtcblxuICAgICAgICAgICAgQHN1cHBvcnRzIChoZWlnaHQ6IHJvdW5kKHVwLCAxMDAlLCB2YXIoLS1saW5lLXNpemUpKSkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogcm91bmQodXAsIDEwMCUsIHZhcigtLWxpbmUtc2l6ZSkpO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IG1heCh2YXIoLS1saW5lLXNpemUpLCAxMDAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtbGlzdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG5cbiAgICAgICAgICAgIGR0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweCAwIDAgNnB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSA1cHggMC41cmVtIDIwcHg7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogdmFyKC0tbGluZS1zaXplKTtcblxuICAgICAgICAgICAgICAgIEBzdXBwb3J0cyAoaGVpZ2h0OiBjYWxjLXNpemUoYXV0bywgc2l6ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjLXNpemUoZml0LWNvbnRlbnQsIHJvdW5kKHVwLCBzaXplLCB2YXIoLS1saW5lLXNpemUpKSk7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IG1heCh2YXIoLS1saW5lLXNpemUpLCAxMDAlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1vZi10eXBlKG9kZCkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbWlkKTtcblxuICAgICAgICAgICAgICAgICAgICArIGRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1taWQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDZweCA2cHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMjBweCAwLjVyZW0gNXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktZGFyayk7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogdmFyKC0tbGluZS1zaXplKTtcblxuICAgICAgICAgICAgICAgIEBzdXBwb3J0cyAoaGVpZ2h0OiBjYWxjLXNpemUoYXV0bywgc2l6ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjLXNpemUoZml0LWNvbnRlbnQsIHJvdW5kKHVwLCBzaXplLCB2YXIoLS1saW5lLXNpemUpKSk7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IG1heCh2YXIoLS1saW5lLXNpemUpLCAxMDAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19tZXRhIHtcbiAgICAgICAgJi1ib3gge1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDJyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbGlzdCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcblxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgZmxleC1mbG93OiB3cmFwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGJhc2UtdGV4dCk7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5tZXRhLS1zdWNjZXNzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdpbi1zdG9jaycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihzbSkge1xuICAgICAgICAgICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgICAgIGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYubWV0YS0tc3VjY2VzcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ZhcmlhbnRzLWxpc3Qge1xuICAgICAgICBsaSArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFicyB7XG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgLnRhYnMge1xuICAgICAgICAgICAgICAgICZfX3NlY3Rpb24taW5uZXItY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWlubGluZTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiBtaW4oOTAwcHgsIDEwMCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZpbGVzLWxpc3Qge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAyY2g7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOmNvbG9yJztcblxuLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAmX19oYXMtZnJlZS1zaGlwcGluZyxcbiAgICAmX19lbmVyZ3ktY2xhc3Mge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG1pbi13aWR0aDogYXV0bztcblxuICAgICAgICAmLS1pY29uIHtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGFzLWZyZWUtc2hpcHBpbmcge1xuICAgICAgICBsZWZ0OiAycmVtO1xuICAgICAgICBib3R0b206IDJyZW07XG5cbiAgICAgICAgJi0taWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2VuZXJneS1jbGFzcyB7XG4gICAgICAgIHJpZ2h0OiAycmVtO1xuICAgICAgICBib3R0b206IDIuOXJlbTtcblxuICAgICAgICAmLS1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTZweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1pbWFnZXMge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IDA7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ21kJykge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMC4yMDc1ZnIgMWZyO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJ21kJykge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6aGFzKC5wcm9kdWN0LWRldGFpbF9fdGh1bWJuYWlsLWltYWdlcykpIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICAgICAgICAgICAgIC5wcm9kdWN0LWRldGFpbCB7XG4gICAgICAgICAgICAgICAgICAgICZfX21haW4taW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmX19tZXRhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1pbWFnZSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci5hZGp1c3QobWFwLmdldCgkdGhlbWUtY29sb3JzLCBkYXJrKSwgJGFscGhhOiAtMC45KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMXB4O1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDI7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tem9vbS1pY29uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIuMXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuMXJlbTtcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmVtYmxhIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcblxuICAgICAgICAgICAgICAgICZfX2J1dHRvbnMge1xuICAgICAgICAgICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvIDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2J1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG5cbiAgICAgICAgICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5Jyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3NsaWRlIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIC8vIG1hdGNoIHRoZSBzaXplcyBpbiB0aGUgcGljdHVyZSBlbGVtZW50XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQyMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5NjFweCksIChtaW4td2lkdGg6IDQxNHB4KSBhbmQgKG1heC13aWR0aDogNjIwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA2MjFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMzgwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpoYXMoKyAucHJvZHVjdC1kZXRhaWxfX3RodW1ibmFpbC1pbWFnZXMpIHtcbiAgICAgICAgICAgICAgICAuZW1ibGEge1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWV0YSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgY29sb3I6IGNvbG9yLmFkanVzdChtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGJhc2UtdGV4dCksICRhbHBoYTogLTAuMyk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdtZCcpIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGh1bWJuYWlsLWltYWdlcyB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1saXN0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXItY29udGFpbmVyO1xuXG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogaW5pdGlhbDtcbiAgICAgICAgICAgIGdyaWQtYXV0by1yb3dzOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgIGdhcDogMS42cmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMTBweCk7XG4gICAgICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTVweDtcblxuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGNvbG9yLmFkanVzdCgkc2Nyb2xsYmFyLWNvbG9yLCAkYWxwaGE6IC0xKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3Zlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIsXG4gICAgICAgICAgICAmOmhhcyg+ICo6aG92ZXIpOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHNjcm9sbGJhci1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGh1bWIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvci5hZGp1c3QobWFwLmdldCgkdGhlbWUtY29sb3JzLCBkYXJrKSwgJGFscGhhOiAtMC45KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgYSBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSBjbGFtcCgwLjVyZW0sIDIuNXZ3LCAyLjhyZW0pKTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIGNsYW1wKDAuNXJlbSwgMi41dncsIDIuOHJlbSkpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQHVzZSAnc2FzczptYXAnO1xuXG4ucHJvZHVjdC1kZXRhaWwge1xuICAgICZfX3ZhcmlhbnRzIHtcbiAgICAgICAgYm9yZGVyLWJsb2NrLXN0YXJ0OiBub25lO1xuXG4gICAgICAgIC5mb3JtLWlucHV0IHtcbiAgICAgICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZhcmlhbnQtcGFyYW1ldGVyLW5hbWUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRyaWdnZXIge1xuICAgICAgICAgICAgJi0tc2VsZWN0LXRvLXRyaWdnZXJzIHtcbiAgICAgICAgICAgICAgICAmLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgLnZhcmlhbnQtb3B0aW9uLWl0ZW0taW5uZXIgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ZhcmlhbnRzLWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDVweCk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMi41cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTIuNXB4O1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxNnB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtOHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX192YXJpYW50LWl0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAyLjVweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWZpeC13aWR0aCB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGZpdC1jb250ZW50O1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMzMuMzMzJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMyU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3hsJykge1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX192YXJpYW50LWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWlubGluZTogMC44cmVtO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiAwLjhyZW07XG4gICAgICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICAgICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbWFwLmdldCgkdGhlbWUtY29sb3JzLCBncmF5LTIwMCk7XG4gICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBkYXJrKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjJyZW07XG4gICAgICAgICAgICBtaW4td2lkdGg6IDcwcHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgcGFkZGluZy1pbmxpbmU6IDEuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IDAuOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLWFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LW1pZCcpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1kYXJrKTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoW2Rpc2FibGVkXSwgW2NsYXNzKj0nLS1hY3RpdmUnXSkge1xuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGdyYXktNDAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAmX192b3VjaGVyLWRpc2NvdW50IHtcbiAgICAgICAgQGluY2x1ZGUgaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cygnYicpO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBzZWNvbmRhcnkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNHB4IDE0cHggMCAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLWlubGluZS1zdGFydDogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogLTJyZW07IC8vIGdyaWQgZ2FwIHZhbHVlXG4gICAgICAgIHBhZGRpbmc6IGNsYW1wKDEwcHgsIDIuNXZ3LCAyMHB4KSBjbGFtcCgxNXB4LCAzLjMzM3Z3LCA0MHB4KTtcbiAgICAgICAgcm93LWdhcDogMXJlbTtcblxuICAgICAgICAmOm5vdCguc3BlY2lmaWNpdHktZml4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1uYW1lIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgYm9yZGVyOiAycHggZGFzaGVkO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDlweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lLWVuZDogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtcHJpY2Uge1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZS1lbmQ6IDAuNWNoO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1idXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaWdodCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjJyZW0gMnJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBnYXA6IDAuOXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgJjpub3QoW2Rpc2FibGVkXSk6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGlnaHQpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOndoZXJlKDpub3QoW3N0eWxlKj0nbm9uZSddKSkgKyAucHJvZHVjdC1kZXRhaWxfX3ByaWNlLWJsb2NrIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGludmVydGVkLWJvcmRlci1yYWRpdXMoJ3QnKTtcblxuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjp3aGVyZSg6bm90KFtzdHlsZSo9J25vbmUnXSkpICsgLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAgICAgICAgICZfX3RpbWUtbGltaXRlZC1vZmZlciB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaW52ZXJ0ZWQtYm9yZGVyLXJhZGl1cygnYWxsJyk7XG5cbiAgICAgICAgICAgICAgICBib3JkZXItYmxvY2stc3RhcnQ6IDFweCBkYXNoZWQgcmdiKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgJjpub3QoLnNwZWNpZmljaXR5LWZpeCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgneGwnKSB7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG5cbiAgICAgICAgICAgICY6bm90KC5zcGVjaWZpY2l0eS1maXgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1idXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucHJvZHVjdC1kZXRhaWwge1xuICAgICZfX2FjdGlvbiB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgICAgICAgcGFkZGluZy1ibG9jay1zdGFydDogMXJlbTtcbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5wcm9kdWN0LWRldGFpbCB7XG4gICAgLS1wcm9kdWN0LWRldGFpbC1ib3gtb3ZlcmZsb3c6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgLS1wcm9kdWN0LWRldGFpbC1ib3gtb3ZlcmZsb3c6IDMwcHg7XG4gICAgfVxuXG4gICAgJl9fcHJpY2UtYmxvY2sge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnktbWlkKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBwYWRkaW5nOiBjbGFtcCgxMHB4LCAzLjMzM3Z3LCA0MHB4KTtcbiAgICAgICAgcGFkZGluZy1ibG9jay1lbmQ6IHZhcigtLXByb2R1Y3QtZGV0YWlsLWJveC1vdmVyZmxvdyk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnknKTtcbiAgICB9XG5cbiAgICAvLyBsYXlvdXRcbiAgICBAbWl4aW4gcHJpY2UtYmxvY2stYnJlYWtwb2ludCB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAje21hcC5nZXQoJGdyaWQtYnJlYWtwb2ludHMsICd4eGwnKX0pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcHJpY2UtaW5mby1ibG9ja3Mge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIGp1c3RpZnktaXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAmOmhhcygucHJvZHVjdC1kZXRhaWxfX2FjdGlvbnMtLWhvbWUtY3JlZGl0KSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrLWVuZDogMy41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcHJpY2UtYmxvY2stYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6XG4gICAgICAgICAgICAgICAgYXV0b1xuICAgICAgICAgICAgICAgIGF1dG9cbiAgICAgICAgICAgICAgICAxZnJcbiAgICAgICAgICAgICAgICBtaW5tYXgoYXV0bywgNzBweClcbiAgICAgICAgICAgICAgICBtaW5tYXgobWF4LWNvbnRlbnQsIDI1MHB4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByaWNlLWluZm8tYmVpbmctc29sZC1vbGQtcHJpY2Uge1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpO1xuICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAwIDFyZW07XG4gICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgICAgICAgZmxleC1mbG93OiByb3ctcmV2ZXJzZSB3cmFwLXJldmVyc2U7XG4gICAgICAgIG1hcmdpbi1ibG9jay1lbmQ6IDEuNXJlbTtcblxuICAgICAgICBAaW5jbHVkZSBwcmljZS1ibG9jay1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyIC8gc3BhbiAzO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogc3RhcnQ7XG4gICAgICAgICAgICBtYXJnaW4tYmxvY2stZW5kOiAwLjRyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAgICAgICAgICZfX3ByaWNlLWluZm8tc2F2aW5nLXBlcmNlbnQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBzZWNvbmRhcnkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIGxpZ2h0KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC42cmVtIDFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19wcmljZS1pbmZvLWJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNjAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByaWNlIHtcbiAgICAgICAgZ3JpZC1yb3c6IDQ7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcblxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgODAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJ3h4bCcpIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMC44O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcHJpY2UtYmxvY2stYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBncmlkLXJvdzogMztcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgW2lkPSdwcmljZVNlbGxpbmdWYXQnXSB7XG4gICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBiYXNlLXRleHQpO1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwLjVyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIFtpZD0ncHJpY2VFeGNsVmF0J10ge1xuICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgYmFzZS10ZXh0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByaWNlLW5vdGUtcG9wb3ZlciB7XG4gICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgcGxhY2Utc2VsZjogc3RhcnQgZW5kO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgLnBvcG92ZXIge1xuICAgICAgICAgICAgJl9fdHJpZ2dlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuNnJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcHJpY2UtYmxvY2stYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBncmlkLXJvdzogMztcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgcGxhY2Utc2VsZjogY2VudGVyIHN0YXJ0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMC40cmVtO1xuXG4gICAgICAgICAgICAucG9wb3ZlciB7XG4gICAgICAgICAgICAgICAgJl9fdHJpZ2dlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMi40cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2RlbGl2ZXJ5LWRhdGUge1xuICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gMjtcbiAgICB9XG5cbiAgICAmX19wcmljZS1pbmZvLWJlaW5nLXNvbGQtcGVyY2VudGFnZS1kaXNjb3VudCB7XG4gICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgcGxhY2Utc2VsZjogY2VudGVyIHN0YXJ0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDAgMC4zZW07XG4gICAgICAgIG1heC13aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgaW4tc3RvY2stYmcpO1xuICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBpbi1zdG9jayk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDQwMDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMS41cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHByaWNlLWJsb2NrLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDA7XG4gICAgICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IHN0YXJ0O1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAgICAgICAgICZfX3ByaWNlLWluZm8tYmxvY2staGVhZGluZyB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAlc3Itb25seS11bmRvO1xuXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3ByaWNlLWluZm8tYmxvY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3ByaWNlLWluZm8tc2F2aW5nLWFtb3VudCB7XG4gICAgICAgIEBleHRlbmQgJXNyLW9ubHktdW5kbztcbiAgICB9XG5cbiAgICAmX19hdmFpbGFiaWxpdHkge1xuICAgICAgICBncmlkLXJvdzogMTtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuXG4gICAgICAgIEBpbmNsdWRlIHByaWNlLWJsb2NrLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgcGxhY2Utc2VsZjogc3RhcnQgc3RhcnQ7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIHNwYW4gNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWF2YWlsYWJpbGl0eTp3aGVyZSg6bm90KDpsYXN0LWNoaWxkKSkge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdG9jay0tYXZhaWxhYmxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuXG4gICAgICAgICAgICAmLWV4dHJhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3VibWl0IHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICAgIGdyaWQtcm93OiA2O1xuICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAycmVtO1xuICAgICAgICBqdXN0aWZ5LXNlbGY6IHN0cmV0Y2g7XG5cbiAgICAgICAgJjpoYXMoLnByb2R1Y3QtZGV0YWlsX19hY3Rpb25zLS1ob21lLWNyZWRpdCkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgcHJpY2UtYmxvY2stYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogNTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAyIC8gc3BhbiAzO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jay1zdGFydDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJtaXQge1xuICAgICAgICAgICAgZ2FwOiAwIDEuOHJlbTtcbiAgICAgICAgICAgIGhlaWdodDogNDZweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbWQnKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcblxuICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWlubGluZTogLTJyZW0gMDtcbiAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyLjZyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIuNnJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ1dHRvbi10ZXh0IHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1kZXRhaWwge1xuICAgICAgICAgICAgJl9fYWN0aW9ucy1pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWN0aW9ucyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1saWdodCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcblxuICAgICAgICAmLWxpbmsge1xuICAgICAgICAgICAgY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgICY6d2hlcmUoOm5vdCgucHJvZHVjdC1kZXRhaWxfX2FjdGlvbnMtbGluay0tcGxhaW4pKSB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBsaW5lYXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC12YXJpYXRpb24tc2V0dGluZ3M6ICd3Z2h0JyA0MDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGluayxcbiAgICAgICAgICAgICY6dmlzaXRlZCxcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBjdXJyZW50Y29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgICAgICAgICAgICAgJjp3aGVyZSg6bm90KC5wcm9kdWN0LWRldGFpbF9fYWN0aW9ucy1saW5rLS1wbGFpbikpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgbGlnaHQpO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBpbXBvcnRhbnQgaXMgbmVlZGVkIHRvIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGJ0bl9fbGluayBzdHlsZXMsIGRvIG5vdCBjcmVhdGUgaXNwYWNlIGFjdGlvbnMudHdpZyBmb3Igb25seSByZW1vdmluZyBvbmUgY2xhc3NcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbGcnKSB7XG4gICAgICAgICAgICAgICAgJjp3aGVyZSg6bm90KC5wcm9kdWN0LWRldGFpbF9fYWN0aW9ucy1saW5rLS1wbGFpbikpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzLjZyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgJjp3aGVyZSg6bm90KC5wcm9kdWN0LWRldGFpbF9fYWN0aW9ucy1saW5rLS1wbGFpbikpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0LjJyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS1wbGFpbiB7XG4gICAgICAgICAgICAgICAgLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAgICAgICAgICAgICAgICAgJl9fYWN0aW9ucy10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjZyZW0sIDAuNTZ2aSArIDEuMzdyZW0sIDEuOHJlbSk7IC8vICRoNC1mb250LXNpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBlbnN1cmUgdGhhdCBicm93c2VyIHN1cHBvcnRzIDpoYXMoKSFcbiAgICAgICAgICAgICY6d2hlcmUoLnByb2R1Y3QtZGV0YWlsX19hY3Rpb25zLS1ob21lLWNyZWRpdCk6aGFzKHNwYW4pIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAxcmVtKTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19hY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwO1xuICAgIH1cblxuICAgICZfX2Zvcm0ge1xuICAgICAgICB+IFtjbGFzc149J3Byb2R1Y3QtZGV0YWlsX18nXSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgOHB4IDhweDtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogY2FsYygtMnJlbSAtIHZhcigtLXByb2R1Y3QtZGV0YWlsLWJveC1vdmVyZmxvdykpO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogdmFyKC0tcHJvZHVjdC1kZXRhaWwtYm94LW92ZXJmbG93KTtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiBjbGFtcCgxMHB4LCAzLjMzM3Z3LCA0MHB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1saWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19xdWFudGl0eSB7XG4gICAgICAgIGdyaWQtY29sdW1uOiAxIC8gc3BhbiAyO1xuICAgICAgICBncmlkLXJvdzogNTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuMjVyZW07XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICN7bWFwLmdldCgkZ3JpZC1icmVha3BvaW50cywgJ3h4bCcpfSkge1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDIgLyBzcGFuIDM7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogNDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTE2cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5wcm9kdWN0LWRldGFpbCB7XG4gICAgJl9fZGVsaXZlcnktb3B0aW9ucyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeS1saWdodCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcblxuICAgICAgICBbY2xhc3MqPSdkZWxpdmVyeS1kYXRlX18nXSB7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDMwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogbm9ybWFsO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2RlbGl2ZXJ5IHtcbiAgICAgICAgY29udGFpbmVyLW5hbWU6ICdwcm9kdWN0LWRldGFpbF9fZGVsaXZlcnknO1xuICAgICAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG5cbiAgICAgICAgJi1vcHRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICAgICAgICAgQGNvbnRhaW5lciAod2lkdGggPiAzOTBweCkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBjb250YWluZXIgKHdpZHRoID4gNDMwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwIGRhc2hlZCBjb2xvci1taXgoaW4gc3JnYiwgIzAwOGRkMiAzMCUsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXRleHQge1xuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDUwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGNvbnRhaW5lciAod2lkdGggPiA1NjBweCkge1xuICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGluaXRpYWw7XG5cbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyBcXDIwMTMnO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDIuMnJlbTtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtbGluayB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IG1heC1jb250ZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNnB4IDA7XG5cbiAgICAgICAgICAgICY6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAY29udGFpbmVyICh3aWR0aCA+IDM5MHB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgdGV4dC13cmFwOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjb250YWluZXIgKHdpZHRoIDwgNTM1cHgpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBwcmltYXJ5LWRhcmspICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBjb250YWluZXIgKHdpZHRoID49IDUzNXB4KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDMxcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBWYXJpYWJsZXMgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtc3RhdGUtcHJvcGVydHktc2l6ZWAgZm9ybXVsYSBmb3Jcbi8vIGNvbnNpc3RlbnQgbmFtaW5nLiBFeDogJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yIGFuZCAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzLlxuXG4vLyBDb2xvciBzeXN0ZW1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3ItdmFyaWFibGVzXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3ItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyYXktY29sb3JzLW1hcFxuJGdyYXlzOiAoXG4gIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgXCIyMDBcIjogJGdyYXktMjAwLFxuICBcIjMwMFwiOiAkZ3JheS0zMDAsXG4gIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgXCI1MDBcIjogJGdyYXktNTAwLFxuICBcIjYwMFwiOiAkZ3JheS02MDAsXG4gIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgXCI4MDBcIjogJGdyYXktODAwLFxuICBcIjkwMFwiOiAkZ3JheS05MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGdyYXktY29sb3JzLW1hcFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9yLXZhcmlhYmxlc1xuJGJsdWU6ICAgICMwZDZlZmQgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNkNjMzODQgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzE5ODc1NCAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMwZGNhZjAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogICAgICAgJGJsdWUsXG4gIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICBcInB1cnBsZVwiOiAgICAgJHB1cnBsZSxcbiAgXCJwaW5rXCI6ICAgICAgICRwaW5rLFxuICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgXCJvcmFuZ2VcIjogICAgICRvcmFuZ2UsXG4gIFwieWVsbG93XCI6ICAgICAkeWVsbG93LFxuICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICBcInRlYWxcIjogICAgICAgJHRlYWwsXG4gIFwiY3lhblwiOiAgICAgICAkY3lhbixcbiAgXCJibGFja1wiOiAgICAgICRibGFjayxcbiAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgXCJncmF5XCI6ICAgICAgICRncmF5LTYwMCxcbiAgXCJncmF5LWRhcmtcIjogICRncmF5LTgwMFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sb3JzLW1hcFxuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMiBhcmUgMywgNC41IGFuZCA3LlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9XQ0FHLyNjb250cmFzdC1taW5pbXVtXG4kbWluLWNvbnRyYXN0LXJhdGlvOiAgIDQuNSAhZGVmYXVsdDtcblxuLy8gQ3VzdG9taXplIHRoZSBsaWdodCBhbmQgZGFyayB0ZXh0IGNvbG9ycyBmb3IgdXNlIGluIG91ciBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiRjb2xvci1jb250cmFzdC1kYXJrOiAgICAgICRibGFjayAhZGVmYXVsdDtcbiRjb2xvci1jb250cmFzdC1saWdodDogICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYmx1ZS0xMDA6IHRpbnQtY29sb3IoJGJsdWUsIDgwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6IHRpbnQtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS0zMDA6IHRpbnQtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS00MDA6IHRpbnQtY29sb3IoJGJsdWUsIDIwJSkgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICRibHVlICFkZWZhdWx0O1xuJGJsdWUtNjAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTcwMDogc2hhZGUtY29sb3IoJGJsdWUsIDQwJSkgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA2MCUpICFkZWZhdWx0O1xuJGJsdWUtOTAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcblxuJGluZGlnby0xMDA6IHRpbnQtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMjAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTMwMDogdGludC1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby00MDA6IHRpbnQtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNTAwOiAkaW5kaWdvICFkZWZhdWx0O1xuJGluZGlnby02MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDIwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTcwMDogc2hhZGUtY29sb3IoJGluZGlnbywgNDAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tODAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA2MCUpICFkZWZhdWx0O1xuJGluZGlnby05MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDgwJSkgIWRlZmF1bHQ7XG5cbiRwdXJwbGUtMTAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTIwMDogdGludC1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNDAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTUwMDogJHB1cnBsZSAhZGVmYXVsdDtcbiRwdXJwbGUtNjAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCAyMCUpICFkZWZhdWx0O1xuJHB1cnBsZS03MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDQwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTgwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtOTAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA4MCUpICFkZWZhdWx0O1xuXG4kcGluay0xMDA6IHRpbnQtY29sb3IoJHBpbmssIDgwJSkgIWRlZmF1bHQ7XG4kcGluay0yMDA6IHRpbnQtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay0zMDA6IHRpbnQtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay00MDA6IHRpbnQtY29sb3IoJHBpbmssIDIwJSkgIWRlZmF1bHQ7XG4kcGluay01MDA6ICRwaW5rICFkZWZhdWx0O1xuJHBpbmstNjAwOiBzaGFkZS1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTcwMDogc2hhZGUtY29sb3IoJHBpbmssIDQwJSkgIWRlZmF1bHQ7XG4kcGluay04MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA2MCUpICFkZWZhdWx0O1xuJHBpbmstOTAwOiBzaGFkZS1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcblxuJHJlZC0xMDA6IHRpbnQtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcbiRyZWQtMjAwOiB0aW50LWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTMwMDogdGludC1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC00MDA6IHRpbnQtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNTAwOiAkcmVkICFkZWZhdWx0O1xuJHJlZC02MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDIwJSkgIWRlZmF1bHQ7XG4kcmVkLTcwMDogc2hhZGUtY29sb3IoJHJlZCwgNDAlKSAhZGVmYXVsdDtcbiRyZWQtODAwOiBzaGFkZS1jb2xvcigkcmVkLCA2MCUpICFkZWZhdWx0O1xuJHJlZC05MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDgwJSkgIWRlZmF1bHQ7XG5cbiRvcmFuZ2UtMTAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogdGludC1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS0zMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNDAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogJG9yYW5nZSAhZGVmYXVsdDtcbiRvcmFuZ2UtNjAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCAyMCUpICFkZWZhdWx0O1xuJG9yYW5nZS03MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDQwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtOTAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA4MCUpICFkZWZhdWx0O1xuXG4keWVsbG93LTEwMDogdGludC1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuJHllbGxvdy0yMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctMzAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTQwMDogdGludC1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy01MDA6ICR5ZWxsb3cgIWRlZmF1bHQ7XG4keWVsbG93LTYwMDogc2hhZGUtY29sb3IoJHllbGxvdywgMjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNzAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA0MCUpICFkZWZhdWx0O1xuJHllbGxvdy04MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDYwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTkwMDogc2hhZGUtY29sb3IoJHllbGxvdywgODAlKSAhZGVmYXVsdDtcblxuJGdyZWVuLTEwMDogdGludC1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tMjAwOiB0aW50LWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi0zMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA0MCUpICFkZWZhdWx0O1xuJGdyZWVuLTQwMDogdGludC1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNTAwOiAkZ3JlZW4gIWRlZmF1bHQ7XG4kZ3JlZW4tNjAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDIwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNzAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tODAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDYwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tOTAwOiBzaGFkZS1jb2xvcigkZ3JlZW4sIDgwJSkgIWRlZmF1bHQ7XG5cbiR0ZWFsLTEwMDogdGludC1jb2xvcigkdGVhbCwgODAlKSAhZGVmYXVsdDtcbiR0ZWFsLTIwMDogdGludC1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTMwMDogdGludC1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTQwMDogdGludC1jb2xvcigkdGVhbCwgMjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTUwMDogJHRlYWwgIWRlZmF1bHQ7XG4kdGVhbC02MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNzAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNDAlKSAhZGVmYXVsdDtcbiR0ZWFsLTgwMDogc2hhZGUtY29sb3IoJHRlYWwsIDYwJSkgIWRlZmF1bHQ7XG4kdGVhbC05MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuXG4kY3lhbi0xMDA6IHRpbnQtY29sb3IoJGN5YW4sIDgwJSkgIWRlZmF1bHQ7XG4kY3lhbi0yMDA6IHRpbnQtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi0zMDA6IHRpbnQtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi00MDA6IHRpbnQtY29sb3IoJGN5YW4sIDIwJSkgIWRlZmF1bHQ7XG4kY3lhbi01MDA6ICRjeWFuICFkZWZhdWx0O1xuJGN5YW4tNjAwOiBzaGFkZS1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTcwMDogc2hhZGUtY29sb3IoJGN5YW4sIDQwJSkgIWRlZmF1bHQ7XG4kY3lhbi04MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA2MCUpICFkZWZhdWx0O1xuJGN5YW4tOTAwOiBzaGFkZS1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcblxuJGJsdWVzOiAoXG4gIFwiYmx1ZS0xMDBcIjogJGJsdWUtMTAwLFxuICBcImJsdWUtMjAwXCI6ICRibHVlLTIwMCxcbiAgXCJibHVlLTMwMFwiOiAkYmx1ZS0zMDAsXG4gIFwiYmx1ZS00MDBcIjogJGJsdWUtNDAwLFxuICBcImJsdWUtNTAwXCI6ICRibHVlLTUwMCxcbiAgXCJibHVlLTYwMFwiOiAkYmx1ZS02MDAsXG4gIFwiYmx1ZS03MDBcIjogJGJsdWUtNzAwLFxuICBcImJsdWUtODAwXCI6ICRibHVlLTgwMCxcbiAgXCJibHVlLTkwMFwiOiAkYmx1ZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRpbmRpZ29zOiAoXG4gIFwiaW5kaWdvLTEwMFwiOiAkaW5kaWdvLTEwMCxcbiAgXCJpbmRpZ28tMjAwXCI6ICRpbmRpZ28tMjAwLFxuICBcImluZGlnby0zMDBcIjogJGluZGlnby0zMDAsXG4gIFwiaW5kaWdvLTQwMFwiOiAkaW5kaWdvLTQwMCxcbiAgXCJpbmRpZ28tNTAwXCI6ICRpbmRpZ28tNTAwLFxuICBcImluZGlnby02MDBcIjogJGluZGlnby02MDAsXG4gIFwiaW5kaWdvLTcwMFwiOiAkaW5kaWdvLTcwMCxcbiAgXCJpbmRpZ28tODAwXCI6ICRpbmRpZ28tODAwLFxuICBcImluZGlnby05MDBcIjogJGluZGlnby05MDBcbikgIWRlZmF1bHQ7XG5cbiRwdXJwbGVzOiAoXG4gIFwicHVycGxlLTEwMFwiOiAkcHVycGxlLTEwMCxcbiAgXCJwdXJwbGUtMjAwXCI6ICRwdXJwbGUtMjAwLFxuICBcInB1cnBsZS0zMDBcIjogJHB1cnBsZS0zMDAsXG4gIFwicHVycGxlLTQwMFwiOiAkcHVycGxlLTQwMCxcbiAgXCJwdXJwbGUtNTAwXCI6ICRwdXJwbGUtNTAwLFxuICBcInB1cnBsZS02MDBcIjogJHB1cnBsZS02MDAsXG4gIFwicHVycGxlLTcwMFwiOiAkcHVycGxlLTcwMCxcbiAgXCJwdXJwbGUtODAwXCI6ICRwdXJwbGUtODAwLFxuICBcInB1cnBsZS05MDBcIjogJHB1cnBsZS05MDBcbikgIWRlZmF1bHQ7XG5cbiRwaW5rczogKFxuICBcInBpbmstMTAwXCI6ICRwaW5rLTEwMCxcbiAgXCJwaW5rLTIwMFwiOiAkcGluay0yMDAsXG4gIFwicGluay0zMDBcIjogJHBpbmstMzAwLFxuICBcInBpbmstNDAwXCI6ICRwaW5rLTQwMCxcbiAgXCJwaW5rLTUwMFwiOiAkcGluay01MDAsXG4gIFwicGluay02MDBcIjogJHBpbmstNjAwLFxuICBcInBpbmstNzAwXCI6ICRwaW5rLTcwMCxcbiAgXCJwaW5rLTgwMFwiOiAkcGluay04MDAsXG4gIFwicGluay05MDBcIjogJHBpbmstOTAwXG4pICFkZWZhdWx0O1xuXG4kcmVkczogKFxuICBcInJlZC0xMDBcIjogJHJlZC0xMDAsXG4gIFwicmVkLTIwMFwiOiAkcmVkLTIwMCxcbiAgXCJyZWQtMzAwXCI6ICRyZWQtMzAwLFxuICBcInJlZC00MDBcIjogJHJlZC00MDAsXG4gIFwicmVkLTUwMFwiOiAkcmVkLTUwMCxcbiAgXCJyZWQtNjAwXCI6ICRyZWQtNjAwLFxuICBcInJlZC03MDBcIjogJHJlZC03MDAsXG4gIFwicmVkLTgwMFwiOiAkcmVkLTgwMCxcbiAgXCJyZWQtOTAwXCI6ICRyZWQtOTAwXG4pICFkZWZhdWx0O1xuXG4kb3JhbmdlczogKFxuICBcIm9yYW5nZS0xMDBcIjogJG9yYW5nZS0xMDAsXG4gIFwib3JhbmdlLTIwMFwiOiAkb3JhbmdlLTIwMCxcbiAgXCJvcmFuZ2UtMzAwXCI6ICRvcmFuZ2UtMzAwLFxuICBcIm9yYW5nZS00MDBcIjogJG9yYW5nZS00MDAsXG4gIFwib3JhbmdlLTUwMFwiOiAkb3JhbmdlLTUwMCxcbiAgXCJvcmFuZ2UtNjAwXCI6ICRvcmFuZ2UtNjAwLFxuICBcIm9yYW5nZS03MDBcIjogJG9yYW5nZS03MDAsXG4gIFwib3JhbmdlLTgwMFwiOiAkb3JhbmdlLTgwMCxcbiAgXCJvcmFuZ2UtOTAwXCI6ICRvcmFuZ2UtOTAwXG4pICFkZWZhdWx0O1xuXG4keWVsbG93czogKFxuICBcInllbGxvdy0xMDBcIjogJHllbGxvdy0xMDAsXG4gIFwieWVsbG93LTIwMFwiOiAkeWVsbG93LTIwMCxcbiAgXCJ5ZWxsb3ctMzAwXCI6ICR5ZWxsb3ctMzAwLFxuICBcInllbGxvdy00MDBcIjogJHllbGxvdy00MDAsXG4gIFwieWVsbG93LTUwMFwiOiAkeWVsbG93LTUwMCxcbiAgXCJ5ZWxsb3ctNjAwXCI6ICR5ZWxsb3ctNjAwLFxuICBcInllbGxvdy03MDBcIjogJHllbGxvdy03MDAsXG4gIFwieWVsbG93LTgwMFwiOiAkeWVsbG93LTgwMCxcbiAgXCJ5ZWxsb3ctOTAwXCI6ICR5ZWxsb3ctOTAwXG4pICFkZWZhdWx0O1xuXG4kZ3JlZW5zOiAoXG4gIFwiZ3JlZW4tMTAwXCI6ICRncmVlbi0xMDAsXG4gIFwiZ3JlZW4tMjAwXCI6ICRncmVlbi0yMDAsXG4gIFwiZ3JlZW4tMzAwXCI6ICRncmVlbi0zMDAsXG4gIFwiZ3JlZW4tNDAwXCI6ICRncmVlbi00MDAsXG4gIFwiZ3JlZW4tNTAwXCI6ICRncmVlbi01MDAsXG4gIFwiZ3JlZW4tNjAwXCI6ICRncmVlbi02MDAsXG4gIFwiZ3JlZW4tNzAwXCI6ICRncmVlbi03MDAsXG4gIFwiZ3JlZW4tODAwXCI6ICRncmVlbi04MDAsXG4gIFwiZ3JlZW4tOTAwXCI6ICRncmVlbi05MDBcbikgIWRlZmF1bHQ7XG5cbiR0ZWFsczogKFxuICBcInRlYWwtMTAwXCI6ICR0ZWFsLTEwMCxcbiAgXCJ0ZWFsLTIwMFwiOiAkdGVhbC0yMDAsXG4gIFwidGVhbC0zMDBcIjogJHRlYWwtMzAwLFxuICBcInRlYWwtNDAwXCI6ICR0ZWFsLTQwMCxcbiAgXCJ0ZWFsLTUwMFwiOiAkdGVhbC01MDAsXG4gIFwidGVhbC02MDBcIjogJHRlYWwtNjAwLFxuICBcInRlYWwtNzAwXCI6ICR0ZWFsLTcwMCxcbiAgXCJ0ZWFsLTgwMFwiOiAkdGVhbC04MDAsXG4gIFwidGVhbC05MDBcIjogJHRlYWwtOTAwXG4pICFkZWZhdWx0O1xuXG4kY3lhbnM6IChcbiAgXCJjeWFuLTEwMFwiOiAkY3lhbi0xMDAsXG4gIFwiY3lhbi0yMDBcIjogJGN5YW4tMjAwLFxuICBcImN5YW4tMzAwXCI6ICRjeWFuLTMwMCxcbiAgXCJjeWFuLTQwMFwiOiAkY3lhbi00MDAsXG4gIFwiY3lhbi01MDBcIjogJGN5YW4tNTAwLFxuICBcImN5YW4tNjAwXCI6ICRjeWFuLTYwMCxcbiAgXCJjeWFuLTcwMFwiOiAkY3lhbi03MDAsXG4gIFwiY3lhbi04MDBcIjogJGN5YW4tODAwLFxuICBcImN5YW4tOTAwXCI6ICRjeWFuLTkwMFxuKSAhZGVmYXVsdDtcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1jb2xvci12YXJpYWJsZXNcbiRwcmltYXJ5OiAgICAgICAkYmx1ZSAhZGVmYXVsdDtcbiRzZWNvbmRhcnk6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kc3VjY2VzczogICAgICAgJGdyZWVuICFkZWZhdWx0O1xuJGluZm86ICAgICAgICAgICRjeWFuICFkZWZhdWx0O1xuJHdhcm5pbmc6ICAgICAgICR5ZWxsb3cgIWRlZmF1bHQ7XG4kZGFuZ2VyOiAgICAgICAgJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kZGFyazogICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiR0aGVtZS1jb2xvcnM6IChcbiAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICBcInNlY29uZGFyeVwiOiAgJHNlY29uZGFyeSxcbiAgXCJzdWNjZXNzXCI6ICAgICRzdWNjZXNzLFxuICBcImluZm9cIjogICAgICAgJGluZm8sXG4gIFwid2FybmluZ1wiOiAgICAkd2FybmluZyxcbiAgXCJkYW5nZXJcIjogICAgICRkYW5nZXIsXG4gIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gIFwiZGFya1wiOiAgICAgICAkZGFya1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtY29sb3JzLW1hcFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtdGV4dC12YXJpYWJsZXNcbiRwcmltYXJ5LXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LXRleHQtZW1waGFzaXM6IHNoYWRlLWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy10ZXh0LWVtcGhhc2lzOiAgIHNoYWRlLWNvbG9yKCRzdWNjZXNzLCA2MCUpICFkZWZhdWx0O1xuJGluZm8tdGV4dC1lbXBoYXNpczogICAgICBzaGFkZS1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLXRleHQtZW1waGFzaXM6ICAgIHNoYWRlLWNvbG9yKCRkYW5nZXIsIDYwJSkgIWRlZmF1bHQ7XG4kbGlnaHQtdGV4dC1lbXBoYXNpczogICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiRkYXJrLXRleHQtZW1waGFzaXM6ICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtYmctc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYmctc3VidGxlOiAgICAgICB0aW50LWNvbG9yKCRwcmltYXJ5LCA4MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1iZy1zdWJ0bGU6ICAgICB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDgwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDgwJSkgIWRlZmF1bHQ7XG4kaW5mby1iZy1zdWJ0bGU6ICAgICAgICAgIHRpbnQtY29sb3IoJGluZm8sIDgwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDgwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJnLXN1YnRsZTogICAgICAgIHRpbnQtY29sb3IoJGRhbmdlciwgODAlKSAhZGVmYXVsdDtcbiRsaWdodC1iZy1zdWJ0bGU6ICAgICAgICAgbWl4KCRncmF5LTEwMCwgJHdoaXRlKSAhZGVmYXVsdDtcbiRkYXJrLWJnLXN1YnRsZTogICAgICAgICAgJGdyYXktNDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1ib3JkZXItc3VidGxlLXZhcmlhYmxlc1xuJHByaW1hcnktYm9yZGVyLXN1YnRsZTogICB0aW50LWNvbG9yKCRwcmltYXJ5LCA2MCUpICFkZWZhdWx0O1xuJHNlY29uZGFyeS1ib3JkZXItc3VidGxlOiB0aW50LWNvbG9yKCRzZWNvbmRhcnksIDYwJSkgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby1ib3JkZXItc3VidGxlOiAgICAgIHRpbnQtY29sb3IoJGluZm8sIDYwJSkgIWRlZmF1bHQ7XG4kd2FybmluZy1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHdhcm5pbmcsIDYwJSkgIWRlZmF1bHQ7XG4kZGFuZ2VyLWJvcmRlci1zdWJ0bGU6ICAgIHRpbnQtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC1ib3JkZXItc3VidGxlOiAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRhcmstYm9yZGVyLXN1YnRsZTogICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG5cbi8vIENoYXJhY3RlcnMgd2hpY2ggYXJlIGVzY2FwZWQgYnkgdGhlIGVzY2FwZS1zdmcgZnVuY3Rpb25cbiRlc2NhcGVkLWNoYXJhY3RlcnM6IChcbiAgKFwiPFwiLCBcIiUzY1wiKSxcbiAgKFwiPlwiLCBcIiUzZVwiKSxcbiAgKFwiI1wiLCBcIiUyM1wiKSxcbiAgKFwiKFwiLCBcIiUyOFwiKSxcbiAgKFwiKVwiLCBcIiUyOVwiKSxcbikgIWRlZmF1bHQ7XG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJvdW5kZWQ6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zaGFkb3dzOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtdHJhbnNpdGlvbnM6ICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlZHVjZWQtbW90aW9uOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1zbW9vdGgtc2Nyb2xsOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzOiAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1jc3NncmlkOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWJ1dHRvbi1wb2ludGVyczogICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yZnM6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnM6ICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6IHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXM6ICB0cnVlICFkZWZhdWx0O1xuXG4kZW5hYmxlLWRhcmstbW9kZTogICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGNvbG9yLW1vZGUtdHlwZTogICAgICAgICAgICAgZGF0YSAhZGVmYXVsdDsgLy8gYGRhdGFgIG9yIGBtZWRpYS1xdWVyeWBcblxuLy8gUHJlZml4IGZvciA6cm9vdCBDU1MgdmFyaWFibGVzXG5cbiR2YXJpYWJsZS1wcmVmaXg6ICAgICAgICAgICAgIGJzLSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAgZm9yIHRoZSBzaG9ydGVyIGAkcHJlZml4YFxuJHByZWZpeDogICAgICAgICAgICAgICAgICAgICAgJHZhcmlhYmxlLXByZWZpeCAhZGVmYXVsdDtcblxuLy8gR3JhZGllbnRcbi8vXG4vLyBUaGUgZ3JhZGllbnQgd2hpY2ggaXMgYWRkZWQgdG8gY29tcG9uZW50cyBpZiBgJGVuYWJsZS1ncmFkaWVudHNgIGlzIGB0cnVlYFxuLy8gVGhpcyBncmFkaWVudCBpcyBhbHNvIGFkZGVkIHRvIGVsZW1lbnRzIHdpdGggYC5iZy1ncmFkaWVudGBcbi8vIHNjc3MtZG9jcy1zdGFydCB2YXJpYWJsZS1ncmFkaWVudFxuJGdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR3aGl0ZSwgLjE1KSwgcmdiYSgkd2hpdGUsIDApKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdmFyaWFibGUtZ3JhZGllbnRcblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGFjZXItdmFyaWFibGVzLW1hcHNcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICAxOiAkc3BhY2VyICogLjI1LFxuICAyOiAkc3BhY2VyICogLjUsXG4gIDM6ICRzcGFjZXIsXG4gIDQ6ICRzcGFjZXIgKiAxLjUsXG4gIDU6ICRzcGFjZXIgKiAzLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgc3BhY2VyLXZhcmlhYmxlcy1tYXBzXG5cbi8vIFBvc2l0aW9uXG4vL1xuLy8gRGVmaW5lIHRoZSBlZGdlIHBvc2l0aW9uaW5nIGFuY2hvcnMgb2YgdGhlIHBvc2l0aW9uIHV0aWxpdGllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBvc2l0aW9uLW1hcFxuJHBvc2l0aW9uLXZhbHVlczogKFxuICAwOiAwLFxuICA1MDogNTAlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvc2l0aW9uLW1hcFxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS10ZXh0LWFsaWduOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kYm9keS1zZWNvbmRhcnktY29sb3I6ICAgICAgcmdiYSgkYm9keS1jb2xvciwgLjc1KSAhZGVmYXVsdDtcbiRib2R5LXNlY29uZGFyeS1iZzogICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG5cbiRib2R5LXRlcnRpYXJ5LWNvbG9yOiAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG4kYm9keS10ZXJ0aWFyeS1iZzogICAgICAgICAgJGdyYXktMTAwICFkZWZhdWx0O1xuXG4kYm9keS1lbXBoYXNpcy1jb2xvcjogICAgICAgJGJsYWNrICFkZWZhdWx0O1xuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHByaW1hcnkgIWRlZmF1bHQ7XG4kbGluay1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4kbGluay1zaGFkZS1wZXJjZW50YWdlOiAgICAgICAgICAgICAgICAgICAyMCUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBzaGlmdC1jb2xvcigkbGluay1jb2xvciwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kc3RyZXRjaGVkLWxpbmstcHNldWRvLWVsZW1lbnQ6ICAgICAgICAgICBhZnRlciAhZGVmYXVsdDtcbiRzdHJldGNoZWQtbGluay16LWluZGV4OiAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbi8vIEljb24gbGlua3Ncbi8vIHNjc3MtZG9jcy1zdGFydCBpY29uLWxpbmstdmFyaWFibGVzXG4kaWNvbi1saW5rLWdhcDogICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0OiAgLjI1ZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tc2l6ZTogICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNpdGlvbjogICAuMnMgZWFzZS1pbi1vdXQgdHJhbnNmb3JtICFkZWZhdWx0O1xuJGljb24tbGluay1pY29uLXRyYW5zZm9ybTogICAgdHJhbnNsYXRlM2QoLjI1ZW0sIDAsIDApICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpY29uLWxpbmstdmFyaWFibGVzXG5cbi8vIFBhcmFncmFwaHNcbi8vXG4vLyBTdHlsZSBwIGVsZW1lbnQuXG5cbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogICAxcmVtICFkZWZhdWx0O1xuXG5cbi8vIEdyaWQgYnJlYWtwb2ludHNcbi8vXG4vLyBEZWZpbmUgdGhlIG1pbmltdW0gZGltZW5zaW9ucyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSxcbi8vIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMsIGZvciB1c2UgaW4gbWVkaWEgcXVlcmllcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGdyaWQtYnJlYWtwb2ludHNcbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4LFxuICB4eGw6IDE0MDBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZ3JpZC1icmVha3BvaW50c1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbnRhaW5lci1tYXgtd2lkdGhzXG4kY29udGFpbmVyLW1heC13aWR0aHM6IChcbiAgc206IDU0MHB4LFxuICBtZDogNzIwcHgsXG4gIGxnOiA5NjBweCxcbiAgeGw6IDExNDBweCxcbiAgeHhsOiAxMzIwcHhcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbnRhaW5lci1tYXgtd2lkdGhzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJGdyaWQtcm93LWNvbHVtbnM6ICAgICAgICAgICAgNiAhZGVmYXVsdDtcblxuLy8gQ29udGFpbmVyIHBhZGRpbmdcblxuJGNvbnRhaW5lci1wYWRkaW5nLXg6ICRncmlkLWd1dHRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBDb21wb25lbnRzXG4vL1xuLy8gRGVmaW5lIGNvbW1vbiBwYWRkaW5nIGFuZCBib3JkZXIgcmFkaXVzIHNpemVzIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGJvcmRlci13aWR0aHM6IChcbiAgMTogMXB4LFxuICAyOiAycHgsXG4gIDM6IDNweCxcbiAgNDogNHB4LFxuICA1OiA1cHhcbikgIWRlZmF1bHQ7XG4kYm9yZGVyLXN0eWxlOiAgICAgICAgICAgICAgICBzb2xpZCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICAgIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXhsOiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy14eGw6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtcGlsbDogICAgICAgICAgNTByZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtdmFyaWFibGVzXG4vLyBmdXN2LWRpc2FibGVcbiRib3JkZXItcmFkaXVzLTJ4bDogICAgICAgICAgICRib3JkZXItcmFkaXVzLXh4bCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3gtc2hhZG93LXZhcmlhYmxlc1xuJGJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGJveC1zaGFkb3ctc206ICAgICAgICAgICAgICAgMCAuMTI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1sZzogICAgICAgICAgICAgICAwIDFyZW0gM3JlbSByZ2JhKCRibGFjaywgLjE3NSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1pbnNldDogICAgICAgICAgICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3gtc2hhZG93LXZhcmlhYmxlc1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvY3VzLXJpbmctdmFyaWFibGVzXG4kZm9jdXMtcmluZy13aWR0aDogICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1vcGFjaXR5OiAgICAuMjUgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1jb2xvcjogICAgICByZ2JhKCRwcmltYXJ5LCAkZm9jdXMtcmluZy1vcGFjaXR5KSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJsdXI6ICAgICAgIDAgIWRlZmF1bHQ7XG4kZm9jdXMtcmluZy1ib3gtc2hhZG93OiAwIDAgJGZvY3VzLXJpbmctYmx1ciAkZm9jdXMtcmluZy13aWR0aCAkZm9jdXMtcmluZy1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9jdXMtcmluZy12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmV0LXZhcmlhYmxlc1xuJGNhcmV0LXdpZHRoOiAgICAgICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcbiRjYXJldC12ZXJ0aWNhbC1hbGlnbjogICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbiRjYXJldC1zcGFjaW5nOiAgICAgICAgICAgICAgICRjYXJldC13aWR0aCAqIC44NSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZXQtdmFyaWFibGVzXG5cbiR0cmFuc2l0aW9uLWJhc2U6ICAgICAgICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgICAgICBvcGFjaXR5IC4xNXMgbGluZWFyICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLXRyYW5zaXRpb25cbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbGxhcHNlLXRyYW5zaXRpb25cblxuLy8gc3R5bGVsaW50LWRpc2FibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4vLyBzY3NzLWRvY3Mtc3RhcnQgYXNwZWN0LXJhdGlvc1xuJGFzcGVjdC1yYXRpb3M6IChcbiAgXCIxeDFcIjogMTAwJSxcbiAgXCI0eDNcIjogY2FsYygzIC8gNCAqIDEwMCUpLFxuICBcIjE2eDlcIjogY2FsYyg5IC8gMTYgKiAxMDAlKSxcbiAgXCIyMXg5XCI6IGNhbGMoOSAvIDIxICogMTAwJSlcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFzcGVjdC1yYXRpb3Ncbi8vIHN0eWxlbGludC1lbmFibGUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbi8vIFR5cG9ncmFwaHlcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvbnQtdmFyaWFibGVzXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgXCJOb3RvIFNhbnNcIiwgXCJMaWJlcmF0aW9uIFNhbnNcIiwgQXJpYWwsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4vLyBzdHlsZWxpbnQtZW5hYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWZvbnQtc2Fucy1zZXJpZikgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktY29kZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2UpICFkZWZhdWx0O1xuXG4vLyAkZm9udC1zaXplLXJvb3QgYWZmZWN0cyB0aGUgdmFsdWUgb2YgYHJlbWAsIHdoaWNoIGlzIHVzZWQgZm9yIGFzIHdlbGwgZm9udCBzaXplcywgcGFkZGluZ3MsIGFuZCBtYXJnaW5zXG4vLyAkZm9udC1zaXplLWJhc2UgYWZmZWN0cyB0aGUgZm9udCBzaXplIG9mIHRoZSBib2R5IHRleHRcbiRmb250LXNpemUtcm9vdDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0OyAvLyBBc3N1bWVzIHRoZSBicm93c2VyIGRlZmF1bHQsIHR5cGljYWxseSBgMTZweGBcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtbGlnaHRlcjogICAgICAgICBsaWdodGVyICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWxpZ2h0OiAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW5vcm1hbDogICAgICAgICAgNDAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LW1lZGl1bTogICAgICAgICAgNTAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LXNlbWlib2xkOiAgICAgICAgNjAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGQ6ICAgICAgICAgICAgNzAwICFkZWZhdWx0O1xuJGZvbnQtd2VpZ2h0LWJvbGRlcjogICAgICAgICAgYm9sZGVyICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMiAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMi41ICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMiAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNzUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC1zaXplc1xuJGZvbnQtc2l6ZXM6IChcbiAgMTogJGgxLWZvbnQtc2l6ZSxcbiAgMjogJGgyLWZvbnQtc2l6ZSxcbiAgMzogJGgzLWZvbnQtc2l6ZSxcbiAgNDogJGg0LWZvbnQtc2l6ZSxcbiAgNTogJGg1LWZvbnQtc2l6ZSxcbiAgNjogJGg2LWZvbnQtc2l6ZVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9udC1zaXplc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaGVhZGluZ3MtdmFyaWFibGVzXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtc3R5bGU6ICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGhlYWRpbmdzLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZGlzcGxheS1oZWFkaW5nc1xuJGRpc3BsYXktZm9udC1zaXplczogKFxuICAxOiA1cmVtLFxuICAyOiA0LjVyZW0sXG4gIDM6IDRyZW0sXG4gIDQ6IDMuNXJlbSxcbiAgNTogM3JlbSxcbiAgNjogMi41cmVtXG4pICFkZWZhdWx0O1xuXG4kZGlzcGxheS1mb250LWZhbWlseTogbnVsbCAhZGVmYXVsdDtcbiRkaXNwbGF5LWZvbnQtc3R5bGU6ICBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGRpc3BsYXktaGVhZGluZ3NcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHR5cGUtdmFyaWFibGVzXG4kbGVhZC1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuXG4kc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAuODc1ZW0gIWRlZmF1bHQ7XG5cbiRzdWItc3VwLWZvbnQtc2l6ZTogICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIDUuMy4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaW5pdGlhbGlzbS1mb250LXNpemU6ICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4kYmxvY2txdW90ZS1tYXJnaW4teTogICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1jb2xvcjogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWZvb3Rlci1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRoci1tYXJnaW4teTogICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kaHItY29sb3I6ICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRoci1iZy1jb2xvcjogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4kaHItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMFxuLy8gZnVzdi1lbmFibGVcblxuJGhyLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gQWxsb3dzIGZvciBpbmhlcml0ZWQgY29sb3JzXG4kaHItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRoci1vcGFjaXR5OiAgICAgICAgICAgICAgICAgIC4yNSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZyLXZhcmlhYmxlc1xuJHZyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHZyLXZhcmlhYmxlc1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgJHllbGxvdy0xMDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHR5cGUtdmFyaWFibGVzXG5cblxuLy8gVGFibGVzXG4vL1xuLy8gQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGFibGUtdmFyaWFibGVzXG4kdGFibGUtY2VsbC1wYWRkaW5nLXk6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteDogICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy15LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtOiAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY2VsbC12ZXJ0aWNhbC1hbGlnbjogICB0b3AgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZy1mYWN0b3I6ICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYWN0aXZlLWJnOiAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZy1mYWN0b3I6ICAgICAgIC4wNzUgIWRlZmF1bHQ7XG4kdGFibGUtaG92ZXItYmc6ICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjIgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Y29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAkZm9jdXMtcmluZy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eTogJGZvY3VzLXJpbmctb3BhY2l0eSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgICRmb2N1cy1yaW5nLWJsdXIgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZm9jdXMtc2hhZG93LXJnYjogICB0by1yZ2IobWl4KGNvbG9yLWNvbnRyYXN0KCRsaW5rLWNvbG9yKSwgJGxpbmstY29sb3IsIDE1JSkpICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1zbSkgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRidG4tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQ6ICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYmctdGludC1hbW91bnQ6ICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci1zaGFkZS1hbW91bnQ6ICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1ib3JkZXItdGludC1hbW91bnQ6ICAgIDEwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXNoYWRlLWFtb3VudDogICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1iZy10aW50LWFtb3VudDogICAgICAgMjAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXNoYWRlLWFtb3VudDogIDI1JSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudDogICAxMCUgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYWJsZXNcblxuXG4vLyBGb3Jtc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuJGZvcm0tdGV4dC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS10ZXh0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1sYWJlbC12YXJpYWJsZXNcbiRmb3JtLWxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1pbnB1dC12YXJpYWJsZXNcbiRpbnB1dC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRpbnB1dC1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1iYXNlICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXktc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemUtc206ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGlucHV0LWZvY3VzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA1MCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LXBsYWludGV4dC1jb2xvcjogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgIGNhbGMoI3skaW5wdXQtYm9yZGVyLXdpZHRofSAqIDIpICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLWNvbG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAzcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1jaGVjay12YXJpYWJsZXNcbiRmb3JtLWNoZWNrLWlucHV0LXdpZHRoOiAgICAgICAgICAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydDogICAgICAgICAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgLjEyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWxhYmVsLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stdHJhbnNpdGlvbjogICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYWN0aXZlLWZpbHRlcjogICAgICAgICAgYnJpZ2h0bmVzcyg5MCUpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4yNWVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtZm9jdXMtYm9yZGVyOiAgICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3I6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjogICAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjAgMjAnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzMnIGQ9J202IDEwIDMgMyA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPScyJyBmaWxsPScjeyRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdNNiAxMGg4Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjUgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWJ0bi1jaGVjay1kaXNhYmxlZC1vcGFjaXR5OiAgICAkYnRuLWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kOiAgICAxcmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWNoZWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG4kZm9ybS1zd2l0Y2gtY29sb3I6ICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yNSkgIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtd2lkdGg6ICAgICAgICAgICAgICAgMmVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCArIC41ZW0gIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtYmctaW1hZ2U6ICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMycgZmlsbD0nI3skZm9ybS1zd2l0Y2gtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJvcmRlci1yYWRpdXM6ICAgICAgICRmb3JtLXN3aXRjaC13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC10cmFuc2l0aW9uOiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcjogICAgICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWZvY3VzLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctaW1hZ2U6ICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNoZWNrZWQtY29sb3J9Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWNoZWNrZWQtYmctcG9zaXRpb246IHJpZ2h0IGNlbnRlciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1zd2l0Y2gtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBpbnB1dC1ncm91cC12YXJpYWJsZXNcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogICAgICAgICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWdyb3VwLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1zZWxlY3QtdmFyaWFibGVzXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAgICRpbnB1dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgICAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMyAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyBmb3IgYmFja2dyb3VuZC1pbWFnZVxuJGZvcm0tc2VsZWN0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWNvbG9yOiAgICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWRpc2FibGVkLWNvbG9yOiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1iZzogICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctcG9zaXRpb246ICAgICAgICAgICByaWdodCAkZm9ybS1zZWxlY3QtcGFkZGluZy14IGNlbnRlciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZy1zaXplOiAgICAgICAgICAgICAgIDE2cHggMTJweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICAgJGdyYXktODAwICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnPjxwYXRoIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBzdHJva2Utd2lkdGg9JzInIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcGFkZGluZy1lbmQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXggKiAyLjUgKyAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbjogICAgY2VudGVyIHJpZ2h0ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU6ICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtYm9yZGVyLXdpZHRoOiAgICAgICAgJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRpbnB1dC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJveC1zaGFkb3c6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LWluc2V0KSAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbTogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXRyYW5zaXRpb246ICAgICAgICAgICRpbnB1dC10cmFuc2l0aW9uICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tcmFuZ2UtdmFyaWFibGVzXG4kZm9ybS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1czogIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQpICFkZWZhdWx0O1xuXG4kZm9ybS1yYW5nZS10aHVtYi13aWR0aDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkZm9ybS1yYW5nZS10aHVtYi13aWR0aCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1czogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAuMXJlbSAuMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdy13aWR0aDogICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDsgLy8gRm9yIGZvY3VzIGJveCBzaGFkb3cgaXNzdWUgaW4gRWRnZVxuJGZvcm0tcmFuZ2UtdGh1bWItYWN0aXZlLWJnOiAgICAgICAgICAgICAgIHRpbnQtY29sb3IoJGNvbXBvbmVudC1hY3RpdmUtYmcsIDcwJSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXJhbmdlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1maWxlLXZhcmlhYmxlc1xuJGZvcm0tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWJnOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZpbGUtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuJGZvcm0tZmxvYXRpbmctaGVpZ2h0OiAgICAgICAgICAgICAgICAgIGFkZCgzLjVyZW0sICRpbnB1dC1oZWlnaHQtYm9yZGVyKSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDogICAgICAgICAxLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjogICAgICAgICAuNjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtaGVpZ2h0OiAgICAgICAgICAgIDEuNWVtICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtb3BhY2l0eTogICAgICAgICAgIC42NSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTogICAgICAgICBzY2FsZSguODUpIHRyYW5zbGF0ZVkoLS41cmVtKSB0cmFuc2xhdGVYKC4xNXJlbSkgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctdHJhbnNpdGlvbjogICAgICAgICAgICAgIG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZsb2F0aW5nLXZhcmlhYmxlc1xuXG4vLyBGb3JtIHZhbGlkYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU6ICAgICAgICAgICRmb3JtLXRleHQtZm9udC1zdHlsZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yOiAgICAgICAgICRzdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgJGRhbmdlciAhZGVmYXVsdDtcblxuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcjogICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkOiAgICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi12YWxpZC1jb2xvcn0nIGQ9J00yLjMgNi43My42IDQuNTNjLS40LTEuMDQuNDYtMS40IDEuMS0uOGwxLjEgMS40IDMuNC0zLjhjLjYtLjYzIDEuNi0uMjcgMS4yLjdsLTQgNC42Yy0uNDMuNS0uOC40LTEuMS4xJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDEyIDEyJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9Jz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS12YWxpZGF0aW9uLWNvbG9yc1xuJGZvcm0tdmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtY29sb3I6ICAgICAgICAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tc3RhdGVzXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKFxuICBcInZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yKSxcbiAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1zdWNjZXNzLXJnYiksICRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eSksXG4gICAgXCJib3JkZXItY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKSxcbiAgXCJpbnZhbGlkXCI6IChcbiAgICBcImNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQsXG4gICAgXCJ0b29sdGlwLWNvbG9yXCI6ICNmZmYsXG4gICAgXCJ0b29sdGlwLWJnLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1kYW5nZXIpLFxuICAgIFwiZm9jdXMtYm94LXNoYWRvd1wiOiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKHZhcigtLSN7JHByZWZpeH1kYW5nZXItcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1pbnZhbGlkLWJvcmRlci1jb2xvciksXG4gIClcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcblxuLy8gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LXN0YWNrXG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1zdGlja3k6ICAgICAgICAgICAgICAgICAgICAgMTAyMCAhZGVmYXVsdDtcbiR6aW5kZXgtZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhcy1iYWNrZHJvcDogICAgICAgICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1vZmZjYW52YXM6ICAgICAgICAgICAgICAgICAgMTA0NSAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2Ryb3A6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgICAgICAgICAxMDU1ICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgICAgICAgICAgIDEwODAgIWRlZmF1bHQ7XG4kemluZGV4LXRvYXN0OiAgICAgICAgICAgICAgICAgICAgICAxMDkwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB6aW5kZXgtc3RhY2tcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHppbmRleC1sZXZlbHMtbWFwXG4kemluZGV4LWxldmVsczogKFxuICBuMTogLTEsXG4gIDA6IDAsXG4gIDE6IDEsXG4gIDI6IDIsXG4gIDM6IDNcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1sZXZlbHMtbWFwXG5cblxuLy8gTmF2c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXZhcmlhYmxlc1xuJG5hdi1saW5rLXBhZGRpbmcteTogICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstdHJhbnNpdGlvbjogICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9jdXMtYm94LXNoYWRvdzogICAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgJG5hdi10YWJzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAkbmF2LXRhYnMtbGluay1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRuYXYtdW5kZXJsaW5lLWdhcDogICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAuMTI1cmVtICFkZWZhdWx0O1xuJG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2LXZhcmlhYmxlc1xuXG5cbi8vIE5hdmJhclxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLXZhcmlhYmxlc1xuJG5hdmJhci1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtZm9udC1zaXplOiAgICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4vLyBDb21wdXRlIHRoZSBuYXZiYXItYnJhbmQgcGFkZGluZy15IHNvIHRoZSBuYXZiYXItYnJhbmQgd2lsbCBoYXZlIHRoZSBzYW1lIGhlaWdodCBhcyBuYXZiYXItdGV4dCBhbmQgbmF2LWxpbmtcbiRuYXYtbGluay1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlICsgJG5hdi1saW5rLXBhZGRpbmcteSAqIDIgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLWhlaWdodDogICAgICAgICAgICAgICAkbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZSAqICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICAgICAgICAgICAgKCRuYXYtbGluay1oZWlnaHQgLSAkbmF2YmFyLWJyYW5kLWhlaWdodCkgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICAgICAgICAkYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXRyYW5zaXRpb246ICAgICAgICAgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuNjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjgpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuMykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWljb24tY29sb3I6ICAgICAgICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4xNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItZGFyay12YXJpYWJsZXNcbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNTUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWhvdmVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstZGlzYWJsZWQtY29sb3I6ICAgICAgICByZ2JhKCR3aGl0ZSwgLjI1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1pY29uLWNvbG9yOiAgICAgICAgICAgICRuYXZiYXItZGFyay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmc6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMwIDMwJz48cGF0aCBzdHJva2U9JyN7JG5hdmJhci1kYXJrLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGRyb3Bkb3duLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgJGRyb3Bkb3duLXBhZGRpbmcteSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXkgJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGRyb3Bkb3duLWRhcmstdmFyaWFibGVzXG4kZHJvcGRvd24tZGFyay1jb2xvcjogICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1iZzogICAgICAgICAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3JkZXItY29sb3I6ICAgICAgICAkZHJvcGRvd24tYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZzogICAgICAgICAgJGRyb3Bkb3duLWRpdmlkZXItYmcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1ib3gtc2hhZG93OiAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1jb2xvcjogICAgICAgICAgJGRyb3Bkb3duLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWNvbG9yOiAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWhvdmVyLWJnOiAgICAgICByZ2JhKCR3aGl0ZSwgLjE1KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yOiAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWJnOiAgICAgICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3I6ICRncmF5LTUwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWhlYWRlci1jb2xvcjogICAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcblxuXG4vLyBQYWdpbmF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbTogICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LWxnOiAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0OiAgICAgICAgICAgY2FsYygtMSAqICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0OyAvLyBUb2RvIGluIHY2OiByZW1vdmUgdGhpcz9cblxuJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc206ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGFnaW5hdGlvbi12YXJpYWJsZXNcblxuXG4vLyBQbGFjZWhvbGRlcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBsYWNlaG9sZGVyc1xuJHBsYWNlaG9sZGVyLW9wYWNpdHktbWF4OiAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kcGxhY2Vob2xkZXItb3BhY2l0eS1taW46ICAgICAgICAgICAuMiAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcGxhY2Vob2xkZXJzXG5cbi8vIENhcmRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLXZhcmlhYmxlc1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXNwYWNlci14OiAgICAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1zcGFjZXIteTogICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtc3VidGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kY2FyZC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci15ICogLjUgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAkY2FyZC1zcGFjZXIteCAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgLjAzKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1jb2xvcjogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmc6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kY2FyZC1ncm91cC1tYXJnaW46ICAgICAgICAgICAgICAgICAkZ3JpZC1ndXR0ZXItd2lkdGggKiAuNSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2FyZC12YXJpYWJsZXNcblxuLy8gQWNjb3JkaW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhY2NvcmRpb24tdmFyaWFibGVzXG4kYWNjb3JkaW9uLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICBzdWJ0cmFjdCgkYWNjb3JkaW9uLWJvcmRlci1yYWRpdXMsICRhY2NvcmRpb24tYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24tcGFkZGluZy15OiAgICAgICAgICAgICAgJGFjY29yZGlvbi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWJnOiAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uLCBib3JkZXItcmFkaXVzIC4xNXMgZWFzZSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LWJnLXN1YnRsZSkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9cHJpbWFyeS10ZXh0LWVtcGhhc2lzKSAhZGVmYXVsdDtcblxuLy8gZnVzdi1kaXNhYmxlXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuM1xuLy8gZnVzdi1lbmFibGVcbiRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRidG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgJHByaW1hcnktdGV4dC1lbXBoYXNpcyAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tdHJhbnNmb3JtOiAgICAgICAgICAgICAgICByb3RhdGUoLTE4MGRlZykgIWRlZmF1bHQ7XG5cbiRhY2NvcmRpb24tYnV0dG9uLWljb246ICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnPjxwYXRoIGQ9J20yIDUgNiA2IDYtNicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uOiAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9J25vbmUnIHN0cm9rZT0nI3skYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJz48cGF0aCBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdykgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgJGhlYWRpbmdzLWNvbG9yICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteTogICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy14OiAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteTogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJHBvcG92ZXItYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWhlaWdodDogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIERlcHJlY2F0ZWQgaW4gQm9vdHN0cmFwIDUuMi4wIGZvciBDU1MgdmFyaWFibGVzXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuXG4vLyBUb2FzdHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvYXN0LXZhcmlhYmxlc1xuJHRvYXN0LW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMzUwcHggIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcbiR0b2FzdC1zcGFjaW5nOiAgICAgICAgICAgICAgICAgICAgICRjb250YWluZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYmFja2dyb3VuZC1jb2xvcjogICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktYmctcmdiKSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICR0b2FzdC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRvYXN0LXZhcmlhYmxlc1xuXG5cbi8vIEJhZGdlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYmFkZ2UtdmFyaWFibGVzXG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAuNzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjM1ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAuNjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYmFkZ2UtdmFyaWFibGVzXG5cblxuLy8gTW9kYWxzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBtb2RhbC12YXJpYWJsZXNcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW46ICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbW9kYWwtZGlhbG9nLW1hcmdpbjogICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXA6ICAgICAgIDEuNzVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kbW9kYWwtY29udGVudC1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXA6ICAgIHZhcigtLSN7JHByZWZpeH1ib3gtc2hhZG93KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG5cbiRtb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgICAgICAgICRtb2RhbC1oZWFkZXItcGFkZGluZy15ICRtb2RhbC1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0OyAvLyBLZWVwIHRoaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5XG5cbiRtb2RhbC1mb290ZXItYmc6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRtb2RhbC1mb290ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcbiRtb2RhbC1tZDogICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwteGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQwcHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mYWRlLXRyYW5zZm9ybTogICAgICAgICAgICAgIHRyYW5zbGF0ZSgwLCAtNTBweCkgIWRlZmF1bHQ7XG4kbW9kYWwtc2hvdy10cmFuc2Zvcm06ICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcbiRtb2RhbC1zY2FsZS10cmFuc2Zvcm06ICAgICAgICAgICAgIHNjYWxlKDEuMDIpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC12YXJpYWJsZXNcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LXZhcmlhYmxlc1xuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGFsZXJ0LW1hcmdpbi1ib3R0b206ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuLy8gZnVzdi1lbmFibGVcblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZTogICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbC12YXJpYWJsZXNcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZpZ3VyZS12YXJpYWJsZXNcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi12YXJpYWJsZXNcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaWNvbi1maWx0ZXI6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3Itd2lkdGg6ICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1oZWlnaHQ6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGl0LWFyZWEtaGVpZ2h0OiAxMHB4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI6ICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itb3BhY2l0eTogICAgICAgICAuNSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1vcGFjaXR5OiAgMSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItdHJhbnNpdGlvbjogICAgICBvcGFjaXR5IC42cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY2FwdGlvbi13aWR0aDogICAgICAgICAgICAgNzAlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXBhZGRpbmcteTogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcm91c2VsLWNhcHRpb24tc3BhY2VyOiAgICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAycmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6ICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGNhcm91c2VsLWNvbnRyb2wtY29sb3J9Jz48cGF0aCBkPSdNMTEuMzU0IDEuNjQ2YS41LjUgMCAwIDEgMCAuNzA4TDUuNzA3IDhsNS42NDcgNS42NDZhLjUuNSAwIDAgMS0uNzA4LjcwOGwtNi02YS41LjUgMCAwIDEgMC0uNzA4bDYtNmEuNS41IDAgMCAxIC43MDggMCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nPjxwYXRoIGQ9J000LjY0NiAxLjY0NmEuNS41IDAgMCAxIC43MDggMGw2IDZhLjUuNSAwIDAgMSAwIC43MDhsLTYgNmEuNS41IDAgMCAxLS43MDgtLjcwOEwxMC4yOTMgOCA0LjY0NiAyLjM1NGEuNS41IDAgMCAxIDAtLjcwOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMy40XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuNFxuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjRcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMSAxIDEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMCAxIDAtMS40MTQnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLXNoYWRvdzogICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLW9wYWNpdHk6ICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAgICAuNzUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHk6ICAgIDEgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtZmlsdGVyOiAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRidG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAgICAgaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuNFxuLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS12YXJpYWJsZXNcblxuXG4vLyBPZmZjYW52YXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG9mZmNhbnZhcy12YXJpYWJsZXNcbiRvZmZjYW52YXMtcGFkZGluZy15OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGg6ICAgICAgICA0MDBweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0OiAgICAgICAgIDMwdmggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAuM3MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJvcmRlci13aWR0aDogICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAkbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJnLWNvbG9yOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAkbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1iZzogICAgICAgICAgICAgJG1vZGFsLWJhY2tkcm9wLWJnICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy12YXJpYWJsZXNcblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRrYmQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIC4xODc1cmVtICFkZWZhdWx0O1xuJGtiZC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRrYmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICRjb2RlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wLCByZW1vdmluZyBpbiB2NlxuXG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG5AaW1wb3J0IFwidmFyaWFibGVzLWRhcmtcIjsgLy8gVE9ETzogY2FuIGJlIHJlbW92ZWQgc2FmZWx5IGluIHY2LCBvbmx5IGhlcmUgdG8gYXZvaWQgYnJlYWtpbmcgY2hhbmdlcyBpbiB2NS4zXG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5wcm9kdWN0LXNlcnZpY2VzIHtcbiAgICAuZm9ybS1pbnB1dCB7XG4gICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNzAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctYmxvY2stc3RhcnQ6IDhweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtYXgtY29udGVudCAwZnI7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDAsIGF1dG8pKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGdyaWQtdGVtcGxhdGUtcm93cyAwLjM1cyAwcyBlYXNlLWluO1xuXG4gICAgICAgICAgICAmOmhhcygucHJvZHVjdC1zZXJ2aWNlc19fZ3JvdXAuYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBtYXgtY29udGVudCAxZnI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcygucHJvZHVjdC1zZXJ2aWNlc19fZ3JvdXAuYWN0aXZlKSB7XG4gICAgICAgICAgICAucHJvZHVjdC1zZXJ2aWNlc19fZ3JvdXA6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICAgICAgICAucHJvZHVjdC1zZXJ2aWNlc19fZ3JvdXAtbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnMsIDBzLCAwLjA1cywgMHM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZC1ib3g7XG5cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNDAwO1xuXG4gICAgICAgICYsXG4gICAgICAgICYtLWFsdCB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdy13cmFwOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdkYXJrJyk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWxlY3RlZCxcbiAgICAgICAgJjpoYXMoOmNoZWNrZWQpLFxuICAgICAgICAmLS1hbHQuc2VsZWN0ZWQsXG4gICAgICAgICYtLWFsdDpoYXMoOmNoZWNrZWQpIHtcbiAgICAgICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsICdwcmltYXJ5LWRhcmsnKTtcblxuICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1kYXJrJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCd4eGwnKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIC5wcm9kdWN0LXNlcnZpY2VzX19ncm91cC10cmlnZ2VyLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAucHJvZHVjdC1zZXJ2aWNlc19fZ3JvdXAtdHJpZ2dlci10aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi10cmlnZ2VyLXRpdGxlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAxO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnZ3JheS0xMDAnKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDcwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCA0NXB4IDhweCAxNHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvdXRsaW5lIDAuMDVzIGVhc2U7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE5MXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA4cHggMTBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgY3VycmVudGNvbG9yO1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxLjVweCAxLjVweCAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzLjVweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnktbGlnaHQnKTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMjBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4zNXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjM1cyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1saXN0IHtcbiAgICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1saWdodCcpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KG1pbigyMDBweCwgMTAwJSksIDFmcikpO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgIGdhcDogMDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDZweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodCAwcyAwcyBlYXNlLFxuICAgICAgICAgICAgICAgIHBhZGRpbmcgMC4zNXMgMHMgZWFzZSxcbiAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMzVzIDBzIGVhc2UsXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMzVzIGVhc2U7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4zNXMsIDBzLCAwLjA1cywgMHM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LXNlcnZpY2VzX19pdGVtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDhweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIC5wcm9kdWN0LXNlcnZpY2VzX19zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IG1heC1jb250ZW50IDFmcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3Qtc2VydmljZXNfX2dyb3VwLWxpc3Qge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcywgMHMsIDBzLCAwcztcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ3h4bCcpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0LXNlcnZpY2VzX19ncm91cC10cmlnZ2VyLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1kYXJrJyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1saWdodCcpO1xuXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgICAmOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgLnByb2R1Y3Qtc2VydmljZXNfX2dyb3VwLXRyaWdnZXItdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAncHJpbWFyeS1kYXJrJyk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnktbGlnaHQnKTtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgJ3ByaW1hcnktZGFyaycpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigneHhsJykge1xuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnByb2R1Y3QtZGV0YWlsIHtcbiAgICAmX19tb250aGx5LWxvd2VzdC1wcmljZSAuYnRuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCBsaWdodCk7XG4gICAgICAgIGNvbG9yOiBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBtYXAuZ2V0KCR0aGVtZS1jb2xvcnMsIHByaW1hcnkpO1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgcGFkZGluZzogMC41MTZlbSAwLjc3ZW07XG4gICAgICAgIGhlaWdodDogbWF4LWNvbnRlbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNjE1ZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhdGlvbi1zZXR0aW5nczogJ3dnaHQnIDYwMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICY6bm90KFtkaXNhYmxlZF0pOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJHRoZW1lLWNvbG9ycywgcHJpbWFyeSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgY3VycmVudGNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDEuNXB4IDEuNXB4IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgcGFkZGluZzogMy41cHg7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgcmlnaHQ6IDI2cHg7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjE4MmVtIDEuMjQ5ZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucHJvZHVjdC1kZXRhaWwge1xuICAgICZfX2ZsYWdzICsgJl9fcHJvZHVjdHMtY29uZGl0aW9ucyB7XG4gICAgICAgIG1hcmdpbi1ibG9jay1zdGFydDogMXJlbTtcbiAgICB9XG5cbiAgICAmX19wcm9kdWN0cy1jb25kaXRpb25zIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGxhYmVsLXVzZWQtcHJvZHVjdC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRsYWJlbC11c2VkLXByb2R1Y3QtY29sb3IsIDAuMDUpO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTVweDtcbiAgICAgICAgdGV4dC13cmFwOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAzMHB4IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRsYWJlbC11c2VkLXByb2R1Y3QtY29sb3I7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmlzKHApIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgJ3Nhc3M6bWFwJztcblxuLnByb2R1Y3QtZ2lmdHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBnYXA6IDEuNnJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bignbWQnKSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBnYXA6IDFyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4ucHJvZHVjdC1naWZ0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDIuNXJlbSBhdXRvIGF1dG87XG4gICAgZ2FwOiAwIDEuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGFiZWwtZ2lmdC1iZy1jb2xvcjtcbiAgICBwYWRkaW5nOiAxMHB4IDE3cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRsYWJlbC1naWZ0LWNvbG9yLCAwLjIpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCdsZycpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMzBweDtcbiAgICAgICAgZ2FwOiAwIDJyZW07XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMy41cmVtIGF1dG8gYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIGdyaWQtcm93OiAxIC8gc3BhbiAyO1xuICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwJTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzLjVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDMuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWF0aW9uLXNldHRpbmdzOiAnd2dodCcgNjAwO1xuICAgICAgICBjb2xvcjogJGxhYmVsLWdpZnQtY29sb3I7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICBhbGlnbi1zZWxmOiBlbmQ7XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgnbGcnKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Rlc2Mge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICBhbGlnbi1zZWxmOiBzdGFydDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCdsZycpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICB3aWR0aDogNC43cmVtO1xuICAgICAgICBoZWlnaHQ6IDQuN3JlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkdGhlbWUtY29sb3JzLCAnbGlnaHQnKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkbGFiZWwtZ2lmdC1jb2xvciwgMC4yKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBncmlkLXJvdzogMSAvIHNwYW4gMjtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDM7XG4gICAgICAgIGp1c3RpZnktc2VsZjogZW5kO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJ2xnJykge1xuICAgICAgICAgICAgd2lkdGg6IDhyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDhyZW07XG4gICAgICAgIH1cblxuICAgICAgICBwaWN0dXJlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogNSU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5cbi5lbWJsYSB7XG4gICAgJl9fcGFnaW5nIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwLjVyZW07XG5cbiAgICAgICAgJi12YWx1ZSB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDJjaDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdG90YWwtcGFnZXMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogc3RhcnQ7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMC4yNWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyoqXG4gKiBSZXRyaWV2ZXMgdGhlIG5leHQgc21hbGxlciBicmVha3BvaW50IGZyb20gdGhlIGdpdmVuIGJyZWFrcG9pbnQuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gVGhlIGJyZWFrcG9pbnQgZm9yIHdoaWNoIHRvIGZpbmQgdGhlIG5leHQgc21hbGxlciBicmVha3BvaW50LlxuICogQHJldHVybiB7U3RyaW5nfG51bGx9IC0gVGhlIG5leHQgc21hbGxlciBicmVha3BvaW50LCBvciBudWxsIGlmIG5vIHNtYWxsZXIgYnJlYWtwb2ludCBpcyBhdmFpbGFibGUuXG4gKi9cbi8qKlxuICogUmV0cmlldmVzIHRoZSBuZXh0IGxhcmdlciBicmVha3BvaW50IGZyb20gdGhlICRncmlkLWJyZWFrcG9pbnRzIG1hcC5cbiAqXG4gKiBAZnVuY3Rpb24gZ2V0LWJpZ2dlci1icmVha3BvaW50XG4gKiBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBUaGUgY3VycmVudCBicmVha3BvaW50IHRvIGZpbmQgdGhlIG5leHQgbGFyZ2VyIG9uZSBmb3IuXG4gKiBAcmV0dXJuIHtTdHJpbmcgfCBudWxsfSAtIFRoZSBuZXh0IGxhcmdlciBicmVha3BvaW50IG9yIG51bGwgaWYgdGhlIGN1cnJlbnQgYnJlYWtwb2ludCBpcyB0aGUgbGFyZ2VzdCBvciBub3QgZm91bmQuXG4gKi9cbi8qKlxuICogUmVzZXQgaVNwYWNlIGN1c3RvbSBmb3JtIGlucHV0IHN0eWxlcyB0byBiZSBhYmxlIHRvIGRlc2lnbiBzcGVjaWFsIGlucHV0cyBtb3JlIGVhc2lseVxuICovXG4vKipcbiAqIFN0eWxlcyB0byBoaWRlIHRoZSBzY3JvbGxiYXIgYnV0IHN0aWxsIGFsbG93IHNjcm9sbGluZ1xuICovXG4vKipcbiAqIFNwZWNpYWwgdmVyc2lvbiBvZiB0aGUgY2FyZC1ib3goKSBsYXlvdXQgZm9yIHRoZSBCMkIgc2hvcFxuICovXG4vKipcbiAqIGNhcmQtYm94IGxpc3QgbGF5b3V0IGZvciB0aGUgQjJCIHNob3BcbiAqL1xuLmVtYmxhX19wYWdpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cbi5lbWJsYV9fcGFnaW5nLXZhbHVlIHtcbiAgbWluLXdpZHRoOiAyY2g7XG4gIHRleHQtYWxpZ246IGVuZDtcbn1cbi5lbWJsYV9fcGFnaW5nLXRvdGFsLXBhZ2VzIHtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmVtYmxhX19wYWdpbmctdG90YWwtcGFnZXMge1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogMC4yNWVtO1xuICB9XG59IiwiLm1vZGFsIHtcbiAgICAmX19pbWFnZSAubW9kYWwge1xuICAgICAgICAmLWRpYWxvZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMGR2aDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBkdnc7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDBkdmg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMGR2dztcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICAgICAgICAgIGhlaWdodDogOThkdmg7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogOThkdmg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDk5ZHZ3O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogOTlkdnc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWJvZHktaW1hZ2Uge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IG1pbigyZHZoLCAycmVtKSBtaW4oM2R2dywgMnJlbSk7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLmVtYmxhIHtcbiAgICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAgICZfX3ZpZXdwb3J0LFxuICAgICAgICAgICAgICAgICZfX2NvbnRhaW5lcixcbiAgICAgICAgICAgICAgICAmX19zbGlkZSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAgICZfX3ZpZXdwb3J0LFxuICAgICAgICAgICAgICAgICZfX3NsaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA0MHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICYtLXByZXYge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYtLW5leHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3NsaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgPiAqOm5vdCguZW1ibGFfX3NsaWRlLS1zcGlubmVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYSxcbiAgICAgICAgICAgICAgICAgICAgcGljdHVyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi0tc3Bpbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOndoZXJlKDpub3QoLmVtYmxhX19sYXp5LWxvYWQtLWhhcy1sb2FkZWQpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+ICo6bm90KC5lbWJsYV9fc2xpZGUtLXNwaW5uZXIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZW1ibGFfX3NsaWRlLS1zcGlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBzcGlubmVyIDAuNzVzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJ3RoZW1lLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuLi8uLi9kZWZhdWx0L3Nhc3MvYXNnYXJkLXZhcmlhYmxlcyc7XG5AaW1wb3J0ICdhcHAvYWJzdHJhY3RzL2FsbCc7XG5AaW1wb3J0ICcuLi8uLi9kZWZhdWx0L3Nhc3MvaW1hZ2UtbW9kYWwvYWxsJztcblxuLm1vZGFsIHtcbiAgICAucHJvZHVjdC1kZXRhaWwge1xuICAgICAgICAmX19pbWFnZS1jYXJvdXNlbCB7XG4gICAgICAgICAgICAuZW1ibGEge1xuICAgICAgICAgICAgICAgICZfX2J1dHRvbnMge1xuICAgICAgICAgICAgICAgICAgICBpbnNldDogYXV0byBjbGFtcCgxcmVtLCAydncsIDRyZW0pIGNsYW1wKDFyZW0sIDJ2dywgNHJlbSk7IC8vIGRlZmF1bHQgbGVmdC9ib3R0b20gdmFsdWVzXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdLCJuYW1lcyI6W10sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=*/