@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: unset;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block;
}

* {
  box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: border-box;
}

*:focus {
  outline: none;
}

html {
  font-size: 62.5%;
  height: 100%;
}
body {
  color: var(--color-text-dark);
  background-color: var(--color-bg-bg-light);
  font-family: var(--gothic);
  font-optical-sizing: auto;
  font-weight: var(--font-weight-normal);
  font-feature-settings: var(--font-feature-settings);
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}
body.fixed {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 768px) {
  body.fixed {
    position: static;
  }
}
body.fixed::before {
  opacity: 1;
  z-index: 2;
  transition: opacity var(--transition-speed) var(--bezier) 0.1s, z-index 0s var(--bezier);
}
body.fixed {
  position: fixed;
  width: 100%;
}

.red {
  color: var(--color-text-error);
}

strong {
  font-weight: var(--font-weight-bold);
}

label {
  cursor: pointer;
}

input, select, textarea, label, a {
  outline: none;
}

a {
  color: currentColor;
  text-decoration: none;
  outline: none;
  cursor: pointer;
}
a[href^="tel:"] {
  color: inherit;
}
a:focus {
  outline: none;
}

abbr {
  text-decoration: none;
}

button {
  padding: 0;
  border: none;
  outline: none;
  font: inherit;
  color: inherit;
  background: none;
}

sup,
sub {
  height: 0;
  line-height: 1;
  vertical-align: baseline;
  position: relative;
  font-size: 0.75em;
}

sup {
  bottom: 0.75ex;
}

sub {
  top: 0.5ex;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
.hidden-sp {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .hidden-sp {
    display: unset;
  }
}

@media print, screen and (min-width: 768px) {
  .hidden-pc {
    display: none;
  }
}

@media print, screen and (min-width: 1080px) {
  .hidden-over-tbl {
    display: none;
  }
}

@media print, screen and (min-width: 768px) {
  .hidden-over-tb {
    display: none;
  }
}

@media print, screen and (min-width: 375px) {
  .hidden-over-sp {
    display: none;
  }
}

.anchorm .anchor_hide {
  position: relative;
  top: 0;
  display: block;
  visibility: hidden;
  color: transparent;
}
@media print, screen and (min-width: 768px) {
  .anchorm .anchor_hide {
    top: max(-49px, calc(-49 / 1440 * 100vw));
  }
}

.svg_def {
  visibility: hidden;
  width: 0;
  height: 0;
  position: absolute;
}

.container {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .container {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}

.p_button:not(.cv) {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
}
@media print, screen and (min-width: 768px) {
  .p_button:not(.cv) {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.p_button:not(.cv).reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.p_button:not(.cv).reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .p_button:not(.cv).reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
.p_button.cv > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component .text .p_button > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy .inner .copy .button a > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy .inner .button a > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy_image .inner .text .button a > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy_image_bg .inner .text .button a > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_conversion .inner .button a > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_panel .inner .unit .button a > .p_button:not(.cv)::before, .component.type_panel .inner .unit .button span > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.navigation.pagenate_detail .inner span.next a > .p_button:not(.cv)::before, .pagenate_detail.component.type_pagelist .inner span.next a > .p_button:not(.cv)::before, .navigation.pagenate_detail .inner span.prev a > .p_button:not(.cv)::before, .pagenate_detail.component.type_pagelist .inner span.prev a > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.navigation.pagenate_detail .inner span.back a > .p_button:not(.cv)::before, .pagenate_detail.component.type_pagelist .inner span.back a > .p_button:not(.cv)::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
@media print, screen and (min-width: 768px) {
  .p_button:not(.cv)::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
.p_button.cv > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component .text .p_button > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy .inner .copy .button a > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy .inner .button a > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy_image .inner .text .button a > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy_image_bg .inner .text .button a > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_conversion .inner .button a > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_panel .inner .unit .button a > .p_button:not(.cv)::after, .component.type_panel .inner .unit .button span > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.navigation.pagenate_detail .inner span.next a > .p_button:not(.cv)::after, .pagenate_detail.component.type_pagelist .inner span.next a > .p_button:not(.cv)::after, .navigation.pagenate_detail .inner span.prev a > .p_button:not(.cv)::after, .pagenate_detail.component.type_pagelist .inner span.prev a > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.navigation.pagenate_detail .inner span.back a > .p_button:not(.cv)::after, .pagenate_detail.component.type_pagelist .inner span.back a > .p_button:not(.cv)::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
@media print, screen and (min-width: 768px) {
  .p_button:not(.cv)::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .p_button:not(.cv):hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .p_button:not(.cv):hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .p_button:not(.cv):hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.p_button:not(.cv) span {
  position: relative;
  z-index: 2;
}

.p_button.cv {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
  background-color: var(--color-brand-secondary);
  border-color: var(--color-brand-secondary);
}
@media print, screen and (min-width: 768px) {
  .p_button.cv {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.p_button.cv.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.p_button.cv.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .p_button.cv.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
.p_button.cv > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component .text .p_button > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy .inner .copy .button a > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy .inner .button a > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy_image .inner .text .button a > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_catchcopy_image_bg .inner .text .button a > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_conversion .inner .button a > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.component.type_panel .inner .unit .button a > .p_button.cv::before, .component.type_panel .inner .unit .button span > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.navigation.pagenate_detail .inner span.next a > .p_button.cv::before, .pagenate_detail.component.type_pagelist .inner span.next a > .p_button.cv::before, .navigation.pagenate_detail .inner span.prev a > .p_button.cv::before, .pagenate_detail.component.type_pagelist .inner span.prev a > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.navigation.pagenate_detail .inner span.back a > .p_button.cv::before, .pagenate_detail.component.type_pagelist .inner span.back a > .p_button.cv::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
@media print, screen and (min-width: 768px) {
  .p_button.cv::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
.p_button.cv > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component .text .p_button > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy .inner .copy .button a > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy .inner .button a > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy_image .inner .text .button a > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_catchcopy_image_bg .inner .text .button a > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_conversion .inner .button a > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.component.type_panel .inner .unit .button a > .p_button.cv::after, .component.type_panel .inner .unit .button span > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.navigation.pagenate_detail .inner span.next a > .p_button.cv::after, .pagenate_detail.component.type_pagelist .inner span.next a > .p_button.cv::after, .navigation.pagenate_detail .inner span.prev a > .p_button.cv::after, .pagenate_detail.component.type_pagelist .inner span.prev a > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
.navigation.pagenate_detail .inner span.back a > .p_button.cv::after, .pagenate_detail.component.type_pagelist .inner span.back a > .p_button.cv::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
@media print, screen and (min-width: 768px) {
  .p_button.cv::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .p_button.cv:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .p_button.cv:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .p_button.cv:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.p_button.cv span {
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .p_button.cv {
    min-width: min(320px, calc(320 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .p_button.cv:hover {
    background-color: var(--color-brand-secondary);
    border-color: var(--color-brand-secondary);
  }
}

body:not(.toppage) main {
  padding-top: calc(var(--height-header) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  body:not(.toppage) main {
    padding-top: min(calc(var(--height-header-pc) * 1px), calc(var(--height-header-pc) / 1440 * 100vw));
  }
}

#wrapper {
  transition: opacity var(--transition-speed) var(--bezier);
  overflow: hidden;
}
header + #wrapper {
  padding-top: calc(var(--height-header) + 30px);
}
@media print, screen and (min-width: 768px) {
  header + #wrapper {
    padding-top: calc(var(--height-header-pc) + 35px);
  }
}
.toppage #wrapper {
  padding-top: 0;
}
.sink #wrapper {
  opacity: 0.5;
}
@media print, screen and (min-width: 768px) {
  .sink #wrapper {
    opacity: 1;
  }
}
#wrapper .contentsInner {
  z-index: 1;
  margin-top: calc(40 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #wrapper .contentsInner:has(#sidebar) {
    padding-left: calc(var(--padding-sp) / 375 * 100vw);
    padding-right: calc(var(--padding-sp) / 375 * 100vw);
    display: grid;
    grid-template: "sidebar main" 1fr/min(288px, calc(288 / 1440 * 100vw)) 1fr;
    align-items: start;
    margin-top: min(56px, calc(56 / 1440 * 100vw));
    position: relative;
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) and (min-width: 768px) {
  #wrapper .contentsInner:has(#sidebar) {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
#wrapper .contentsInner main {
  padding-bottom: calc(56 / 375 * 100vw);
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  #wrapper .contentsInner main {
    padding-bottom: min(80px, calc(80 / 1440 * 100vw));
  }
}
#wrapper .contentsInner main > *:first-child {
  margin-top: unset;
}
@media print, screen and (min-width: 768px) {
  #wrapper .contentsInner main {
    grid-area: main;
  }
  #wrapper .contentsInner main > *:first-child {
    margin-top: unset !important;
    padding-top: unset !important;
  }
  #wrapper .contentsInner main > a:first-child + * {
    margin-top: unset !important;
    padding-top: unset !important;
  }
  #wrapper .contentsInner main .container,
#wrapper .contentsInner main .inner,
#wrapper .contentsInner main .component.type_table,
#wrapper .contentsInner main .component.type_catchcopy_image_bg,
#wrapper .contentsInner main .component.type_conversion,
#wrapper .contentsInner main .headingLarge,
#wrapper .contentsInner main .headingSmall,
#wrapper .contentsInner main .m_taglist {
    width: unset !important;
    margin-inline: unset;
  }
  #wrapper .contentsInner main .component.type_text .inner .text {
    max-width: unset;
    margin-inline: unset;
  }
  #wrapper .contentsInner main .navigation.articlelist .inner .list, #wrapper .contentsInner main .component.type_pagelist .inner .list {
    grid-template-columns: repeat(3, 1fr);
  }
  #wrapper .contentsInner main .component.type_catchcopy_image .inner .image img {
    min-width: 100%;
  }
  #wrapper .contentsInner main .component.type_catchcopy_image_bg .inner .image {
    width: 82%;
  }
}
@media print, screen and (min-width: 768px) {
  #wrapper .contentsInner #sidebar {
    grid-area: sidebar;
  }
}
@media print, screen and (min-width: 768px){
  #wrapper .contentsInner main {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  #wrapper .contentsInner #sidebar {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
}

.fadeUp {
  opacity: 0;
  translate: 0 calc(30 / 375 * 100vw);
  transition: opacity cubic-bezier(0, 1.42, 0.98, 1.09) 0.5s, translate cubic-bezier(0, 1.42, 0.98, 1.09) 0.5s;
}
@media print, screen and (min-width: 768px) {
  .fadeUp {
    translate: 0 min(30px, calc(30 / 1440 * 100vw));
  }
}
.fadeUp.is-active {
  opacity: 1;
  translate: 0 0;
}
@media print, screen and (min-width: 768px) {
  .fadeUp.delay-pc {
    transition-delay: 0.5s;
  }
}

html.lenis,
html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

html.is-changing .transition-fade {
  transition: opacity 0.15s;
  opacity: 1;
}

html.is-animating .transition-fade {
  opacity: 0;
}

.coverOut {
  position: relative;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
}
.coverOut::before {
  content: "";
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -1px;
  right: -1px;
  background-color: var(--color-third);
  z-index: 20;
  transition: transform 0.5s cubic-bezier(1, 0, 0, 1) 0s;
  transform-origin: right;
}
.coverOut::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-brand);
  z-index: 19;
  transition: transform 0.5s cubic-bezier(1, 0, 0, 1) 0.3s;
  transform-origin: right;
}
.coverOut.is-active::before {
  transform: scaleX(0);
}
.coverOut.is-active::after {
  transform: scaleX(0);
}

header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  transition: translate var(--transition-speed-slow) var(--bezier);
}
body.is-down header#headerDefault {
  translate: 0 -120%;
}
@media print, screen and (min-width: 768px) {
  body.is-down header#headerDefault {
    translate: 0 max(-92px, calc(-92 / 1440 * 100vw));
  }
}
body.is-fixed header#headerDefault {
  translate: 0 -120%;
}
@media print, screen and (min-width: 768px) {
  body.is-fixed header#headerDefault {
    translate: 0 max(-92px, calc(-92 / 1440 * 100vw));
  }
}
header#headerDefault {
  background-color: var(--color-surface);
}
header#headerTop {
  display: none;
}
@media print {
  header {
    position: absolute;
  }
}
header .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: calc(var(--height-header) / 375 * 100vw);
  transition: transform var(--transition-speed) var(--bezier), background-color var(--transition-speed) var(--bezier);
  padding: calc(12 / 375 * 100vw) calc(64 / 375 * 100vw) calc(12 / 375 * 100vw) calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  header .inner {
    height: min(calc(var(--height-header-pc) * 1px), calc(var(--height-header-pc) / 1440 * 100vw));
    padding-block: unset;
    padding-inline: min(28px, calc(28 / 1440 * 100vw));
  }
}
header .inner #logo a {
  display: block;
}
@media (any-hover: hover) {
  header .inner #logo a {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  header .inner #logo a:hover {
    opacity: 0.7;
  }
}
header .inner #logo a img {
  width: calc(132 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  header .inner #logo a img {
    width: min(220px, calc(220 / 1440 * 100vw));
  }
}
header .inner .langPC {
  display: none;
}
@media print, screen and (min-width: 768px) {
  header .inner .langPC {
    display: block;
    margin-left: auto;
    padding-right: min(28px, calc(28 / 1440 * 100vw));
  }
}
header .inner .langPC ul {
  display: flex;
  gap: min(4px, calc(4 / 1440 * 100vw));
}
header .inner .langPC ul li {
  color: var(--color-text-medium);
  font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  font-weight: 700;
  display: flex;
  gap: min(4px, calc(4 / 1440 * 100vw));
}
header .inner .langPC ul li::after {
  content: "/";
  display: block;
}
header .inner .langPC ul li:last-child::after {
  content: none;
}
@media (any-hover: hover) {
  header .inner .langPC ul li a {
    transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  }
  header .inner .langPC ul li a:hover {
    color: var(--color-brand-corporate) !important;
  }
  header .inner .langPC ul li a[target=_blank]:hover::after {
    background-color: var(--color-brand-corporate);
  }
}
header .inner .gnavPC {
  display: none;
}
@media print, screen and (min-width: 768px) {
  header .inner .gnavPC {
    display: block;
  }
  header .inner .gnavPC ul {
    display: flex;
    gap: min(30px, calc(30 / 1440 * 100vw));
    padding-inline: min(28px, calc(28 / 1440 * 100vw));
    border-left: 1px solid var(--color-border-dark);
    border-right: 1px solid var(--color-border-dark);
  }
  header .inner .gnavPC ul li a {
    display: block;
    color: var(--color-text-medium);
    font-weight: 700;
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    padding-block: min(12px, calc(12 / 1440 * 100vw));
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  header .inner .gnavPC ul li a {
    transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  }
  header .inner .gnavPC ul li a:hover {
    color: var(--color-brand-corporate) !important;
  }
  header .inner .gnavPC ul li a[target=_blank]:hover::after {
    background-color: var(--color-brand-corporate);
  }
}
@media print, screen and (min-width: 768px) {
  header .inner .contact {
    margin-left: min(28px, calc(28 / 1440 * 100vw));
  }
}
header .inner .contact a {
  display: block;
}
@media print, screen and (min-width: 768px) {
  header .inner .contact a {
    display: flex;
    align-items: center;
    gap: min(8px, calc(8 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  header .inner .contact a:hover span {
    color: var(--color-brand-corporate);
  }
}
header .inner .contact a::after {
  content: "";
  display: block;
  width: calc(36 / 375 * 100vw);
  aspect-ratio: 1/1;
  background: url("/images/icon_mail.svg") no-repeat center center/contain;
}
@media print, screen and (min-width: 768px) {
  header .inner .contact a::after {
    width: min(45px, calc(45 / 1440 * 100vw));
  }
}
header .inner .contact a span {
  display: none;
}
@media print, screen and (min-width: 768px) {
  header .inner .contact a span {
    display: block;
    color: var(--color-text-medium);
    font-weight: 700;
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    transition: color var(--transition-speed-fast) var(--bezier);
  }
}
header .inner .menuButton {
  position: absolute;
  right: 0;
  top: calc(10 / 375 * 100vw);
  width: calc(48 / 375 * 100vw);
  height: calc(48 / 375 * 100vw);
  cursor: pointer;
  z-index: 1002;
}
@media print, screen and (min-width: 768px) {
  header .inner .menuButton {
    display: none;
  }
}
header .inner .menuButton span {
  background-color: var(--color-brand-primary);
  width: calc(20 / 375 * 100vw);
  height: calc(2 / 375 * 100vw);
  position: absolute;
  left: calc(14 / 375 * 100vw);
  border-radius: var(--border-radius-pill);
  transition: transform var(--transition-speed-fast) var(--bezier), background var(--transition-speed-fast) var(--bezier);
}
header .inner .menuButton span.top {
  top: calc(17 / 375 * 100vw);
}
header .inner .menuButton span.middle, header .inner .menuButton span.back {
  top: calc(23 / 375 * 100vw);
  transform-origin: center;
}
header .inner .menuButton span.bottom {
  top: calc(29 / 375 * 100vw);
}
header .inner .menuButton.is-active span.top {
  transform: translateX(50%);
  background-color: transparent;
}
header .inner .menuButton.is-active span.bottom {
  transform: translateX(-50%);
  background-color: transparent;
}
header .inner .menuButton.is-active span.middle {
  transform: rotate(45deg) scaleX(1);
  transition: transform var(--transition-speed-fast) var(--bezier) var(--transition-speed-fast);
}
header .inner .menuButton.is-active span.back {
  transform: rotate(-45deg) scaleX(1);
}

#gnav {
  position: fixed;
  inset: 0;
  z-index: 99;
  background-color: var(--color-surface);
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
  translate: 0 -110%;
  opacity: 0;
  transition: translate var(--transition-speed) var(--bezier), opacity var(--transition-speed-fast) var(--bezier);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-block: calc(76 / 375 * 100vw);
  padding-inline: calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #gnav {
    display: none;
  }
}
#gnav.is-active {
  translate: 0 0;
  opacity: 1;
}
#gnav nav ul li a {
  color: var(--color-text-medium);
  display: block;
  padding-block: calc(18 / 375 * 100vw);
  text-align: center;
  font-weight: 700;
  font-size: calc(var(--fs-s) / 375 * 100vw);
}
#gnav .lang {
  margin-top: calc(16 / 375 * 100vw);
}
#gnav .lang ul {
  display: flex;
  gap: calc(8 / 375 * 100vw);
  justify-content: center;
}
#gnav .lang ul li {
  color: var(--color-text-medium);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 700;
  line-height: 233.333%;
  display: flex;
  gap: calc(8 / 375 * 100vw);
}
#gnav .lang ul li::after {
  content: "/";
  display: block;
}
#gnav .lang ul li:last-child::after {
  content: none;
}
@media (any-hover: hover) {
  #gnav .lang ul li a {
    transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  }
  #gnav .lang ul li a:hover {
    color: var(--color-brand-corporate) !important;
  }
  #gnav .lang ul li a[target=_blank]:hover::after {
    background-color: var(--color-brand-corporate);
  }
}

#wrapper:has(.contentsInner #sidebar) + footer,
body:has(.top_conversion) footer,
body:has(.topBG) footer,
body:has(.aboutRelate) footer,
body.toppage footer {
  margin-top: unset;
}

@media print, screen and (min-width: 768px) {
  body:has(.navigation.breadcrumbs, .breadcrumbs.component.type_pagelist) footer {
    margin-top: unset;
  }
}

footer {
  margin-top: calc(48 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
}
@media print, screen and (min-width: 768px) {
  footer {
    margin-top: min(96px, calc(96 / 1440 * 100vw));
  }
}

#footerNav {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
#footerNav .inner {
  border-bottom: 1px solid #2A4578;
  padding-block: calc(36 / 375 * 100vw) calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner {
    padding-block: min(100px, calc(100 / 1440 * 100vw)) min(64px, calc(64 / 1440 * 100vw));
  }
}
#footerNav .inner .corpinfo {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .corpinfo {
    text-align: left;
    display: flex;
    align-items: center;
    gap: min(32px, calc(32 / 1440 * 100vw));
  }
}
#footerNav .inner .corpinfo p img {
  width: calc(240 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .corpinfo p img {
    width: min(276px, calc(276 / 1440 * 100vw));
  }
}
#footerNav .inner .corpinfo .contact {
  margin-top: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .corpinfo .contact {
    margin-top: unset;
  }
}
#footerNav .inner .corpinfo .contact address {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  line-height: var(--line-height-medium);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .corpinfo .contact address {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}
#footerNav .inner .footnav {
  margin-top: calc(36 / 375 * 100vw);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(36 / 375 * 100vw) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
    grid-template-columns: repeat(5, 1fr);
    gap: min(32px, calc(32 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
  }
}
#footerNav .inner .footnav .unit {
  position: relative;
  text-align: center;
  -moz-column-break-inside: avoid;
  break-inside: avoid;
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav .unit {
    text-align: left;
  }
}
#footerNav .inner .footnav .unit h2 {
  position: relative;
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav .unit h2 {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}
#footerNav .inner .footnav .unit h2 a {
  color: inherit;
  display: block;
  padding-block: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav .unit h2 a {
    padding-block: min(12px, calc(12 / 1440 * 100vw));
  }
}
#footerNav .inner .footnav .unit ul {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav .unit ul {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    margin-top: min(4px, calc(4 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav .unit ul + h2 {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
#footerNav .inner .footnav .unit ul li {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav .unit ul li {
    justify-content: flex-start;
    gap: min(4px, calc(4 / 1440 * 100vw));
  }
}
#footerNav .inner .footnav .unit ul li::before {
  content: "-";
  display: inline-block;
}
#footerNav .inner .footnav .unit ul li a {
  display: block;
  color: inherit;
  padding-block: calc(10 / 375 * 100vw);
  position: relative;
}
@media print, screen and (min-width: 768px) {
  #footerNav .inner .footnav .unit ul li a {
    padding-block: min(12px, calc(12 / 1440 * 100vw));
  }
}

#footerCopyright {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerCopyright {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
#footerCopyright .inner {
  padding-block: calc(36 / 375 * 100vw) calc(24 / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  #footerCopyright .inner {
    padding-block: min(64px, calc(64 / 1440 * 100vw)) min(80px, calc(80 / 1440 * 100vw));
    display: flex;
    gap: min(54px, calc(54 / 1440 * 100vw));
  }
}
#footerCopyright .inner ul {
  display: flex;
  gap: calc(28 / 375 * 100vw);
  justify-content: center;
}
@media print, screen and (min-width: 768px) {
  #footerCopyright .inner ul {
    gap: min(54px, calc(54 / 1440 * 100vw));
    justify-content: flex-start;
  }
}
@media print, screen and (min-width: 768px) {
  #footerCopyright .inner ul li {
    flex: auto;
  }
}
#footerCopyright .inner ul li a {
  display: block;
  color: inherit;
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  #footerCopyright .inner ul li a {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  }
}
#footerCopyright .inner p {
  margin-top: calc(24 / 375 * 100vw);
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #footerCopyright .inner p {
    margin-top: unset;
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  }
}

#pagetop {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 9999;
  cursor: pointer;
  opacity: 0;
  transition: opacity var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  #pagetop {
    bottom: var(--space-xlarge);
    right: var(--space-large);
  }
}
#pagetop a {
  transition: opacity var(--transition-speed) var(--bezier);
  background-color: var(--color-bg-pagetop);
  background-image: var(--pagetop);
  background-size: var(--width-pagetop-pc) auto;
  width: var(--width-pagetop-pc);
  height: var(--width-pagetop-pc);
}
@media print, screen and (min-width: 768px) {
  #pagetop a {
    display: block;
  }
  #pagetop a:hover {
    opacity: 0.5;
  }
}
#pagetop.on {
  opacity: 1;
}

#sidebar {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1004;
  overflow-y: scroll;
  transform: translateY(calc(100% + (150 / 375 * 100vw)));
  transition: transform var(--transition-speed) var(--bezier);
  background-color: var(--color-black);
  padding-block: calc(16 / 375 * 100vw) calc(16 / 375 * 100vw);
  padding-inline: calc(12 / 375 * 100vw);
  color: var(--color-text-on-accent);
}
@media print, screen and (min-width: 768px) {
  #sidebar {
    display: none;
    padding: unset;
    position: static;
    width: auto;
    overflow-y: unset;
    transform: translateY(0);
    transition: none;
    z-index: 1;
    background-color: transparent;
  }
}
#wrapper #sidebar {
  display: block;
}
#sidebar.is-show {
  transform: translateY(0);
}
#sidebar .sidebarHeader {
  display: none;
}
@media print, screen and (min-width: 768px) {
  #sidebar .sidebarHeader {
    display: block;
    background-color: var(--color-third);
    color: var(--color-text-on-accent);
    line-height: var(--line-height-xsmall);
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    font-weight: 700;
    padding: min(9px, calc(9 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw)) min(10px, calc(10 / 1440 * 100vw));
  }
}
#sidebar .gnavCategoriesSP {
  margin-top: calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #sidebar .gnavCategoriesSP {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
  }
}
#sidebar .banner {
  margin-top: calc(70 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #sidebar .banner {
    margin-top: min(70px, calc(70 / 1440 * 100vw));
  }
}
#sidebar .banner a {
  display: block;
  margin-top: calc(22 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #sidebar .banner a {
    margin-top: min(22px, calc(22 / 1440 * 100vw));
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  #sidebar .banner a {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  #sidebar .banner a:hover {
    opacity: 0.7;
  }
}

#sidebar-menu-button {
  position: fixed;
  bottom: calc(16 / 375 * 100vw);
  left: calc(16 / 375 * 100vw);
  background: top/calc(48 / 375 * 100vw) auto no-repeat url(/images/icon_sidebar.svg);
  width: calc(48 / 375 * 100vw);
  height: calc(48 / 375 * 100vw);
  border-radius: var(--border-radius-circle);
  z-index: 2000;
  transition: background-position var(--transition-speed) var(--bezier), opacity var(--transition-speed-fast) var(--bezier);
  pointer-events: none;
  opacity: 0;
}
#sidebar-menu-button.is-active {
  background-position: center bottom;
}
#sidebar-menu-button.is-scroll {
  pointer-events: auto;
  opacity: 1;
  transition: opacity var(--transition-speed-fast) var(--bezier) 0.5s;
}
@media print, screen and (min-width: 768px) {
  #sidebar-menu-button {
    display: none;
  }
}
#sidebar-menu-button span {
  display: none;
}

.component strong, .component b {
  font-weight: 700;
}
.component a {
  color: var(--color-text-dark);
  text-decoration: underline;
}
.component .text {
  font-weight: 500;
}
.component .text p {
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: var(--line-height-medium);
  padding-bottom: 1.5em;
}
@media print, screen and (min-width: 768px) {
  .component .text p {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.component .text p.note {
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  line-height: var(--line-height-medium);
  padding-bottom: unset;
}
@media print, screen and (min-width: 768px) {
  .component .text p.note {
    font-size: min(calc(var(--fs-xxs) * 1px), calc(var(--fs-xxs) / 1440 * 100vw));
  }
}
.component .text p.heading {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
  padding-bottom: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component .text p.heading {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component .text p.heading:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component .text p.heading:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component .text p.heading {
    padding-bottom: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component .text p img.mt-image-left, .component .text p img.mt-image-center, .component .text p img.mt-image-right {
  margin-bottom: 0 !important;
}
.component .text p:last-child {
  padding-bottom: 0;
}
.component .text ul, .component .text ol {
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: var(--line-height-medium);
  padding-bottom: 1.5em;
}
@media print, screen and (min-width: 768px) {
  .component .text ul, .component .text ol {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.component .text ul:last-child, .component .text ol:last-child {
  padding-bottom: unset;
}
.component .text ul {
  list-style: disc;
}
.component .text ul li {
  margin-left: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component .text ul li {
    margin-left: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component .text ul li > ul {
  list-style: none;
}
.component .text ul li > ul > li {
  position: relative;
  padding-left: calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component .text ul li > ul > li {
    padding-left: min(12px, calc(12 / 1440 * 100vw));
  }
}
.component .text ul li > ul > li::before {
  position: absolute;
  content: "";
  display: block;
  content: "-";
  position: absolute;
  left: 0;
  top: 0;
}
.component .text ol {
  list-style: decimal;
}
.component .text ol li {
  margin-left: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component .text ol li {
    margin-left: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component .text .p_button {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
}
@media print, screen and (min-width: 768px) {
  .component .text .p_button {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component .text .p_button.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.component .text .p_button.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component .text .p_button.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component .text .p_button::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .component .text .p_button::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.component .text .p_button::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component .text .p_button::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component .text .p_button:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .component .text .p_button:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .component .text .p_button:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.component .text .p_button span {
  position: relative;
  z-index: 2;
}
.component .text .p_button.line {
  background-color: #06C755;
}
@media (any-hover: hover) {
  .component .text .p_button.line:hover {
    background-color: #06B44D;
  }
}
.component .image, .component .movie, .component .map {
  text-align: center;
}
.component .image.shrink, .component .movie.shrink, .component .map.shrink {
  margin-left: auto;
  margin-right: auto;
}
@media (any-hover: hover) {
  .component .image a, .component .movie a, .component .map a {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .component .image a:hover, .component .movie a:hover, .component .map a:hover {
    opacity: 0.8;
  }
}
.component .image img, .component .movie img, .component .map img {
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component .image img, .component .movie img, .component .map img {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component .image .caption, .component .movie .caption, .component .map .caption {
  text-align: center;
  margin-top: calc(8 / 375 * 100vw);
  color: var(--color-text-dark);
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  line-height: var(--line-height-small);
}
@media print, screen and (min-width: 768px) {
  .component .image .caption, .component .movie .caption, .component .map .caption {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    margin-top: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component .image .caption.shrink, .component .movie .caption.shrink, .component .map .caption.shrink {
  margin-left: auto;
  margin-right: auto;
}
.component .image .caption.left, .component .movie .caption.left, .component .map .caption.left {
  text-align: left;
}
.component .image .caption.center, .component .movie .caption.center, .component .map .caption.center {
  text-align: center;
}
.component .image .caption.right, .component .movie .caption.right, .component .map .caption.right {
  text-align: right;
}
.component .image .child, .component .movie .child, .component .map .child {
  padding-bottom: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component .image .child, .component .movie .child, .component .map .child {
    padding-bottom: min(64px, calc(64 / 1440 * 100vw));
  }
}
.component .image .child:last-child, .component .movie .child:last-child, .component .map .child:last-child {
  padding-bottom: unset;
}

.component.type_pagetitle {
  background-color: var(--color-bg-bg-dark);
  padding-block: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_pagetitle {
    padding-block: min(48px, calc(48 / 1440 * 100vw));
  }
}
.component.type_pagetitle .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_pagetitle .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_pagetitle .inner h1 {
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  line-height: 140%;
  word-break: auto-phrase;
  font-weight: 700;
  color: var(--color-text-on-accent);
}
@media print, screen and (min-width: 768px) {
  .component.type_pagetitle .inner h1 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    line-height: 170%;
  }
}

.component.type_extendedtitle {
  position: relative;
  background-color: var(--color-bg-bg-dark);
  overflow: hidden;
}
.component.type_extendedtitle .circleObject {
  width: calc(230 / 375 * 100vw);
  right: auto;
  left: 0;
  top: calc(-31 / 375 * 100vw);
  translate: calc(-64 / 375 * 100vw) 0;
  z-index: 11;
  pointer-events: none;
}
@media print, screen and (min-width: 768px) {
  .component.type_extendedtitle .circleObject {
    width: min(471px, calc(471 / 1440 * 100vw));
    left: 50%;
    top: max(-106px, calc(-106 / 1440 * 100vw));
    translate: max(-854px, calc(-854 / 1440 * 100vw)) 0;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_extendedtitle .inner {
    display: grid;
    grid-template: ". text image image" auto/1fr min(440px, calc(440 / 1440 * 100vw)) min(760px, calc(760 / 1440 * 100vw)) 1fr;
    align-items: center;
  }
}
.component.type_extendedtitle .inner .text {
  padding-inline: calc(20 / 375 * 100vw);
  padding-block: calc(64 / 375 * 100vw);
  text-align: center;
  color: var(--color-text-on-accent);
}
@media print, screen and (min-width: 768px) {
  .component.type_extendedtitle .inner .text {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    padding-block: min(16px, calc(16 / 1440 * 100vw));
    grid-area: text;
    text-align: left;
    padding-inline: unset;
    padding-right: min(48px, calc(48 / 1440 * 100vw));
  }
}
.component.type_extendedtitle .inner .text span {
  font-size: calc(48 / 375 * 100vw);
  line-height: 130%;
  word-break: auto-phrase;
  font-family: var(--en);
  font-weight: 700;
  text-transform: uppercase;
}
@media print, screen and (min-width: 768px) {
  .component.type_extendedtitle .inner .text span {
    font-size: min(calc(var(--fs-xxxxxxl) * 1px), calc(var(--fs-xxxxxxl) / 1440 * 100vw));
  }
}
.component.type_extendedtitle .inner .text h1 {
  margin-top: calc(4 / 375 * 100vw);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  line-height: 130%;
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .component.type_extendedtitle .inner .text h1 {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_extendedtitle .inner .image {
    grid-area: image;
  }
}
.component.type_extendedtitle .inner .image img {
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 375/173;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .component.type_extendedtitle .inner .image img {
    min-height: min(366px, calc(366 / 1440 * 100vw));
  }
}

.component.type_speaker_heading {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_speaker_heading .inner {
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  padding: calc(24 / 375 * 100vw) calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner {
    padding: min(32px, calc(32 / 1440 * 100vw));
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    position: relative;
    overflow: hidden;
  }
}
.component.type_speaker_heading .inner .image {
  margin-top: calc(28 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner .image {
    margin-top: unset;
    width: min(570px, calc(570 / 1440 * 100vw));
  }
}
.component.type_speaker_heading .inner .image img {
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: unset;
  width: 100%;
}
.component.type_speaker_heading .inner .copy {
  color: var(--color-text-medium);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner .copy {
    width: min(526px, calc(526 / 1440 * 100vw));
  }
}
.component.type_speaker_heading .inner .copy h3 {
  font-size: calc(var(--fs-xxl) / 375 * 100vw);
  line-height: 165%;
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner .copy h3 {
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
    line-height: 150%;
  }
}
.component.type_speaker_heading .inner .copy .profile {
  margin-top: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner .copy .profile {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
  }
}
.component.type_speaker_heading .inner .copy .profile .position {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 500;
  line-height: 200%;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner .copy .profile .position {
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
    line-height: 180%;
  }
}
.component.type_speaker_heading .inner .copy .profile h4 {
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  font-weight: 700;
  line-height: 180%;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner .copy .profile h4 {
    margin-top: min(12px, calc(12 / 1440 * 100vw));
    font-size: min(34px, calc(34 / 1440 * 100vw));
  }
}
.component.type_speaker_heading .inner .copy .profile .en {
  font-family: var(--en);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 500;
  line-height: 175%;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading .inner .copy .profile .en {
    margin-top: min(12px, calc(12 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading.reverse .inner {
    flex-direction: row;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker_heading.reverse .inner .image {
    direction: rtl;
  }
}

.component.type_catchcopy {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_catchcopy .inner {
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  padding: calc(36 / 375 * 100vw) calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner {
    display: grid;
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    padding: min(48px, calc(48 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
    grid-template: "heading text" auto "copy text" auto "button text" auto/1fr min(624px, calc(624 / 1440 * 100vw));
    grid-column-gap: min(32px, calc(32 / 1440 * 100vw));
  }
  .component.type_catchcopy .inner > .text {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .heading {
    grid-area: heading;
  }
}
.component.type_catchcopy .inner .heading h3 {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .heading h3 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_catchcopy .inner .heading h3:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .heading h3:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .copy {
    grid-area: copy;
  }
}
.component.type_catchcopy .inner .copy h4 {
  margin-top: calc(36 / 375 * 100vw);
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  line-height: 180%;
  font-weight: 700;
  color: var(--color-text-medium);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .copy h4 {
    margin-top: min(48px, calc(48 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
    line-height: 150%;
  }
}
.component.type_catchcopy .inner .copy .button {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .copy .button {
    display: block;
    grid-area: button;
    margin-top: min(48px, calc(48 / 1440 * 100vw));
  }
}
.component.type_catchcopy .inner .copy .button a {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .copy .button a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_catchcopy .inner .copy .button a.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.component.type_catchcopy .inner .copy .button a.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component.type_catchcopy .inner .copy .button a.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component.type_catchcopy .inner .copy .button a::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .copy .button a::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.component.type_catchcopy .inner .copy .button a::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .copy .button a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component.type_catchcopy .inner .copy .button a:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .component.type_catchcopy .inner .copy .button a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .component.type_catchcopy .inner .copy .button a:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.component.type_catchcopy .inner .copy .button a span {
  position: relative;
  z-index: 2;
}
.component.type_catchcopy .inner .text {
  margin-top: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .text {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    margin-top: unset;
    grid-area: text;
  }
}
.component.type_catchcopy .inner .button {
  margin-top: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .button {
    display: none;
  }
}
.component.type_catchcopy .inner .button a {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .button a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_catchcopy .inner .button a.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.component.type_catchcopy .inner .button a.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component.type_catchcopy .inner .button a.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component.type_catchcopy .inner .button a::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .button a::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.component.type_catchcopy .inner .button a::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy .inner .button a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component.type_catchcopy .inner .button a:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .component.type_catchcopy .inner .button a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .component.type_catchcopy .inner .button a:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.component.type_catchcopy .inner .button a span {
  position: relative;
  z-index: 2;
}

.component.type_catchcopy_image {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_catchcopy_image .inner {
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  padding: calc(36 / 375 * 100vw) calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner {
    padding: min(32px, calc(32 / 1440 * 100vw));
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    position: relative;
    overflow: hidden;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .image {
    width: min(570px, calc(570 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .image img {
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: unset;
  width: 100%;
}
.component.type_catchcopy_image .inner .text {
  margin-top: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text {
    margin-top: unset;
    width: min(512px, calc(512 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text h3 {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text h3 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text h3:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text h3:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text h3 + .copy {
  margin-top: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text h3 + .copy {
    margin-top: min(48px, calc(48 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text .copy h4 {
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  line-height: 180%;
  font-weight: 700;
  color: var(--color-text-medium);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text .copy h4 {
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
    line-height: 150%;
  }
}
.component.type_catchcopy_image .inner .text .desc {
  margin-top: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text .desc {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text .button {
  margin-top: calc(32 / 375 * 100vw);
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text .button {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text .button a {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text .button a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text .button a.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.component.type_catchcopy_image .inner .text .button a.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component.type_catchcopy_image .inner .text .button a.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component.type_catchcopy_image .inner .text .button a::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text .button a::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image .inner .text .button a::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image .inner .text .button a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component.type_catchcopy_image .inner .text .button a:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .component.type_catchcopy_image .inner .text .button a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .component.type_catchcopy_image .inner .text .button a:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.component.type_catchcopy_image .inner .text .button a span {
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image.reverse .inner {
    flex-direction: row;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image.reverse .inner .image {
    direction: rtl;
  }
}

.component.type_catchcopy_image_bg {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner {
    position: relative;
  }
}
.component.type_catchcopy_image_bg .inner .image {
  width: calc(300 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .image {
    width: min(720px, calc(720 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .image img {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .image img {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    width: 100%;
  }
}
.component.type_catchcopy_image_bg .inner .text {
  background-color: var(--color-bg-bg-dark);
  padding: calc(24 / 375 * 100vw) calc(24 / 375 * 100vw) calc(32 / 375 * 100vw);
  width: calc(280 / 375 * 100vw);
  position: relative;
  margin-top: calc(-42 / 375 * 100vw);
  margin-left: auto;
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text {
    position: absolute;
    right: 0;
    margin-top: unset;
    bottom: 0;
    width: min(520px, calc(520 / 1440 * 100vw));
    padding: min(32px, calc(32 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw)) min(46px, calc(46 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .text h3 {
  color: var(--color-brand-lightblue);
  font-family: var(--en);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  line-height: 150%;
  padding-bottom: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text h3 {
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
    padding-bottom: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .text .copy h4 {
  color: var(--color-text-light);
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  line-height: 180%;
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text .copy h4 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .text .desc {
  margin-top: calc(24 / 375 * 100vw);
  color: var(--color-text-light);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text .desc {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .text .button {
  margin-top: calc(24 / 375 * 100vw);
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text .button {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .text .button a {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text .button a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .text .button a.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.component.type_catchcopy_image_bg .inner .text .button a.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component.type_catchcopy_image_bg .inner .text .button a.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component.type_catchcopy_image_bg .inner .text .button a::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text .button a::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.component.type_catchcopy_image_bg .inner .text .button a::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg .inner .text .button a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component.type_catchcopy_image_bg .inner .text .button a:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .component.type_catchcopy_image_bg .inner .text .button a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .component.type_catchcopy_image_bg .inner .text .button a:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.component.type_catchcopy_image_bg .inner .text .button a span {
  position: relative;
  z-index: 2;
}
.component.type_catchcopy_image_bg .inner .text .button a::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component.type_catchcopy_image_bg .inner .text .button a:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component.type_catchcopy_image_bg.reverse .inner .image {
  margin-left: auto;
}
.component.type_catchcopy_image_bg.reverse .inner .text {
  margin-left: 0;
  margin-right: auto;
}
@media print, screen and (min-width: 768px) {
  .component.type_catchcopy_image_bg.reverse .inner .text {
    right: auto;
    left: 0;
  }
}

.component.type_conversion {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-color: var(--color-bg-bg-dark);
  padding-block: calc(64 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion {
    padding-block: min(96px, calc(96 / 1440 * 100vw));
  }
}
.component.type_conversion .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
  color: var(--color-text-on-accent);
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_conversion .inner.center {
  text-align: center;
}
.component.type_conversion .inner.right {
  text-align: right;
}
.component.type_conversion .inner:has(.image) .copy h4 {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner:has(.image) .copy h4 {
    margin-top: min(48px, calc(48 / 1440 * 100vw));
  }
}
.component.type_conversion .inner .image {
  text-align: inherit;
}
.component.type_conversion .inner .image img {
  width: calc(160 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .image img {
    width: min(calc(176px * 1.333333), calc(176 / 1440 * 100vw));
  }
}
.component.type_conversion .inner .copy h4 {
  line-height: 180%;
  font-weight: 700;
  font-size: calc(var(--fs-xl) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .copy h4 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
  }
}
.component.type_conversion .inner .desc {
  margin-top: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .desc {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_conversion .inner .desc p {
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 170%;
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .desc p {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.component.type_conversion .inner .button {
  text-align: inherit;
  margin-top: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .button {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_conversion .inner .button a {
  text-align: center;
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
  background-color: var(--color-brand-secondary);
  border-color: var(--color-brand-secondary);
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .button a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_conversion .inner .button a.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.component.type_conversion .inner .button a.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component.type_conversion .inner .button a.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component.type_conversion .inner .button a::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .button a::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.component.type_conversion .inner .button a::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .button a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component.type_conversion .inner .button a:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .component.type_conversion .inner .button a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .component.type_conversion .inner .button a:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.component.type_conversion .inner .button a span {
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .button a {
    min-width: min(320px, calc(320 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component.type_conversion .inner .button a:hover {
    background-color: var(--color-brand-secondary);
    border-color: var(--color-brand-secondary);
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_conversion .inner .button a {
    width: -moz-fit-content;
    width: fit-content;
  }
}

.component.type_heading {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_heading {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.component.type_heading .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_heading .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_heading.large .inner .heading {
  color: var(--color-text-medium);
  padding-bottom: calc(12 / 375 * 100vw);
  border-bottom: calc(3 / 375 * 100vw) solid var(--color-border-dark);
  position: relative;
  font-size: calc(var(--fs-l) / 375 * 100vw);
  line-height: 155%;
  word-break: auto-phrase;
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .component.type_heading.large .inner .heading {
    border-bottom-width: min(3px, calc(3 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
    padding-bottom: min(12px, calc(12 / 1440 * 100vw));
  }
}
.component.type_heading.medium {
  margin-top: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_heading.medium {
    margin-top: min(56px, calc(56 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_heading.medium .inner {
    padding-inline: min(120px, calc(120 / 1440 * 100vw));
  }
}
.component.type_heading.medium .inner .heading {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_heading.medium .inner .heading {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_heading.medium .inner .heading:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_heading.medium .inner .heading:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
.component.type_text_lead {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_lead {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_text_lead .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_lead .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_text_lead .inner .text p {
  display: block;
  font-size: calc(var(--fs-l) / 375 * 100vw);
  line-height: var(--line-height-large);
  word-break: auto-phrase;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .component.type_text_lead .inner .text p {
    font-size: min(calc(var(--fs-xxl) * 1px), calc(var(--fs-xxl) / 1440 * 100vw));
  }
}
.component.type_text_lead .inner .text p.left {
  text-align: left;
}
.component.type_text_lead .inner .text p.center {
  text-align: center;
  margin-inline: auto;
}
.component.type_text_lead .inner .text p.right {
  text-align: right;
}

.component.type_text {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_text .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text .inner {
    padding-inline: min(120px, calc(120 / 1440 * 100vw));
  }
}
.component.type_text.sp_left {
  text-align: left;
}
.component.type_text.sp_center {
  text-align: center;
}
.component.type_text.sp_right {
  text-align: right;
}
@media print, screen and (min-width: 768px) {
  .component.type_text.pc_left {
    text-align: left;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text.pc_center {
    text-align: center;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text.pc_right {
    text-align: right;
  }
}

.component.type_text_image {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_image {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.component.type_text_image .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_image .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text_image .inner {
    display: flex;
    justify-content: space-between;
  }
}
.component.type_text_image .inner .text {
  margin-top: calc(28 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_image .inner .text {
    width: min(582px, calc(582 / 1440 * 100vw));
    margin-top: unset;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text_image .inner .image {
    width: min(570px, calc(570 / 1440 * 100vw));
    margin-top: unset;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text_image.reverse .inner {
    flex-direction: row-reverse;
  }
}

.component.type_text_map {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_text_map .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner {
    display: flex;
    justify-content: space-between;
    padding-inline: min(120px, calc(120 / 1440 * 100vw));
  }
}
.component.type_text_map .inner .text {
  margin-top: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner .text {
    width: min(342px, calc(342 / 1440 * 100vw));
    margin-top: unset;
  }
}
.component.type_text_map .inner .text h3 {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
  display: block;
  margin-bottom: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner .text h3 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_text_map .inner .text h3:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner .text h3:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner .text h3 {
    margin-bottom: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_text_map .inner .text h3::before {
  content: none;
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner .map {
    width: min(570px, calc(570 / 1440 * 100vw));
    margin-top: unset;
  }
}
.component.type_text_map .inner .map .map_wrap_outer {
  width: 100%;
}
.component.type_text_map .inner .map .map_wrap_outer.shrink {
  margin-left: auto;
  margin-right: auto;
}
.component.type_text_map .inner .map .map_wrap_outer .map_wrap_inner {
  position: relative;
  display: block;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner .map .map_wrap_outer .map_wrap_inner {
    width: 100%;
  }
}
.component.type_text_map .inner .map .map_wrap_outer .map_wrap_inner iframe {
  aspect-ratio: 57/38;
  border-radius: calc(4 / 375 * 100vw);
  width: 100%;
  height: auto;
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map .inner .map .map_wrap_outer .map_wrap_inner iframe {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_text_map.reverse .inner {
    flex-direction: row-reverse;
  }
}

.component.type_map {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_map {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_map .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_map .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_map .inner .map {
  margin: 0 auto;
}
.component.type_map .inner .map .map_wrap_outer {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 768px) {
  .component.type_map .inner .map .map_wrap_outer {
    max-width: min(720px, calc(720 / 1440 * 100vw));
  }
}
.component.type_map .inner .map .map_wrap_outer .map_wrap_inner {
  display: block;
}
.component.type_map .inner .map .map_wrap_outer .map_wrap_inner iframe {
  aspect-ratio: 57/38;
  border-radius: calc(4 / 375 * 100vw);
  width: 100%;
  height: auto;
}
@media print, screen and (min-width: 768px) {
  .component.type_map .inner .map .map_wrap_outer .map_wrap_inner iframe {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}

.component.type_image_multi {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_image_multi {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_image_multi.set1 .inner {
    justify-content: center;
  }
}
.component.type_image_multi.set2 .inner {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-template-rows: repeat(1, auto);
  grid-gap: calc(32 / 375 * 100vw) 0;
}
@media print, screen and (min-width: 768px) {
  .component.type_image_multi.set2 .inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(1, auto);
    grid-gap: min(64px, calc(64 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_image_multi.set3 .inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(1, auto);
  grid-gap: calc(32 / 375 * 100vw) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_image_multi.set3 .inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, auto);
    grid-gap: min(64px, calc(64 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_image_multi.set4 .inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(1, auto);
  grid-gap: calc(32 / 375 * 100vw) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_image_multi.set4 .inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(1, auto);
    grid-gap: min(64px, calc(64 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_image_multi .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_image_multi .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}

.component.type_movie_multi {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_movie_multi {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_movie_multi.set1 .inner {
    justify-content: center;
  }
}
.component.type_movie_multi.set2 .inner {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-template-rows: repeat(1, auto);
  grid-gap: calc(32 / 375 * 100vw) 0;
}
@media print, screen and (min-width: 768px) {
  .component.type_movie_multi.set2 .inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(1, auto);
    grid-gap: min(64px, calc(64 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_movie_multi.set3 .inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(1, auto);
  grid-gap: calc(32 / 375 * 100vw) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_movie_multi.set3 .inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, auto);
    grid-gap: min(64px, calc(64 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_movie_multi.set4 .inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(1, auto);
  grid-gap: calc(32 / 375 * 100vw) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_movie_multi.set4 .inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(1, auto);
    grid-gap: min(64px, calc(64 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_movie_multi .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_movie_multi .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_movie_multi .inner .movie .movie_wrap_outer {
  width: 100%;
}
.component.type_movie_multi .inner .movie .movie_wrap_outer.shrink {
  margin-left: auto;
  margin-right: auto;
}
.component.type_movie_multi .inner .movie .movie_wrap_outer .movie_wrap_inner {
  position: relative;
  display: block;
  width: 100%;
}
.component.type_movie_multi .inner .movie .movie_wrap_outer .movie_wrap_inner iframe {
  aspect-ratio: 16/9;
  width: 100%;
  height: 100%;
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_movie_multi .inner .movie .movie_wrap_outer .movie_wrap_inner iframe {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}

.component.type_panel {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_panel {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_panel {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_panel.set2 .inner {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_panel.set3 .inner {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_panel.set4 .inner {
    grid-template-columns: repeat(4, 1fr);
    gap: min(40px, calc(40 / 1440 * 100vw)) min(40px, calc(40 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_panel.set4 .inner .unit .title {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_panel.set4 .inner .unit .button {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_panel .inner {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-template-rows: repeat(1, auto);
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner {
    gap: min(60px, calc(60 / 1440 * 100vw)) min(60px, calc(60 / 1440 * 100vw));
  }
}
.component.type_panel .inner .unit {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
  gap: 0;
  margin-top: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit {
    margin-top: unset;
  }
}
.component.type_panel .inner .unit:first-child {
  margin-top: unset;
}
@media (any-hover: hover) {
  .component.type_panel .inner .unit .image a, .component.type_panel .inner .unit .image span {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .component.type_panel .inner .unit .image a:hover, .component.type_panel .inner .unit .image span:hover {
    opacity: 0.7;
  }
}
.component.type_panel .inner .unit .image img {
  width: 100%;
}
.component.type_panel .inner .unit .title {
  margin-top: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit .title {
    margin-top: min(48px, calc(48 / 1440 * 100vw));
  }
}
.component.type_panel .inner .unit .title h3 {
  font-size: calc(var(--fs-l) / 375 * 100vw);
  line-height: var(--line-height-medium);
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit .title h3 {
    font-size: min(calc(var(--fs-xxl) * 1px), calc(var(--fs-xxl) / 1440 * 100vw));
  }
}
.component.type_panel .inner .unit .title h3 a {
  text-decoration: none;
  color: var(--color-text-medium);
}
.component.type_panel .inner .unit .desc {
  margin-top: calc(24 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 170%;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit .desc {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.component.type_panel .inner .unit .button {
  margin-top: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit .button {
    margin-top: min(48px, calc(48 / 1440 * 100vw));
  }
}
.component.type_panel .inner .unit .button a, .component.type_panel .inner .unit .button span {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit .button a, .component.type_panel .inner .unit .button span {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_panel .inner .unit .button a.reverse, .component.type_panel .inner .unit .button span.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.component.type_panel .inner .unit .button a.reverse::after, .component.type_panel .inner .unit .button span.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .component.type_panel .inner .unit .button a.reverse:hover, .component.type_panel .inner .unit .button span.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.component.type_panel .inner .unit .button a::before, .component.type_panel .inner .unit .button span::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit .button a::before, .component.type_panel .inner .unit .button span::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.component.type_panel .inner .unit .button a::after, .component.type_panel .inner .unit .button span::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_panel .inner .unit .button a::after, .component.type_panel .inner .unit .button span::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .component.type_panel .inner .unit .button a:hover, .component.type_panel .inner .unit .button span:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .component.type_panel .inner .unit .button a:hover::after, .component.type_panel .inner .unit .button span:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .component.type_panel .inner .unit .button a:hover::before, .component.type_panel .inner .unit .button span:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.component.type_panel .inner .unit .button a span, .component.type_panel .inner .unit .button span span {
  position: relative;
  z-index: 2;
}

.component.type_speaker {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.component.type_speaker .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    align-items: flex-start;
  }
}
.component.type_speaker .inner .speaker {
  background-color: var(--color-surface);
  padding: calc(20 / 375 * 100vw) calc(16 / 375 * 100vw) calc(24 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker {
    position: sticky;
    top: 0;
    width: min(320px, calc(320 / 1440 * 100vw));
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    padding: min(24px, calc(24 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
  .component.type_speaker .inner .speaker.static {
    position: static;
  }
}
.component.type_speaker .inner .speaker .heading {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .heading {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .speaker .heading:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .heading:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .speaker .unit {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit {
    margin-top: min(20px, calc(20 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .speaker .unit + .unit {
  margin-top: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit + .unit {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .speaker .unit .photo {
  text-align: center;
}
.component.type_speaker .inner .speaker .unit .photo img {
  max-width: calc(240 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit .photo img {
    max-width: min(240px, calc(240 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .speaker .unit .name {
  margin-top: calc(10 / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit .name {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .speaker .unit .name dt {
  color: var(--color-text-medium);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 700;
  line-height: 175%;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit .name dt {
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
  }
}
.component.type_speaker .inner .speaker .unit .name dd {
  color: var(--color-brand-lightblue);
  font-family: var(--en);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 500;
  line-height: 200%;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit .name dd {
    margin-top: min(4px, calc(4 / 1440 * 100vw));
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    line-height: 125%;
  }
}
.component.type_speaker .inner .speaker .unit .profile {
  margin-top: calc(10 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 170%;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit .profile {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    line-height: 170%;
  }
}
.component.type_speaker .inner .speaker .unit .profile.en {
  font-family: var(--num);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 400;
  color: var(--color-gray-dark);
  line-height: 166%;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .speaker .unit .profile.en {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    line-height: 150%;
  }
}
.component.type_speaker .inner .text {
  margin-top: calc(28 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .text {
    width: min(792px, calc(792 / 1440 * 100vw));
    margin-top: unset;
  }
}
.component.type_speaker .inner .text .float_image {
  padding-bottom: calc(24 / 375 * 100vw);
}
.component.type_speaker .inner .text .float_image::after {
  display: block;
  clear: both;
  content: "";
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .text .float_image {
    padding-bottom: min(24px, calc(24 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .text .float_image figure {
  float: right;
  width: calc(160 / 375 * 100vw);
  padding-left: calc(16 / 375 * 100vw);
  padding-top: calc(8 / 375 * 100vw);
  padding-bottom: calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .text .float_image figure {
    width: min(320px, calc(320 / 1440 * 100vw));
    padding-left: min(16px, calc(16 / 1440 * 100vw));
    padding-top: min(8px, calc(8 / 1440 * 100vw));
    padding-bottom: min(8px, calc(8 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .text .float_image figure figcaption {
  text-align: center;
  margin-top: calc(6 / 375 * 100vw);
  color: var(--color-gray-dark);
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  line-height: 166%;
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .text .float_image figure figcaption {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xs) * 1px), calc(var(--fs-xs) / 1440 * 100vw));
  }
}
.component.type_speaker .inner .text .component {
  margin-top: calc(16 / 375 * 100vw);
  padding-bottom: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_speaker .inner .text .component {
    margin-top: min(20px, calc(20 / 1440 * 100vw));
    padding-bottom: min(24px, calc(24 / 1440 * 100vw));
  }
}
.component.type_speaker .inner .text .component .container, .component.type_speaker .inner .text .component .inner {
  padding: unset;
  display: block;
  width: auto;
}
.component.type_speaker .inner .text .component .container .inner .text, .component.type_speaker .inner .text .component .inner .inner .text {
  margin-top: unset;
  width: 100%;
}
.component.type_speaker .inner .text .type_table {
  padding-left: 0;
  padding-right: 0;
}
.component.type_speaker .inner .text .type_table .inner {
  padding: unset;
  display: block;
}

.component.type_column {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_column {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.component.type_column .container {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner {
    display: grid;
    grid-template-columns: min(360px, calc(360 / 1440 * 100vw)) min(594px, calc(594 / 1440 * 100vw));
    grid-template-rows: auto auto 1fr;
    padding-inline: min(120px, calc(120 / 1440 * 100vw));
  }
}
.component.type_column .container .inner.textonly {
  display: block;
}
.component.type_column .container .inner h3 {
  padding-bottom: calc(36 / 375 * 100vw);
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner h3 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_column .container .inner h3:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner h3:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner h3 {
    padding-bottom: min(24px, calc(24 / 1440 * 100vw));
    grid-column: 2/3;
    grid-row: 1/2;
  }
}
.component.type_column .container .inner .photo {
  padding-bottom: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .photo {
    grid-column: 1/2;
    grid-row: 1/4;
    padding-right: min(36px, calc(36 / 1440 * 100vw));
    padding-bottom: unset;
  }
}
.component.type_column .container .inner .photo .child {
  margin-top: calc(20 / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .photo .child:first-of-type {
    margin-top: unset;
  }
}
.component.type_column .container .inner .photo .child .image_sp {
  padding-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .photo .child .image_sp {
    display: none;
  }
}
.component.type_column .container .inner .photo .child .image_pc {
  display: none;
  padding-bottom: 0;
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .photo .child .image_pc {
    display: inline;
  }
}
.component.type_column .container .inner .photo .child img {
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .photo .child img {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.component.type_column .container .inner .photo .child .caption {
  text-align: center;
  margin-top: calc(8 / 375 * 100vw);
  color: var(--color-text-dark);
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  line-height: var(--line-height-small);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .photo .child .caption {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    margin-top: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_column .container .inner .photo .child .caption.shrink {
  margin-left: auto;
  margin-right: auto;
}
.component.type_column .container .inner .photo .child .caption.left {
  text-align: left;
}
.component.type_column .container .inner .photo .child .caption.center {
  text-align: center;
}
.component.type_column .container .inner .photo .child .caption.right {
  text-align: right;
}
.component.type_column .container .inner h4 {
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 700;
  line-height: 170%;
  margin-bottom: calc(20 / 375 * 100vw);
  color: var(--color-gray-dark);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner h4 {
    grid-column: 2/3;
    grid-row: 2/3;
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
    margin-bottom: min(20px, calc(20 / 1440 * 100vw));
  }
}
.component.type_column .container .inner .text {
  padding-top: var(--space-medium);
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .text {
    grid-column: 2/3;
    grid-row: 3/4;
  }
}
.component.type_column .container .inner .text .button .p_button {
  margin-inline: auto;
}
@media print, screen and (min-width: 768px) {
  .component.type_column .container .inner .text .button .p_button {
    margin-inline: unset;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.reverse .container .inner {
    grid-template-columns: min(594px, calc(594 / 1440 * 100vw)) min(360px, calc(360 / 1440 * 100vw));
    grid-template-rows: auto auto 1fr;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.reverse .container .inner h3 {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.reverse .container .inner .photo {
    grid-column: 2/3;
    grid-row: 1/4;
    padding-right: 0;
    padding-left: min(36px, calc(36 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.reverse .container .inner h4 {
    grid-column: 1/2;
    grid-row: 2/3;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.reverse .container .inner .text {
    grid-column: 1/2;
    grid-row: 3/4;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.vertical .container .inner {
    display: block;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.vertical .container .inner .text {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.vertical .container .inner .photo {
    padding: min(36px, calc(36 / 1440 * 100vw)) 0 min(20px, calc(20 / 1440 * 100vw));
    display: flex;
    justify-content: center;
    gap: min(60px, calc(60 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.vertical .container .inner .photo .child {
    width: 100%;
    margin-top: unset;
  }
}
.component.type_column.vertical_reverse .container .inner {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto auto auto auto;
}
.component.type_column.vertical_reverse .container .inner h3 {
  grid-row: 1/2;
  grid-column: auto;
}
.component.type_column.vertical_reverse .container .inner h4 {
  grid-row: 2/3;
  grid-column: auto;
}
.component.type_column.vertical_reverse .container .inner .photo {
  grid-row: 4/5;
  grid-column: auto;
  padding-bottom: 0;
  margin-top: var(--space-medium);
}
@media print, screen and (min-width: 768px) {
  .component.type_column.vertical_reverse .container .inner .photo {
    padding-right: 0;
    padding-left: 0;
    padding-bottom: var(--space-medium);
    margin-top: var(--space-xxlarge);
    padding-top: 0;
    display: flex;
    justify-content: center;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_column.vertical_reverse .container .inner .photo .child {
    width: 100%;
  }
}
.component.type_column.vertical_reverse .container .inner .text {
  grid-row: 3/4;
  grid-column: auto;
}
@media print, screen and (min-width: 768px) {
  .component.type_column.vertical_reverse .container .inner .text {
    margin-bottom: min(56px, calc(56 / 1440 * 100vw));
  }
}

.component.type_table {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_table {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_table:has(.type01, .type02, .type_03, .type_06, .type_07) {
  background-color: var(--color-surface);
  padding-block: calc(25 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_table:has(.type01, .type02, .type_03, .type_06, .type_07) {
    padding-block: min(46px, calc(46 / 1440 * 100vw));
  }
}
.component.type_table .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_table .inner .table_set {
  position: relative;
  overflow: auto;
}
.component.type_table .inner .table_set.type_01 table {
  border: none;
}
.component.type_table .inner .table_set.type_01 table th, .component.type_table .inner .table_set.type_01 table td {
  border: none;
  padding: unset;
}
.component.type_table .inner .table_set.type_03 table, .component.type_table .inner .table_set.type_04 table {
  border-top: 1px solid var(--color-border-light);
  border-left: 1px solid var(--color-border-light);
}
.component.type_table .inner .table_set.type_03 table tr:last-of-type th, .component.type_table .inner .table_set.type_04 table tr:last-of-type th {
  border-bottom-color: var(--color-border-light);
}
.component.type_table .inner .table_set.type_03 table tr th, .component.type_table .inner .table_set.type_03 table tr td, .component.type_table .inner .table_set.type_04 table tr th, .component.type_table .inner .table_set.type_04 table tr td {
  padding: calc(8 / 375 * 100vw);
  background-color: var(--color-surface);
  border-bottom: 1px solid var(--color-border-light);
  border-right: 1px solid var(--color-border-light);
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set.type_03 table tr th, .component.type_table .inner .table_set.type_03 table tr td, .component.type_table .inner .table_set.type_04 table tr th, .component.type_table .inner .table_set.type_04 table tr td {
    padding: min(12px, calc(12 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_table .inner .table_set.type_03 table tr th, .component.type_table .inner .table_set.type_04 table tr th {
  background-color: var(--color-bg-bg-light);
  border-bottom-color: var(--color-text-light);
  width: 30%;
}
.component.type_table .inner .table_set.type_04 table tr th {
  background-color: var(--color-bg-bg-dark);
  color: var(--color-text-light);
}
.component.type_table .inner .table_set.type_06 table tr:nth-child(odd) {
  background-color: var(--color-bg-bg-light);
}
.component.type_table .inner .table_set.type_06 table tr:nth-child(even) {
  background-color: var(--color-surface);
}
.component.type_table .inner .table_set.type_06 table tr th {
  padding-left: calc(16 / 375 * 100vw);
  border-top-color: var(--color-border-light);
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set.type_06 table tr th {
    padding-left: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_table .inner .table_set.type_06 table tr td {
  border-top-color: var(--color-border-light);
}
.component.type_table .inner .table_set.type_07 table tr:nth-child(odd) {
  background-color: var(--color-bg-bg-light);
}
.component.type_table .inner .table_set.type_07 table tr:nth-child(even) {
  background-color: var(--color-surface);
}
.component.type_table .inner .table_set.type_07 table tr th {
  padding-left: calc(16 / 375 * 100vw);
  white-space: nowrap;
  border-top-color: var(--color-border-light);
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set.type_07 table tr th {
    padding-left: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_table .inner .table_set.type_07 table tr td {
  border-top-color: var(--color-border-light);
}
.component.type_table .inner .table_set.compact table th, .component.type_table .inner .table_set.compact table td {
  padding: calc(4 / 375 * 100vw) calc(8 / 375 * 100vw);
  line-height: var(--line-height-small);
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set.compact table th, .component.type_table .inner .table_set.compact table td {
    padding: min(4px, calc(4 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set.fixed table {
    table-layout: fixed;
  }
}
.component.type_table .inner .table_set.fix_left table th {
  position: sticky;
  left: 0;
}
.component.type_table .inner .table_set table {
  border-collapse: collapse;
  width: 100%;
}
.component.type_table .inner .table_set table caption {
  caption-side: bottom;
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  line-height: var(--line-height-small);
  margin-top: calc(8 / 375 * 100vw);
  font-weight: inherit;
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set table caption {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    margin-top: min(8px, calc(8 / 1440 * 100vw));
  }
}
.component.type_table .inner .table_set table tr:first-of-type th, .component.type_table .inner .table_set table tr:first-of-type td {
  border-top: none;
}
.component.type_table .inner .table_set table th, .component.type_table .inner .table_set table td {
  border-top: 1px solid var(--color-border-medium);
  vertical-align: top;
  padding-block: calc(10 / 375 * 100vw);
  min-width: calc(108 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 140%;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set table th, .component.type_table .inner .table_set table td {
    min-width: min(184px, calc(184 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding-block: min(16px, calc(16 / 1440 * 100vw));
    line-height: 177%;
  }
}
.component.type_table .inner .table_set table th.left, .component.type_table .inner .table_set table td.left {
  text-align: left;
}
.component.type_table .inner .table_set table th.center, .component.type_table .inner .table_set table td.center {
  text-align: center;
}
.component.type_table .inner .table_set table th.right, .component.type_table .inner .table_set table td.right {
  text-align: right;
}
.component.type_table .inner .table_set table th.min, .component.type_table .inner .table_set table td.min {
  min-width: auto;
}
.component.type_table .inner .table_set table th .p_button, .component.type_table .inner .table_set table td .p_button {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set table th .p_button, .component.type_table .inner .table_set table td .p_button {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
  }
}
.component.type_table .inner .table_set table th {
  vertical-align: middle;
  font-weight: 700;
}
.component.type_table .inner .table_set table th + td, .component.type_table .inner .table_set table td + td {
  padding-left: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_set table th + td, .component.type_table .inner .table_set table td + td {
    padding-left: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_table .inner .table_overflow {
  padding-top: calc(30 / 375 * 100vw);
  position: sticky;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 1;
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_overflow {
    padding-top: min(30px, calc(30 / 1440 * 100vw));
  }
}
.component.type_table .inner .table_overflow:before {
  content: "";
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: calc(20 / 375 * 100vw) auto;
  background-image: url(/images/swipe.svg);
  width: calc(20 / 375 * 100vw);
  height: calc(22 / 375 * 100vw);
  margin-left: auto;
  position: absolute;
  right: 0;
  top: 0;
}
@media print, screen and (min-width: 768px) {
  .component.type_table .inner .table_overflow:before {
    background-size: min(20px, calc(20 / 1440 * 100vw)) auto;
    width: min(20px, calc(20 / 1440 * 100vw));
    height: min(22px, calc(22 / 1440 * 100vw));
  }
}

.component.type_button {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_button {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_button .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_button .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_button .inner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.component.type_button .inner ul li {
  text-align: center;
  margin: 0 calc((16 / 375 * 100vw) / 2) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_button .inner ul li {
    margin: 0 calc(min(16px, calc(16 / 1440 * 100vw)) / 2) min(16px, calc(16 / 1440 * 100vw));
  }
}

.component.type_anchor {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_anchor {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_anchor .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_anchor .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_anchor .inner ul {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_anchor .inner ul {
    grid-template-columns: repeat(3, 1fr);
    gap: min(24px, calc(24 / 1440 * 100vw));
  }
}
.component.type_anchor .inner ul li a {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  justify-content: center;
  gap: calc(4 / 375 * 100vw);
  position: relative;
  text-decoration: none;
  color: var(--color-text-on-accent);
  font-weight: 700;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 170%;
  padding: calc(8 / 375 * 100vw) calc(24 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border-radius: calc(4 / 375 * 100vw);
  transition: background-color var(--transition-speed-fast) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_anchor .inner ul li a {
    padding: min(8px, calc(8 / 1440 * 100vw)) min(12px, calc(12 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    line-height: 135%;
  }
}
@media (any-hover: hover) {
  .component.type_anchor .inner ul li a:hover {
    background-color: var(--color-bg-bg-corporate);
  }
}
.component.type_anchor .inner ul li a::after {
  display: block;
  content: "";
  width: calc(24 / 375 * 100vw);
  height: calc(24 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_anchor.svg);
  mask-image: url(/images/arrow_anchor.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  background-color: var(--color-text-on-accent);
}
@media print, screen and (min-width: 768px) {
  .component.type_anchor .inner ul li a::after {
    width: min(24px, calc(24 / 1440 * 100vw));
    height: min(24px, calc(24 / 1440 * 100vw));
  }
}

.component.type_num {
  margin-top: var(--margin-top-medium);
  background-color: #E2F3F8;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media print, screen and (min-width: 768px) {
  .component.type_num {
    margin-top: var(--margin-top-large);
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num {
    padding-top: 40px;
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num.set2 .inner {
    gap: 80px;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num.set3 .inner {
    gap: 35px;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num.set3 .inner, .component.type_num.set4 .inner {
    gap: 20px;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num.set3 .inner .unit .circle, .component.type_num.set4 .inner .unit .circle {
    width: 230px;
    height: 230px;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num.set3 .inner .unit .circle dl dt, .component.type_num.set4 .inner .unit .circle dl dt {
    top: 40px;
    padding: 0 35px;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num.set3 .inner .unit .circle dl dd, .component.type_num.set4 .inner .unit .circle dl dd {
    top: 80px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num.set3 .inner .unit .circle dl dd span, .component.type_num.set4 .inner .unit .circle dl dd span {
    margin: 0 0 8px 6px;
  }
}
.component.type_num .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_num .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_num .inner {
    display: flex;
    justify-content: center;
    gap: 20px;
  }
}
.component.type_num .inner .unit {
  margin-top: 50px;
}
@media print, screen and (min-width: 768px) {
  .component.type_num .inner .unit {
    margin-top: unset;
  }
}
.component.type_num .inner .unit:first-of-type {
  margin-top: unset;
}
.component.type_num .inner .unit .circle {
  width: 300px;
  height: 300px;
  text-align: center;
  background-color: var(--color-bg);
  margin: 0 auto;
  border-radius: 50%;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .component.type_num .inner .unit .circle {
    width: 320px;
    height: 320px;
  }
}
.component.type_num .inner .unit .circle dl dt {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  letter-spacing: 0em;
  position: absolute;
  top: 70px;
  padding: 0 30px;
  width: 100%;
  text-align: center;
}
.component.type_num .inner .unit .circle dl dd {
  position: absolute;
  top: 110px;
  width: 100%;
  color: var(--color-brand);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {
  .component.type_num .inner .unit .circle dl dd {
    top: 120px;
  }
}
.component.type_num .inner .unit .circle dl dd em {
  font-size: 70px;
  font-size: 7rem;
  line-height: 1;
  letter-spacing: 0em;
  display: block;
}
@media print, screen and (min-width: 768px) {
  .component.type_num .inner .unit .circle dl dd em {
    font-size: 80px;
    font-size: 8rem;
    line-height: 1;
    letter-spacing: 0em;
  }
}
.component.type_num .inner .unit .circle dl dd span {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: 0em;
  display: block;
  margin-top: 25px;
}
.component.type_num .inner .unit .desc {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.6923076923;
  letter-spacing: 0em;
  margin-top: 15px;
}
@media print, screen and (min-width: 768px) {
  .component.type_num .inner .unit .desc {
    margin-top: 20px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6;
    letter-spacing: 0em;
  }
}

.component.type_wysiwyg {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_wysiwyg {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.component.type_wysiwyg .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_wysiwyg .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}

.component.type_catalog {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.component.type_catalog .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: min(48px, calc(48 / 1440 * 100vw)) min(36px, calc(36 / 1440 * 100vw));
    margin-top: min(48px, calc(48 / 1440 * 100vw));
  }
  .component.type_catalog .inner .list:first-child {
    margin-top: unset;
  }
}
.component.type_catalog .inner .list .unit {
  position: relative;
  background-color: var(--color-surface);
  padding: calc(12 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
  margin-top: calc(28 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit {
    padding: min(20px, calc(20 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    margin-top: unset;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    gap: min(1px, calc(1 / 1440 * 100vw)) min(1px, calc(1 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit:first-child {
    margin-top: unset;
  }
}
.component.type_catalog .inner .list .unit .main .image a {
  display: block;
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .component.type_catalog .inner .list .unit .main .image a {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .component.type_catalog .inner .list .unit .main .image a:hover {
    opacity: 0.7;
  }
}
.component.type_catalog .inner .list .unit .main .image img {
  border-radius: unset;
}
.component.type_catalog .inner .list .unit .main .desc {
  margin-top: calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit .main .desc {
    margin-top: min(12px, calc(12 / 1440 * 100vw));
  }
}
.component.type_catalog .inner .list .unit .main .desc .title {
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  line-height: 160%;
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit .main .desc .title {
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .component.type_catalog .inner .list .unit .main .desc .title {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .component.type_catalog .inner .list .unit .main .desc .title:hover {
    opacity: 0.7;
  }
}
.component.type_catalog .inner .list .unit .main .desc .title a {
  color: var(--color-text-medium);
  position: relative;
  text-decoration: none;
  word-break: break-all;
}
.component.type_catalog .inner .list .unit .main .desc .subtitle {
  margin-top: calc(6 / 375 * 100vw);
  color: var(--color-gray-dark);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 500;
  line-height: 200%;
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit .main .desc .subtitle {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}
.component.type_catalog .inner .list .unit .main .desc .format {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-family: var(--num);
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit .main .desc .format {
    font-size: min(calc(var(--fs-xs) * 1px), calc(var(--fs-xs) / 1440 * 100vw));
  }
}
.component.type_catalog .inner .list .unit .main .desc .format a {
  text-decoration: none;
  display: flex;
  align-items: center;
  padding-block: calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit .main .desc .format a {
    padding-block: min(8px, calc(8 / 1440 * 100vw));
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .component.type_catalog .inner .list .unit .main .desc .format a {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .component.type_catalog .inner .list .unit .main .desc .format a:hover {
    opacity: 0.7;
  }
}
.component.type_catalog .inner .list .unit .main .desc .format a img {
  width: calc(20 / 375 * 100vw);
  margin-right: calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit .main .desc .format a img {
    width: min(20px, calc(20 / 1440 * 100vw));
    margin-right: min(8px, calc(8 / 1440 * 100vw));
  }
}
.component.type_catalog .inner .list .unit .main .desc .format a span {
  text-transform: uppercase;
  letter-spacing: 0;
}
.component.type_catalog .inner .list .unit .summary {
  margin-top: calc(6 / 375 * 100vw);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  line-height: 166%;
}
@media print, screen and (min-width: 768px) {
  .component.type_catalog .inner .list .unit .summary {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xs) * 1px), calc(var(--fs-xs) / 1440 * 100vw));
  }
}

.component.type_faq {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_faq .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_faq .inner .unit {
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  padding-inline: calc(24 / 375 * 100vw) calc(16 / 375 * 100vw);
  margin-top: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    padding-inline: min(24px, calc(24 / 1440 * 100vw));
    margin-top: min(20px, calc(20 / 1440 * 100vw));
  }
}
.component.type_faq .inner .unit .q {
  padding-block: calc(16 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 700;
  line-height: var(--line-height-medium);
  position: relative;
  display: block grid;
  grid-template-columns: auto 1fr auto;
  gap: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .q {
    padding-block: min(28px, calc(28 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    cursor: pointer;
    gap: min(24px, calc(24 / 1440 * 100vw));
  }
}
.component.type_faq .inner .unit .q.is-active::after {
  rotate: z 180deg;
}
.component.type_faq .inner .unit .q::after {
  content: "";
  background-image: url(/images/arrow_bottom.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: calc(30 / 375 * 100vw);
  height: 1lh;
  transition: rotate var(--transition-speed-fast) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .q::after {
    width: min(40px, calc(40 / 1440 * 100vw));
  }
}
.component.type_faq .inner .unit .q:before {
  content: "Q";
  font-family: var(--en);
  font-size: calc(var(--fs-xxxl) / 375 * 100vw);
  line-height: 1lh;
  font-weight: 700;
  translate: 0 calc(-2 / 375 * 100vw);
  width: 1em;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .q:before {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    translate: 0 max(-2px, calc(-2 / 1440 * 100vw));
  }
}
.component.type_faq .inner .unit .a {
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 500;
  line-height: 170%;
  position: relative;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(24 / 375 * 100vw);
  overflow: hidden;
  height: 0;
  transition: height var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    gap: min(24px, calc(24 / 1440 * 100vw));
  }
}
.component.type_faq .inner .unit .a.is-active {
  height: auto;
}
.component.type_faq .inner .unit .a:before {
  content: "A";
  font-family: var(--en);
  font-size: calc(var(--fs-xxxl) / 375 * 100vw);
  line-height: 1lh;
  font-weight: 700;
  color: var(--color-brand-lightblue);
  translate: 0 calc(-1 / 375 * 100vw);
  width: 1em;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .a:before {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    translate: 0 max(-1px, calc(-1 / 1440 * 100vw));
  }
}
.component.type_faq .inner .unit .a img {
  display: block;
  margin: 0 auto calc(16 / 375 * 100vw) !important;
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .a img {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    margin: 0 auto min(16px, calc(16 / 1440 * 100vw)) !important;
  }
}
.component.type_faq .inner .unit .a img.mt-image-right {
  float: none !important;
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .a img.mt-image-right {
    float: right !important;
    margin: 0 0 min(32px, calc(32 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw)) !important;
  }
}
.component.type_faq .inner .unit .a img.mt-image-left {
  float: none !important;
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .a img.mt-image-left {
    float: left !important;
    margin: 0 min(32px, calc(32 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw)) 0 !important;
  }
}
.component.type_faq .inner .unit .a p {
  padding-bottom: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_faq .inner .unit .a p {
    padding-bottom: min(24px, calc(24 / 1440 * 100vw));
  }
}

.component.type_member {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_member {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.component.type_member .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, auto);
    display: grid;
    gap: min(48px, calc(48 / 1440 * 100vw)) min(36px, calc(36 / 1440 * 100vw));
  }
}
.component.type_member .inner .unit {
  background-color: var(--color-surface);
  padding: calc(12 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
  margin-top: calc(28 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit {
    margin-top: unset;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    gap: min(1px, calc(1 / 1440 * 100vw)) min(1px, calc(1 / 1440 * 100vw));
    padding: min(20px, calc(20 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit:first-child {
    margin-top: unset;
  }
}
.component.type_member .inner .unit .photo img {
  -o-object-fit: cover;
  object-fit: cover;
}
.component.type_member .inner .unit .info {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit .info {
    margin-top: min(24px, calc(24 / 1440 * 100vw));
  }
}
.component.type_member .inner .unit .info h3 {
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 110%;
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit .info h3 {
    font-size: min(calc(var(--fs-xxl) * 1px), calc(var(--fs-xxl) / 1440 * 100vw));
    line-height: 150%;
  }
}
.component.type_member .inner .unit .info h3 i {
  display: block;
  margin-top: calc(16 / 375 * 100vw);
  color: var(--color-text-vivid);
  font-family: var(--en);
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  font-weight: 500;
  line-height: 130%;
  text-transform: uppercase;
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit .info h3 i {
    margin-top: min(1px, calc(1 / 1440 * 100vw));
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    line-height: 170%;
  }
}
.component.type_member .inner .unit .info .position {
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  font-weight: 700;
  line-height: 123%;
  margin-top: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit .info .position {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    line-height: 170%;
  }
}
.component.type_member .inner .unit .info .profile {
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  font-weight: 500;
  line-height: 130%;
  margin-top: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit .info .profile {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    margin-top: min(1px, calc(1 / 1440 * 100vw));
    line-height: 140%;
  }
}
.component.type_member .inner .unit .desc {
  margin-top: calc(10 / 375 * 100vw);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 500;
  line-height: 120%;
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit .desc {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    margin-top: min(16px, calc(16 / 1440 * 100vw));
    line-height: 150%;
  }
}
.component.type_member .inner .unit .desc p {
  padding-bottom: 1em;
}
.component.type_member .inner .unit .desc p:last-child {
  padding-bottom: unset;
}
.component.type_member .inner .unit .button {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_member .inner .unit .button {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
  }
}
.component.type_member .inner .unit .button a {
  margin-inline: auto;
}

.component.type_iframe {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .component.type_iframe {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.component.type_iframe .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .component.type_iframe .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.component.type_iframe .inner iframe {
  max-width: 100%;
}

.navigation.breadcrumbs, .breadcrumbs.component.type_pagelist {
  display: none;
  background-color: var(--color-surface);
}
@media print, screen and (min-width: 768px) {
  .navigation.breadcrumbs, .breadcrumbs.component.type_pagelist {
    display: block;
    margin-top: min(130px, calc(130 / 1440 * 100vw));
  }
}
.navigation.breadcrumbs .inner, .breadcrumbs.component.type_pagelist .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.breadcrumbs .inner, .breadcrumbs.component.type_pagelist .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .navigation.breadcrumbs .inner, .breadcrumbs.component.type_pagelist .inner {
    padding-block: min(12px, calc(12 / 1440 * 100vw));
  }
}
.navigation.breadcrumbs .inner ul, .breadcrumbs.component.type_pagelist .inner ul {
  display: flex;
  flex-wrap: wrap;
}
.navigation.breadcrumbs .inner ul li, .breadcrumbs.component.type_pagelist .inner ul li {
  color: var(--color-text-dark);
  position: relative;
  margin-right: calc(12 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 140%;
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: calc(12 / 375 * 100vw);
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .navigation.breadcrumbs .inner ul li, .breadcrumbs.component.type_pagelist .inner ul li {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    margin-right: min(12px, calc(12 / 1440 * 100vw));
    gap: min(12px, calc(12 / 1440 * 100vw));
  }
}
.navigation.breadcrumbs .inner ul li:after, .breadcrumbs.component.type_pagelist .inner ul li:after {
  content: "";
  display: block;
  width: min(6px, calc(6 / 1440 * 100vw));
  height: min(12px, calc(12 / 1440 * 100vw));
  -webkit-mask-image: url(/images/arrow_breadcrumb.svg);
  mask-image: url(/images/arrow_breadcrumb.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  background-color: var(--color-border-medium);
}
.navigation.breadcrumbs .inner ul li:last-child:after, .breadcrumbs.component.type_pagelist .inner ul li:last-child:after {
  content: none;
}
.navigation.breadcrumbs .inner ul li a, .breadcrumbs.component.type_pagelist .inner ul li a {
  color: var(--color-text-dark);
  font-weight: 500;
}
@media (any-hover: hover) {
  .navigation.breadcrumbs .inner ul li a:hover, .breadcrumbs.component.type_pagelist .inner ul li a:hover {
    color: var(--color-text-medium);
  }
}

.navigation.pagenate, .pagenate.component.type_pagelist {
  margin-top: calc(28 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate, .pagenate.component.type_pagelist {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
  }
}
.m_newslist + .navigation.pagenate .inner, .m_newslist + .pagenate.component.type_pagelist .inner {
  padding-top: unset;
  border-top: none;
}
.navigation.pagenate .inner, .pagenate.component.type_pagelist .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate .inner, .pagenate.component.type_pagelist .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.navigation.pagenate .inner a, .pagenate.component.type_pagelist .inner a, .navigation.pagenate .inner span, .pagenate.component.type_pagelist .inner span {
  text-align: center;
  display: block grid;
  align-items: center;
  justify-content: center;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  transition: background-color var(--transition-speed-fast) var(--bezier);
  min-width: calc(28 / 375 * 100vw);
  height: calc(28 / 375 * 100vw);
  padding-inline: calc(4 / 375 * 100vw);
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  font-family: var(--num);
  border: 1px solid var(--color-surface);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate .inner a, .pagenate.component.type_pagelist .inner a, .navigation.pagenate .inner span, .pagenate.component.type_pagelist .inner span {
    min-width: min(40px, calc(40 / 1440 * 100vw));
    height: min(40px, calc(40 / 1440 * 100vw));
    padding-inline: min(4px, calc(4 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .navigation.pagenate .inner a:hover, .pagenate.component.type_pagelist .inner a:hover, .navigation.pagenate .inner span:hover, .pagenate.component.type_pagelist .inner span:hover {
    background-color: var(--color-brand-tertiary);
  }
}
.navigation.pagenate .inner a img, .pagenate.component.type_pagelist .inner a img, .navigation.pagenate .inner span img, .pagenate.component.type_pagelist .inner span img {
  width: calc(6 / 375 * 100vw);
  vertical-align: middle;
  translate: 0 calc(-1 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate .inner a img, .pagenate.component.type_pagelist .inner a img, .navigation.pagenate .inner span img, .pagenate.component.type_pagelist .inner span img {
    width: min(9px, calc(9 / 1440 * 100vw));
    translate: 0 0;
  }
}
.navigation.pagenate .inner a.current, .pagenate.component.type_pagelist .inner a.current, .navigation.pagenate .inner a.current_page, .pagenate.component.type_pagelist .inner a.current_page, .navigation.pagenate .inner span.current, .pagenate.component.type_pagelist .inner span.current, .navigation.pagenate .inner span.current_page, .pagenate.component.type_pagelist .inner span.current_page {
  background-color: var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
}
.navigation.pagenate .inner a.previouspostslink, .pagenate.component.type_pagelist .inner a.previouspostslink, .navigation.pagenate .inner a.nextpostslink, .pagenate.component.type_pagelist .inner a.nextpostslink, .navigation.pagenate .inner a.link_before, .pagenate.component.type_pagelist .inner a.link_before, .navigation.pagenate .inner a.link_next, .pagenate.component.type_pagelist .inner a.link_next, .navigation.pagenate .inner span.previouspostslink, .pagenate.component.type_pagelist .inner span.previouspostslink, .navigation.pagenate .inner span.nextpostslink, .pagenate.component.type_pagelist .inner span.nextpostslink, .navigation.pagenate .inner span.link_before, .pagenate.component.type_pagelist .inner span.link_before, .navigation.pagenate .inner span.link_next, .pagenate.component.type_pagelist .inner span.link_next {
  background-color: var(--color-surface);
}
@media (any-hover: hover) {
  .navigation.pagenate .inner a.previouspostslink:hover, .pagenate.component.type_pagelist .inner a.previouspostslink:hover, .navigation.pagenate .inner a.nextpostslink:hover, .pagenate.component.type_pagelist .inner a.nextpostslink:hover, .navigation.pagenate .inner a.link_before:hover, .pagenate.component.type_pagelist .inner a.link_before:hover, .navigation.pagenate .inner a.link_next:hover, .pagenate.component.type_pagelist .inner a.link_next:hover, .navigation.pagenate .inner span.previouspostslink:hover, .pagenate.component.type_pagelist .inner span.previouspostslink:hover, .navigation.pagenate .inner span.nextpostslink:hover, .pagenate.component.type_pagelist .inner span.nextpostslink:hover, .navigation.pagenate .inner span.link_before:hover, .pagenate.component.type_pagelist .inner span.link_before:hover, .navigation.pagenate .inner span.link_next:hover, .pagenate.component.type_pagelist .inner span.link_next:hover {
    background-color: var(--color-brand-tertiary);
  }
}
.navigation.pagenate .inner a.previouspostslink img, .pagenate.component.type_pagelist .inner a.previouspostslink img, .navigation.pagenate .inner a.link_before img, .pagenate.component.type_pagelist .inner a.link_before img, .navigation.pagenate .inner span.previouspostslink img, .pagenate.component.type_pagelist .inner span.previouspostslink img, .navigation.pagenate .inner span.link_before img, .pagenate.component.type_pagelist .inner span.link_before img {
  transform: scale(-1, 1);
}
.navigation.pagenate .inner .wp-pagenavi, .pagenate.component.type_pagelist .inner .wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.navigation.pagenate .inner .wp-pagenavi a, .pagenate.component.type_pagelist .inner .wp-pagenavi a, .navigation.pagenate .inner .wp-pagenavi span, .pagenate.component.type_pagelist .inner .wp-pagenavi span {
  margin: 0 calc(4 / 375 * 100vw) calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate .inner .wp-pagenavi a, .pagenate.component.type_pagelist .inner .wp-pagenavi a, .navigation.pagenate .inner .wp-pagenavi span, .pagenate.component.type_pagelist .inner .wp-pagenavi span {
    margin: 0 calc(4 / 375 * 100vw) calc(16 / 375 * 100vw);
  }
}
.navigation.pagenate .inner ul, .pagenate.component.type_pagelist .inner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate .inner ul, .pagenate.component.type_pagelist .inner ul {
    gap: min(12px, calc(12 / 1440 * 100vw));
  }
}

.navigation.pagenate_detail, .pagenate_detail.component.type_pagelist {
  padding-block: calc(56 / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail, .pagenate_detail.component.type_pagelist {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail, .pagenate_detail.component.type_pagelist {
    padding-block: min(64px, calc(64 / 1440 * 100vw));
  }
}
.navigation.pagenate_detail .inner, .pagenate_detail.component.type_pagelist .inner {
  position: relative;
  display: grid;
  justify-items: center;
  grid-template: "prev back next" auto/1fr auto 1fr;
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner, .pagenate_detail.component.type_pagelist .inner {
    grid-template: "prev back next" auto/auto auto auto;
    justify-content: space-between;
  }
}
.navigation.pagenate_detail .inner span, .pagenate_detail.component.type_pagelist .inner span {
  display: inline-block;
}
.navigation.pagenate_detail .inner span.next a, .pagenate_detail.component.type_pagelist .inner span.next a, .navigation.pagenate_detail .inner span.prev a, .pagenate_detail.component.type_pagelist .inner span.prev a {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
  height: calc(40 / 375 * 100vw);
  min-width: auto;
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  padding-inline: calc(16 / 375 * 100vw);
  background-color: var(--color-surface);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.next a, .pagenate_detail.component.type_pagelist .inner span.next a, .navigation.pagenate_detail .inner span.prev a, .pagenate_detail.component.type_pagelist .inner span.prev a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.navigation.pagenate_detail .inner span.next a.reverse, .pagenate_detail.component.type_pagelist .inner span.next a.reverse, .navigation.pagenate_detail .inner span.prev a.reverse, .pagenate_detail.component.type_pagelist .inner span.prev a.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.navigation.pagenate_detail .inner span.next a.reverse::after, .pagenate_detail.component.type_pagelist .inner span.next a.reverse::after, .navigation.pagenate_detail .inner span.prev a.reverse::after, .pagenate_detail.component.type_pagelist .inner span.prev a.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .navigation.pagenate_detail .inner span.next a.reverse:hover, .pagenate_detail.component.type_pagelist .inner span.next a.reverse:hover, .navigation.pagenate_detail .inner span.prev a.reverse:hover, .pagenate_detail.component.type_pagelist .inner span.prev a.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.navigation.pagenate_detail .inner span.next a::before, .pagenate_detail.component.type_pagelist .inner span.next a::before, .navigation.pagenate_detail .inner span.prev a::before, .pagenate_detail.component.type_pagelist .inner span.prev a::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.next a::before, .pagenate_detail.component.type_pagelist .inner span.next a::before, .navigation.pagenate_detail .inner span.prev a::before, .pagenate_detail.component.type_pagelist .inner span.prev a::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.navigation.pagenate_detail .inner span.next a::after, .pagenate_detail.component.type_pagelist .inner span.next a::after, .navigation.pagenate_detail .inner span.prev a::after, .pagenate_detail.component.type_pagelist .inner span.prev a::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.next a::after, .pagenate_detail.component.type_pagelist .inner span.next a::after, .navigation.pagenate_detail .inner span.prev a::after, .pagenate_detail.component.type_pagelist .inner span.prev a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .navigation.pagenate_detail .inner span.next a:hover, .pagenate_detail.component.type_pagelist .inner span.next a:hover, .navigation.pagenate_detail .inner span.prev a:hover, .pagenate_detail.component.type_pagelist .inner span.prev a:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .navigation.pagenate_detail .inner span.next a:hover::after, .pagenate_detail.component.type_pagelist .inner span.next a:hover::after, .navigation.pagenate_detail .inner span.prev a:hover::after, .pagenate_detail.component.type_pagelist .inner span.prev a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .navigation.pagenate_detail .inner span.next a:hover::before, .pagenate_detail.component.type_pagelist .inner span.next a:hover::before, .navigation.pagenate_detail .inner span.prev a:hover::before, .pagenate_detail.component.type_pagelist .inner span.prev a:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.navigation.pagenate_detail .inner span.next a span, .pagenate_detail.component.type_pagelist .inner span.next a span, .navigation.pagenate_detail .inner span.prev a span, .pagenate_detail.component.type_pagelist .inner span.prev a span {
  position: relative;
  z-index: 2;
}
.navigation.pagenate_detail .inner span.next a::after, .pagenate_detail.component.type_pagelist .inner span.next a::after, .navigation.pagenate_detail .inner span.prev a::after, .pagenate_detail.component.type_pagelist .inner span.prev a::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .navigation.pagenate_detail .inner span.next a:hover, .pagenate_detail.component.type_pagelist .inner span.next a:hover, .navigation.pagenate_detail .inner span.prev a:hover, .pagenate_detail.component.type_pagelist .inner span.prev a:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.next a, .pagenate_detail.component.type_pagelist .inner span.next a, .navigation.pagenate_detail .inner span.prev a, .pagenate_detail.component.type_pagelist .inner span.prev a {
    height: auto;
    min-width: min(100px, calc(100 / 1440 * 100vw));
  }
}
.navigation.pagenate_detail .inner span.prev, .pagenate_detail.component.type_pagelist .inner span.prev {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: prev;
  margin-right: auto;
}
.navigation.pagenate_detail .inner span.prev a::before, .pagenate_detail.component.type_pagelist .inner span.prev a::before {
  background-color: var(--color-border-dark);
}
.navigation.pagenate_detail .inner span.prev a::after, .pagenate_detail.component.type_pagelist .inner span.prev a::after {
  width: calc(1 / 375 * 100vw);
  background-color: transparent;
}
.navigation.pagenate_detail .inner span.next, .pagenate_detail.component.type_pagelist .inner span.next {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: next;
  margin-left: auto;
}
.navigation.pagenate_detail .inner span.next a::before, .pagenate_detail.component.type_pagelist .inner span.next a::before {
  width: calc(1 / 375 * 100vw);
  background-color: transparent;
}
.navigation.pagenate_detail .inner span.next a::after, .pagenate_detail.component.type_pagelist .inner span.next a::after {
  background-color: var(--color-border-dark);
}
.navigation.pagenate_detail .inner span.back, .pagenate_detail.component.type_pagelist .inner span.back {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
  grid-area: back;
}
@media print, screen and (min-width: 768px){
  .navigation.pagenate_detail .inner span.prev, .pagenate_detail.component.type_pagelist .inner span.prev {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .navigation.pagenate_detail .inner span.next, .pagenate_detail.component.type_pagelist .inner span.next {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .navigation.pagenate_detail .inner span.back, .pagenate_detail.component.type_pagelist .inner span.back {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}
.navigation.pagenate_detail .inner span.back a, .pagenate_detail.component.type_pagelist .inner span.back a {
  display: grid;
  grid-template-areas: "before text after";
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
  width: fit-content;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(10 / 375 * 100vw);
  line-height: 170%;
  border-radius: calc(2 / 375 * 100vw);
  background-color: var(--color-bg-bg-dark);
  border: 1px solid var(--color-bg-bg-dark);
  color: var(--color-text-on-accent);
  font-weight: 700;
  align-items: center;
  overflow: hidden;
  text-decoration: none;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  text-align: center;
  text-decoration: none !important;
  min-width: calc(142 / 375 * 100vw);
  /*
  &[target="_blank"] {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    justify-content: center;
    gap: vw(4px);
    @include mq {
      gap: pc(4px);
      justify-content: start;
    }
    &::after {
      content: "";
      display: block;
      mask-size: contain;
      mask-repeat: no-repeat;
      mask-position: center;
      background-color: var(--color-text-on-accent);
      width: vw(14px);
      height: vw(14px);
      @include mq {
        width: pc(18px);
        height: pc(18px);
      }
    }
  }
    */
  height: calc(40 / 375 * 100vw);
  min-width: auto;
  font-size: calc(var(--fs-xs) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.back a, .pagenate_detail.component.type_pagelist .inner span.back a {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding: min(12px, calc(12 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(224px, calc(224 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.navigation.pagenate_detail .inner span.back a.reverse, .pagenate_detail.component.type_pagelist .inner span.back a.reverse {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  border: 1px solid var(--color-border-white);
}
.navigation.pagenate_detail .inner span.back a.reverse::after, .pagenate_detail.component.type_pagelist .inner span.back a.reverse::after {
  background-color: var(--color-border-dark);
}
@media (any-hover: hover) {
  .navigation.pagenate_detail .inner span.back a.reverse:hover, .pagenate_detail.component.type_pagelist .inner span.back a.reverse:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
}
.navigation.pagenate_detail .inner span.back a::before, .pagenate_detail.component.type_pagelist .inner span.back a::before {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: before;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: transparent;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
  rotate: z 180deg;
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.back a::before, .pagenate_detail.component.type_pagelist .inner span.back a::before {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
.navigation.pagenate_detail .inner span.back a::after, .pagenate_detail.component.type_pagelist .inner span.back a::after {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
  justify-self: end;
  grid-area: after;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-on-accent);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.back a::after, .pagenate_detail.component.type_pagelist .inner span.back a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .navigation.pagenate_detail .inner span.back a:hover, .pagenate_detail.component.type_pagelist .inner span.back a:hover {
    background-color: var(--color-bg-bg-corporate);
    border-color: var(--color-bg-bg-corporate);
  }
  .navigation.pagenate_detail .inner span.back a:hover::after, .pagenate_detail.component.type_pagelist .inner span.back a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
  .navigation.pagenate_detail .inner span.back a:hover::before, .pagenate_detail.component.type_pagelist .inner span.back a:hover::before {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.navigation.pagenate_detail .inner span.back a span, .pagenate_detail.component.type_pagelist .inner span.back a span {
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .navigation.pagenate_detail .inner span.back a, .pagenate_detail.component.type_pagelist .inner span.back a {
    height: auto;
  }
}
.navigation.pagenate_detail .inner span.back a::before, .pagenate_detail.component.type_pagelist .inner span.back a::before, .navigation.pagenate_detail .inner span.back a::after, .pagenate_detail.component.type_pagelist .inner span.back a::after {
  width: calc(1 / 375 * 100vw);
  background-color: transparent;
}

.navigation.localnav, .localnav.component.type_pagelist {
  background-color: var(--color-surface);
}
.navigation.localnav:has(li), .localnav.component.type_pagelist:has(li) {
  padding: calc(20 / 375 * 100vw) calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav:has(li), .localnav.component.type_pagelist:has(li) {
    padding: min(24px, calc(24 / 1440 * 100vw)) min(32px, calc(32 / 1440 * 100vw));
  }
}
.navigation.localnav .inner .overflow, .localnav.component.type_pagelist .inner .overflow {
  overflow: auto;
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav .inner .overflow, .localnav.component.type_pagelist .inner .overflow {
    overflow: visible;
    padding: unset;
  }
}
.navigation.localnav .inner .overflow ul, .localnav.component.type_pagelist .inner .overflow ul {
  display: flex;
  justify-content: flex-start;
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav .inner .overflow ul, .localnav.component.type_pagelist .inner .overflow ul {
    justify-content: center;
    flex-wrap: wrap;
  }
}
.navigation.localnav .inner .overflow ul li, .localnav.component.type_pagelist .inner .overflow ul li {
  font-size: var(--fs-xs);
  white-space: nowrap;
  border-left: 1px solid var(--color-brand-primary);
}
.navigation.localnav .inner .overflow ul li:last-child, .localnav.component.type_pagelist .inner .overflow ul li:last-child {
  border-right: 1px solid var(--color-brand-primary);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav .inner .overflow ul li, .localnav.component.type_pagelist .inner .overflow ul li {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}
.navigation.localnav .inner .overflow ul li.active a, .localnav.component.type_pagelist .inner .overflow ul li.active a, .navigation.localnav .inner .overflow ul li.current_page_item a, .localnav.component.type_pagelist .inner .overflow ul li.current_page_item a {
  background-color: var(--color-bg-bg-light);
  font-weight: 700;
}
@media (any-hover: hover) {
  .navigation.localnav .inner .overflow ul li a:hover, .localnav.component.type_pagelist .inner .overflow ul li a:hover {
    background-color: var(--color-bg-bg-light);
  }
}
.navigation.localnav .inner .overflow ul li a, .localnav.component.type_pagelist .inner .overflow ul li a {
  display: block;
  position: relative;
  transition: color var(--transition-speed) var(--bezier), opacity var(--transition-speed) var(--bezier);
  padding: calc(6 / 375 * 100vw) calc(20 / 375 * 100vw);
  color: var(--color-text-medium);
  font-weight: 500;
  line-height: 170%;
  transition: background-color var(--transition-speed-fast) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav .inner .overflow ul li a, .localnav.component.type_pagelist .inner .overflow ul li a {
    padding: min(8px, calc(8 / 1440 * 100vw)) min(38px, calc(38 / 1440 * 100vw));
    min-width: min(220px, calc(220 / 1440 * 100vw));
    text-align: center;
  }
}

.navigation.localnav_sub, .localnav_sub.component.type_pagelist {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_sub, .localnav_sub.component.type_pagelist {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.navigation.archivenav + .navigation.localnav_sub, .archivenav.component.type_pagelist + .navigation.localnav_sub, .navigation.archivenav + .localnav_sub.component.type_pagelist, .archivenav.component.type_pagelist + .localnav_sub.component.type_pagelist {
  margin-top: calc(var(--margin-module) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.archivenav + .navigation.localnav_sub, .archivenav.component.type_pagelist + .navigation.localnav_sub, .navigation.archivenav + .localnav_sub.component.type_pagelist, .archivenav.component.type_pagelist + .localnav_sub.component.type_pagelist {
    margin-top: min(calc(var(--margin-module-pc) * 1px), calc(var(--margin-module-pc) / 1440 * 100vw));
  }
}
.navigation.localnav_sub .inner, .localnav_sub.component.type_pagelist .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_sub .inner, .localnav_sub.component.type_pagelist .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.navigation.localnav_sub .inner ul, .localnav_sub.component.type_pagelist .inner ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(8 / 375 * 100vw) calc(15 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_sub .inner ul, .localnav_sub.component.type_pagelist .inner ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: unset;
  }
}
.navigation.localnav_sub .inner ul li, .localnav_sub.component.type_pagelist .inner ul li {
  white-space: nowrap;
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_sub .inner ul li, .localnav_sub.component.type_pagelist .inner ul li {
    margin-right: min(12px, calc(12 / 1440 * 100vw));
    margin-bottom: min(12px, calc(12 / 1440 * 100vw));
  }
}
.navigation.localnav_sub .inner ul li.active a, .localnav_sub.component.type_pagelist .inner ul li.active a, .navigation.localnav_sub .inner ul li.current_page_item a, .localnav_sub.component.type_pagelist .inner ul li.current_page_item a {
  background-color: var(--color-brand-lightblue);
  color: var(--color-text-on-accent);
}
.navigation.localnav_sub .inner ul li a, .localnav_sub.component.type_pagelist .inner ul li a {
  display: block;
  background-color: var(--color-surface);
  border: 1px solid var(--color-brand-lightblue);
  color: var(--color-brand-lightblue);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  padding: calc(8 / 375 * 100vw) calc(16 / 375 * 100vw);
  text-decoration: none;
  font-weight: 700;
  line-height: 200%;
  border-radius: calc(2 / 375 * 100vw);
  text-align: center;
  transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_sub .inner ul li a, .localnav_sub.component.type_pagelist .inner ul li a {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    padding: min(4px, calc(4 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    min-width: min(160px, calc(160 / 1440 * 100vw));
    text-align: center;
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .navigation.localnav_sub .inner ul li a:hover, .localnav_sub.component.type_pagelist .inner ul li a:hover {
    background-color: var(--color-brand-lightblue);
    color: var(--color-text-on-accent);
  }
}

.navigation.localnav_bottom, .localnav_bottom.component.type_pagelist {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom, .localnav_bottom.component.type_pagelist {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom, .localnav_bottom.component.type_pagelist {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.navigation.localnav_bottom:not(:has(li)), .localnav_bottom.component.type_pagelist:not(:has(li)) {
  display: none;
}
.navigation.localnav_bottom .inner, .localnav_bottom.component.type_pagelist .inner {
  background-color: var(--color-surface);
  padding: calc(20 / 375 * 100vw) calc(16 / 375 * 100vw) calc(28 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom .inner, .localnav_bottom.component.type_pagelist .inner {
    padding: min(36px, calc(36 / 1440 * 100vw)) min(110px, calc(110 / 1440 * 100vw)) min(48px, calc(48 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.navigation.localnav_bottom .inner .title, .localnav_bottom.component.type_pagelist .inner .title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: calc(16 / 375 * 100vw);
  /*
  .all {
    display: none;
    font-size: var(--font-size-small);
    @include mq {
      position: absolute;
      right: 0;
      top: 15px;
    }
    a {
      position: relative;
      padding-left: 17px;
      &:before {
        @include pd;
      }
      &:before {
        @include pd;
        background: center / contain no-repeat var(--arrow-button);
        width: 16px;
        height: 16px;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
      }
    }
  }
  */
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom .inner .title, .localnav_bottom.component.type_pagelist .inner .title {
    padding-bottom: min(16px, calc(16 / 1440 * 100vw));
  }
}
.navigation.localnav_bottom .inner .title h2 a, .localnav_bottom.component.type_pagelist .inner .title h2 a {
  color: var(--color-text-medium);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 700;
  line-height: 160%;
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: calc(6 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom .inner .title h2 a, .localnav_bottom.component.type_pagelist .inner .title h2 a {
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
    gap: min(8px, calc(8 / 1440 * 100vw));
  }
}
.navigation.localnav_bottom .inner .title h2 a::after, .localnav_bottom.component.type_pagelist .inner .title h2 a::after {
  justify-self: end;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-medium);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom .inner .title h2 a::after, .localnav_bottom.component.type_pagelist .inner .title h2 a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .navigation.localnav_bottom .inner .title h2 a:hover::after, .localnav_bottom.component.type_pagelist .inner .title h2 a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.navigation.localnav_bottom .inner ul, .localnav_bottom.component.type_pagelist .inner ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  gap: calc(12 / 375 * 100vw) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom .inner ul, .localnav_bottom.component.type_pagelist .inner ul {
    grid-template-columns: repeat(3, 1fr);
    gap: min(12px, calc(12 / 1440 * 100vw)) min(13px, calc(13 / 1440 * 100vw));
  }
}
.navigation.localnav_bottom .inner ul li a, .localnav_bottom.component.type_pagelist .inner ul li a {
  border-bottom: 1px solid var(--color-border-medium);
  padding-bottom: calc(4 / 375 * 100vw);
  color: var(--color-text-medium);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 500;
  line-height: 160%;
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: calc(6 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom .inner ul li a, .localnav_bottom.component.type_pagelist .inner ul li a {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    gap: min(6px, calc(6 / 1440 * 100vw));
    line-height: 170%;
    padding-bottom: min(4px, calc(4 / 1440 * 100vw));
  }
}
.navigation.localnav_bottom .inner ul li a::after, .localnav_bottom.component.type_pagelist .inner ul li a::after {
  justify-self: end;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(10 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-text-medium);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(10 / 375 * 100vw);
  mask-size: auto calc(10 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .navigation.localnav_bottom .inner ul li a::after, .localnav_bottom.component.type_pagelist .inner ul li a::after {
    width: min(10px, calc(10 / 1440 * 100vw));
    -webkit-mask-size: auto min(10px, calc(10 / 1440 * 100vw));
    mask-size: auto min(10px, calc(10 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .navigation.localnav_bottom .inner ul li a:hover::after, .localnav_bottom.component.type_pagelist .inner ul li a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}

.navigation.archivenav, .archivenav.component.type_pagelist {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.archivenav, .archivenav.component.type_pagelist {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.navigation.archivenav .inner, .archivenav.component.type_pagelist .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.archivenav .inner, .archivenav.component.type_pagelist .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.navigation.archivenav .inner .overflow, .archivenav.component.type_pagelist .inner .overflow {
  overflow: auto;
  padding: 0 0 calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.archivenav .inner .overflow, .archivenav.component.type_pagelist .inner .overflow {
    overflow: visible;
    padding: unset;
  }
}
.navigation.archivenav .inner .overflow ul, .archivenav.component.type_pagelist .inner .overflow ul {
  display: flex;
  justify-content: flex-start;
  border-bottom: 2px solid var(--color-border-dark);
}
@media print, screen and (min-width: 768px) {
  .navigation.archivenav .inner .overflow ul, .archivenav.component.type_pagelist .inner .overflow ul {
    flex-wrap: wrap;
    border-bottom-width: 3px;
  }
}
.navigation.archivenav .inner .overflow ul li, .archivenav.component.type_pagelist .inner .overflow ul li {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  white-space: nowrap;
  margin-left: calc(6 / 375 * 100vw);
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .navigation.archivenav .inner .overflow ul li, .archivenav.component.type_pagelist .inner .overflow ul li {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    margin-left: min(8px, calc(8 / 1440 * 100vw));
  }
}
.navigation.archivenav .inner .overflow ul li:first-child, .archivenav.component.type_pagelist .inner .overflow ul li:first-child {
  margin-left: unset;
}
.navigation.archivenav .inner .overflow ul li.active, .archivenav.component.type_pagelist .inner .overflow ul li.active, .navigation.archivenav .inner .overflow ul li.current_page_item, .archivenav.component.type_pagelist .inner .overflow ul li.current_page_item {
  z-index: 2;
}
.navigation.archivenav .inner .overflow ul li.active a, .archivenav.component.type_pagelist .inner .overflow ul li.active a, .navigation.archivenav .inner .overflow ul li.current_page_item a, .archivenav.component.type_pagelist .inner .overflow ul li.current_page_item a {
  color: var(--color-text-on-accent);
  background-color: var(--color-bg-bg-dark);
}
.navigation.archivenav .inner .overflow ul li a, .archivenav.component.type_pagelist .inner .overflow ul li a {
  display: block;
  position: relative;
  background-color: var(--color-surface);
  padding: calc(4 / 375 * 100vw) calc(24 / 375 * 100vw);
  color: var(--color-text-medium);
  font-family: var(--num);
  transition: color var(--transition-speed-fast) var(--bezier), background-color var(--transition-speed-fast) var(--bezier);
  line-height: 180%;
  border-radius: calc(2 / 375 * 100vw) calc(2 / 375 * 100vw) 0 0;
}
@media print, screen and (min-width: 768px) {
  .navigation.archivenav .inner .overflow ul li a, .archivenav.component.type_pagelist .inner .overflow ul li a {
    padding: min(8px, calc(8 / 1440 * 100vw)) min(60px, calc(60 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) 0 0;
  }
}
@media (any-hover: hover) {
  .navigation.archivenav .inner .overflow ul li a:hover, .archivenav.component.type_pagelist .inner .overflow ul li a:hover {
    color: var(--color-text-on-accent);
    background-color: var(--color-bg-bg-dark);
  }
}

.pNewsSet {
  padding-block: calc(16 / 375 * 100vw);
  padding-inline: calc(16 / 375 * 100vw) calc(40 / 375 * 100vw);
  display: grid;
  grid-template: "date cat" auto "title title" auto/auto 1fr;
  -moz-column-gap: calc(8 / 375 * 100vw);
  column-gap: calc(8 / 375 * 100vw);
  row-gap: calc(8 / 375 * 100vw);
  border-top: 1px solid #EAEEF7;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .pNewsSet {
    grid-template: "date cat title" auto/auto auto 1fr;
    -moz-column-gap: min(12px, calc(12 / 1440 * 100vw));
    column-gap: min(12px, calc(12 / 1440 * 100vw));
    row-gap: 0;
    align-items: start;
    padding-block: min(20px, calc(20 / 1440 * 100vw));
    padding-inline: min(16px, calc(16 / 1440 * 100vw)) min(40px, calc(40 / 1440 * 100vw));
  }
}
.pNewsSet::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(14 / 375 * 100vw);
  height: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  background-color: var(--color-brand-primary);
  right: calc(16 / 375 * 100vw);
  top: 50%;
  translate: 0 -50%;
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .pNewsSet::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    height: min(14px, calc(14 / 1440 * 100vw));
    right: min(16px, calc(16 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .pNewsSet:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.pNewsSet .date {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: date;
  align-self: center;
}
@media print, screen and (min-width: 768px) {
  .pNewsSet .date {
    align-self: start;
  }
}
.pNewsSet .date .pNewsDate {
  display: inline-block;
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  font-family: var(--num);
  padding-block: calc(4 / 375 * 100vw);
  line-height: 145%;
}
@media print, screen and (min-width: 768px) {
  .pNewsSet .date .pNewsDate {
    padding-block: min(4px, calc(4 / 1440 * 100vw));
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  }
}
.pNewsSet .cat {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: cat;
}
.pNewsSet .cat .pNewsCategory {
  display: inline-block;
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  padding: calc(4 / 375 * 100vw) calc(8 / 375 * 100vw);
  border-radius: calc(2 / 375 * 100vw);
  background: var(--color-brand-lightblue);
  color: var(--color-text-on-accent);
  font-weight: 500;
  line-height: 145%;
  min-width: calc(104 / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .pNewsSet .cat .pNewsCategory {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    padding: min(4px, calc(4 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw));
    border-radius: min(2px, calc(2 / 1440 * 100vw));
    min-width: min(116px, calc(116 / 1440 * 100vw));
  }
}
.pNewsSet .title {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  position: relative;
  grid-area: title;
}
.pNewsSet .title .pNewsTitle {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 500;
  line-height: 166.667%;
}
@media print, screen and (min-width: 768px) {
  .pNewsSet .title .pNewsTitle {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    line-height: 177%;
    translate: 0 -1px;
  }
}
@media print, screen and (min-width: 768px) {
  .pNewsSet .title {
    flex: 1;
  }
}

.navigation.newslist, .newslist.component.type_pagelist {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.newslist, .newslist.component.type_pagelist {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.navigation.newslist .inner, .newslist.component.type_pagelist .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.newslist .inner, .newslist.component.type_pagelist .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.navigation.newslist .inner ul li, .newslist.component.type_pagelist .inner ul li {
  margin-top: calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.newslist .inner ul li, .newslist.component.type_pagelist .inner ul li {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
  }
}
.navigation.newslist .inner ul li a, .newslist.component.type_pagelist .inner ul li a {
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.newslist .inner ul li a, .newslist.component.type_pagelist .inner ul li a {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.navigation.newslist .inner ul li a .cat .pNewsCategory, .newslist.component.type_pagelist .inner ul li a .cat .pNewsCategory {
  background-color: var(--color-brand-tertiary);
  color: var(--color-text-medium);
}

.navigation.articlelist, .component.type_pagelist {
  margin-top: calc(var(--margin-section) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist, .component.type_pagelist {
    margin-top: min(calc(var(--margin-section-pc) * 1px), calc(var(--margin-section-pc) / 1440 * 100vw));
  }
}
.navigation.articlelist .inner, .component.type_pagelist .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner, .component.type_pagelist .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.navigation.articlelist .inner .list, .component.type_pagelist .inner .list {
  margin-top: var(--space-xxlarge);
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list, .component.type_pagelist .inner .list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(24px, calc(24 / 1440 * 100vw));
  }
}
.navigation.articlelist .inner .list .unit, .component.type_pagelist .inner .list .unit {
  margin-top: calc(16 / 375 * 100vw);
  background-color: var(--color-surface);
  padding: calc(12 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
  display: grid;
  grid-template: "image desc" auto "summary summary" auto/1fr 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit, .component.type_pagelist .inner .list .unit {
    margin-top: unset;
    gap: min(20px, calc(20 / 1440 * 100vw));
    padding: min(20px, calc(20 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    grid-template: "image desc" auto "summary summary" auto/min(240px, calc(240 / 1440 * 100vw)) 1fr;
    gap: min(20px, calc(20 / 1440 * 100vw)) min(14px, calc(14 / 1440 * 100vw));
  }
  .navigation.articlelist .inner .list .unit > .image, .component.type_pagelist .inner .list .unit > .image {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
}
.navigation.articlelist .inner .list .unit:first-child, .component.type_pagelist .inner .list .unit:first-child {
  margin-top: unset;
}
.navigation.articlelist .inner .list .unit .image, .component.type_pagelist .inner .list .unit .image {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-area: image;
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit .image, .component.type_pagelist .inner .list .unit .image {
    width: min(240px, calc(240 / 1440 * 100vw));
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .navigation.articlelist .inner .list .unit .image a, .component.type_pagelist .inner .list .unit .image a {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .navigation.articlelist .inner .list .unit .image a:hover, .component.type_pagelist .inner .list .unit .image a:hover {
    opacity: 0.7;
  }
}
.navigation.articlelist .inner .list .unit .image a img, .component.type_pagelist .inner .list .unit .image a img {
  aspect-ratio: 3/2;
  -o-object-fit: cover;
  object-fit: cover;
}
.navigation.articlelist .inner .list .unit .desc, .component.type_pagelist .inner .list .unit .desc {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
  grid-area: desc;
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit .desc, .component.type_pagelist .inner .list .unit .desc {
    margin-top: unset;
    flex: 1;
  }
}
.navigation.articlelist .inner .list .unit .desc .date, .component.type_pagelist .inner .list .unit .desc .date {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-family: var(--num);
  line-height: 160%;
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit .desc .date, .component.type_pagelist .inner .list .unit .desc .date {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  }
}
.navigation.articlelist .inner .list .unit .desc .cat, .component.type_pagelist .inner .list .unit .desc .cat {
  margin-top: calc(6 / 375 * 100vw);
  display: flex;
  flex-wrap: wrap;
  gap: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit .desc .cat, .component.type_pagelist .inner .list .unit .desc .cat {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    gap: min(4px, calc(4 / 1440 * 100vw));
  }
}
.navigation.articlelist .inner .list .unit .desc .cat a, .component.type_pagelist .inner .list .unit .desc .cat a {
  display: inline-block;
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  font-weight: 700;
  line-height: 150%;
  background-color: var(--color-brand-lightblue);
  padding: calc(4 / 375 * 100vw) calc(6 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
  color: var(--color-text-on-accent);
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit .desc .cat a, .component.type_pagelist .inner .list .unit .desc .cat a {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    line-height: 200%;
    padding: min(1px, calc(1 / 1440 * 100vw)) min(15px, calc(15 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
.navigation.articlelist .inner .list .unit .desc .title, .component.type_pagelist .inner .list .unit .desc .title {
  margin-top: calc(6 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 700;
  line-height: 160%;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit .desc .title, .component.type_pagelist .inner .list .unit .desc .title {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
  }
}
.navigation.articlelist .inner .list .unit .desc .title a, .component.type_pagelist .inner .list .unit .desc .title a {
  color: inherit;
  text-decoration: none;
}
.navigation.articlelist .inner .list .unit .summary, .component.type_pagelist .inner .list .unit .summary {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: summary;
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  line-height: 160%;
  font-weight: 500;
  color: var(--color-gray-dark);
}
@media print, screen and (min-width: 768px) {
  .navigation.articlelist .inner .list .unit .summary, .component.type_pagelist .inner .list .unit .summary {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    line-height: 160%;
  }
}

.navigation.maincatnav, .maincatnav.component.type_pagelist {
  border-top: 1px solid var(--border-sub);
}
.navigation.maincatnav .inner, .maincatnav.component.type_pagelist .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .navigation.maincatnav .inner, .maincatnav.component.type_pagelist .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.navigation.maincatnav .inner .overflow, .maincatnav.component.type_pagelist .inner .overflow {
  overflow: auto;
}
@media print, screen and (min-width: 768px) {
  .navigation.maincatnav .inner .overflow, .maincatnav.component.type_pagelist .inner .overflow {
    overflow: visible;
    padding: unset;
  }
}
.navigation.maincatnav .inner .overflow ul, .maincatnav.component.type_pagelist .inner .overflow ul {
  display: flex;
  justify-content: center;
}
.navigation.maincatnav .inner .overflow ul li, .maincatnav.component.type_pagelist .inner .overflow ul li {
  font-size: 1.5rem;
  white-space: nowrap;
  position: relative;
}
.navigation.maincatnav .inner .overflow ul li a, .maincatnav.component.type_pagelist .inner .overflow ul li a {
  display: block;
  position: relative;
  padding: var(--space-xlarge) var(--space-small);
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .navigation.maincatnav .inner .overflow ul li a:hover, .maincatnav.component.type_pagelist .inner .overflow ul li a:hover {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .navigation.maincatnav .inner .overflow ul li a:hover:hover, .maincatnav.component.type_pagelist .inner .overflow ul li a:hover:hover {
    opacity: 0.7;
  }
}

/* Slider */
.slick-slider {
  visibility: hidden;
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-slider.slick-initialized {
  visibility: visible;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: unset;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before {
  display: table;
  content: "";
}
.slick-track:after {
  display: table;
  content: "";
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

header + .static.slider {
  margin-top: var(--height-header);
}
@media print, screen and (min-width: 768px) {
  header + .static.slider {
    margin-top: calc(var(--height-header-pc) + 53px);
  }
}
.static.slider .unit {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column-reverse;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit {
    display: block;
    height: var(--height-slider-tablet);
  }
}
@media print, screen and (min-width: 1440px) {
  .static.slider .unit {
    height: var(--height-slider-pc);
    aspect-ratio: 2/1;
  }
}
.static.slider .unit > a {
  display: block;
  position: relative;
  z-index: 1;
}
.static.slider .unit .text {
  padding: var(--space-large) var(--space-large);
  background-color: rgba(75, 75, 75, 0.85);
  position: absolute;
  bottom: 0;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text {
    background-color: transparent;
    position: absolute;
    width: var(--width-slider-text);
    left: var(--padding-slider-pc);
    top: 50%;
    bottom: auto;
    transform: translateY(-50%);
    padding: unset;
    z-index: 10;
  }
}
.static.slider .unit .text.right {
  text-align: right;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text.right {
    left: auto;
    right: var(--padding-slider-pc);
  }
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text.right .button {
    text-align: right;
  }
}
.static.slider .unit .text.center {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text.center {
    text-align: center;
    width: var(--width-slider-text);
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text.center .button {
    text-align: center;
  }
}
.static.slider .unit .text .textinner {
  display: inline-block;
}
.static.slider .unit .text h1 {
  font-size: 2rem;
  line-height: var(--line-height-medium);
  color: var(--color-text-on-accent);
  font-family: var(--font-family-heading);
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text h1 {
    font-size: var(--font-size-xlarge);
  }
}
.static.slider .unit .text h1 + p {
  margin-top: var(--space-xsmall);
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text h1 + p {
    margin-top: var(--space-medium);
  }
}
.static.slider .unit .text p {
  font-size: var(--font-size-xsmall);
  line-height: var(--line-height-medium);
  color: var(--color-text-on-accent);
  margin: 0;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text p {
    font-size: var(--font-size-medium);
    line-height: var(--line-height-large);
  }
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text.black h1, .static.slider .unit .text.black p {
    color: var(--color-text);
  }
}
.static.slider .unit .text .button {
  margin: var(--space-small) 0 0;
  text-align: center;
  border: none;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text .button {
    margin-top: var(--space-large);
    text-align: left;
  }
}
.static.slider .unit .text .button a {
  background-color: var(--color-accent);
  font-size: var(--font-size-xsmall);
  color: var(--color-text-on-accent);
  display: inline-block;
  padding: var(--space-small) var(--space-large);
  position: relative;
  border-radius: var(--border-radius-xsmall);
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .text .button a {
    font-size: var(--font-size-small);
    padding: var(--space-medium) var(--space-xxlarge);
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .static.slider .unit .text .button a {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .static.slider .unit .text .button a:hover {
    opacity: 0.7;
  }
}
.static.slider .unit .bg {
  width: 100%;
  height: var(--height-slider);
  background-position: center;
  background-size: cover;
  transition: opacity var(--transition-speed-fast) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .bg {
    display: block;
    height: var(--height-slider-tablet);
  }
}
@media print, screen and (min-width: 1440px) {
  .static.slider .unit .bg {
    height: var(--height-slider-pc);
  }
}
.static.slider .unit.slick-active::before, .static.slider .unit.is-active-next::before {
  opacity: 0;
  z-index: 0;
}
.static.slider .unit .bg.pc {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .bg.pc {
    display: block;
  }
}
.static.slider .unit .bg.sp {
  display: block;
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit .bg.sp {
    display: none;
  }
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit.with_bg .text {
    width: var(--width-slider-text-box);
  }
}
@media print, screen and (min-width: 768px) {
  .static.slider .unit.with_bg .text .textinner {
    display: inline-block;
    background-color: rgba(75, 75, 75, 0.85);
    padding: var(--space-xlarge) var(--space-xlarge);
  }
}
.static.slider .slick-arrow {
  position: absolute;
  top: auto;
  bottom: var(--space-xlarge);
  left: var(--space-medium);
  z-index: 10;
  cursor: pointer;
}
@media print, screen and (min-width: 768px) {
  .static.slider .slick-arrow {
    display: block !important;
    top: 50%;
    bottom: auto;
    left: var(--space-xlarge);
    transform: translateY(-50%);
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .static.slider .slick-arrow {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .static.slider .slick-arrow:hover {
    opacity: 0.7;
  }
}
.static.slider .slick-arrow img {
  width: var(--width-slider-arrow);
  transform: rotate(180deg);
}
@media print, screen and (min-width: 768px) {
  .static.slider .slick-arrow img {
    width: var(--width-slider-arrow-pc);
  }
}
.static.slider .slick-arrow.slick-next {
  left: auto;
  right: var(--space-medium);
}
@media print, screen and (min-width: 768px) {
  .static.slider .slick-arrow.slick-next {
    left: auto;
    right: var(--space-xlarge);
  }
}
.static.slider .slick-arrow.slick-next img {
  transform: rotate(0deg);
}
.static.slider .slick-dots {
  margin: var(--space-large) 0 var(--space-xlarge);
  text-align: center;
}
.static.slider .slick-dots li {
  display: inline-block;
  width: auto;
  padding: unset;
  margin: 0 calc(2 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .static.slider .slick-dots li {
    margin: 0 min(4px, calc(4 / 1440 * 100vw));
  }
}
.static.slider .slick-dots li button {
  border: none;
  background-color: var(--bg-default);
  color: transparent;
  height: 6px;
  width: 6px;
  padding: unset;
  cursor: pointer;
  border-radius: var(--border-radius-circle);
}
.static.slider .slick-dots li.slick-active button {
  background-color: #707070;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: unset;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before {
  display: table;
  content: "";
}
.slick-track:after {
  display: table;
  content: "";
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.static.slider_typeB {
  position: relative;
  height: 474px;
  letter-spacing: 1px;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB {
    height: 684px;
  }
}
.static.slider_typeB:before {
  position: absolute;
  content: "";
  display: block;
  background-color: var(--color-surface-weaker);
  width: 40%;
  height: 220px;
  left: 0;
  bottom: 0;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB:before {
    width: 36%;
    height: 100%;
  }
}
.static.slider_typeB .unit {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column-reverse;
  height: 474px;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit {
    display: block;
    height: 684px;
  }
}
.static.slider_typeB .unit > a {
  display: block;
  position: relative;
  z-index: 1;
}
.static.slider_typeB .unit .text {
  position: absolute;
  bottom: 62px;
  width: 100%;
  z-index: 10;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit .text {
    bottom: 182px;
    left: 9%;
  }
}
.static.slider_typeB .unit .text .textinner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.static.slider_typeB .unit .text h1 {
  display: inline-block;
  background: var(--color-brand);
  padding: var(--space-small) var(--space-medium);
  font-family: var(--font-family-heading);
  font-size: var(--font-size-large);
  line-height: var(--line-height-medium);
  color: var(--color-text-on-accent);
  position: relative;
  overflow: hidden;
  margin-left: 20px;
  transform: translateY(20px);
  opacity: 0;
  transition: transform var(--transition-speed-slow) var(--bezier) 0.2s, opacity var(--transition-speed-slow) var(--bezier) 0.2s;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit .text h1 {
    padding: var(--space-medium) var(--space-xxxlarge);
    margin-left: 70px;
    font-size: var(--font-size-xxxlarge);
    color: var(--color-text-on-accent);
  }
}
.static.slider_typeB .unit .text h1:before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background-color: var(--color-surface-weaker);
  transition: transform var(--transition-speed-slow) var(--bezier) 0.8s;
  transform-origin: right;
}
.static.slider_typeB .unit .text p {
  background: var(--color-brand);
  padding: var(--space-xsmall) var(--space-medium);
  display: inline-block;
  color: var(--color-text-on-accent);
  font-size: var(--font-size-xsmall);
  line-height: var(--line-height-medium);
  font-family: var(--font-family-heading);
  margin-top: 4px;
  position: relative;
  transform: translateY(20px);
  opacity: 0;
  transition: transform var(--transition-speed-slow) var(--bezier) 0.4s, opacity var(--transition-speed-slow) var(--bezier) 0.4s;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit .text p {
    padding: var(--space-small) var(--space-xxxlarge);
    font-size: var(--font-size-medium);
    margin-top: 8px;
  }
}
.static.slider_typeB .unit .text p:before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background-color: var(--color-surface-weaker);
  transition: transform var(--transition-speed-slow) var(--bezier) var(--transition-speed-slow);
  transform-origin: right;
}
.static.slider_typeB .unit .text .button {
  text-align: center;
  border: none;
}
.static.slider_typeB .unit .text .button a {
  background-color: var(--color-surface);
  color: var(--color-text-weak);
  display: inline-block;
  font-size: var(--font-size-xsmall);
  padding: var(--space-xsmall) var(--space-large);
  position: relative;
  margin-left: 135px;
  opacity: 0;
  transition: color var(--transition-speed-fast) var(--bezier), opacity var(--transition-speed-slow) var(--bezier) var(--transition-speed-slow);
}
.static.slider_typeB .unit .text .button a:before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background-color: var(--color-surface-weaker);
  transition: transform var(--transition-speed-slow) var(--bezier) var(--transition-speed-slow);
  transform-origin: right;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit .text .button a {
    margin-left: 235px;
    padding: var(--space-medium) var(--space-xlarge);
    font-size: var(--font-size-medium);
  }
  .static.slider_typeB .unit .text .button a:hover {
    color: var(--color-brand);
  }
}
.static.slider_typeB .unit .bg {
  width: 87%;
  height: 433px;
  background-position: center;
  background-size: cover;
  transition: opacity 0.2s ease;
  position: absolute;
  right: 0;
  top: 0;
  background-color: var(--color-deep);
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit .bg {
    display: block;
    width: 81%;
    height: 548px;
  }
}
.static.slider_typeB .unit.slick-active::before, .static.slider_typeB .unit.is-active-next::before {
  opacity: 0;
  z-index: 0;
}
.static.slider_typeB .unit .bg.pc {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit .bg.pc {
    display: block;
  }
}
.static.slider_typeB .unit .bg.sp {
  display: block;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .unit .bg.sp {
    display: none;
  }
}
.static.slider_typeB .unit.slick-now.slick-active .text .textinner h1 {
  transform: translateY(0);
  opacity: 1;
}
.static.slider_typeB .unit.slick-now.slick-active .text .textinner h1:before {
  transform: scaleX(0);
}
.static.slider_typeB .unit.slick-now.slick-active .text .textinner p {
  transform: translateY(0);
  opacity: 1;
}
.static.slider_typeB .unit.slick-now.slick-active .text .textinner p:before {
  transform: scaleX(0);
}
.static.slider_typeB .unit.slick-now.slick-active .text .textinner .button a {
  opacity: 1;
}
.static.slider_typeB .unit.slick-now.slick-active .text .textinner .button a:before {
  transform: scaleX(0);
}
.static.slider_typeB .slick-arrow {
  position: absolute;
  top: auto;
  bottom: 0;
  right: 46px;
  z-index: 10;
  padding: 7px 18px;
  cursor: pointer;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .slick-arrow {
    display: block !important;
    bottom: 97px;
  }
}
@media print and (any-hover: hover), screen and (min-width: 768px) and (any-hover: hover) {
  .static.slider_typeB .slick-arrow {
    transition: opacity var(--transition-speed-fast) var(--bezier);
  }
  .static.slider_typeB .slick-arrow:hover {
    opacity: 0.7;
  }
}
.static.slider_typeB .slick-arrow img {
  width: 10px;
  transform: rotate(180deg);
}
.static.slider_typeB .slick-arrow.slick-next {
  left: auto;
  right: 0;
  border-left: 1px solid var(--color-border);
}
.static.slider_typeB .slick-arrow.slick-next img {
  transform: rotate(0deg);
}
.static.slider_typeB .slick-dots {
  display: none !important;
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .slick-dots {
    display: block !important;
    position: absolute;
    top: auto;
    bottom: 97px;
    right: 100px;
    text-align: center;
  }
  .static.slider_typeB .slick-dots li {
    display: inline-block;
    width: auto;
    padding: unset;
    margin: 0 calc(2 / 375 * 100vw);
  }
}
@media print, screen and (min-width: 768px) and (min-width: 768px) {
  .static.slider_typeB .slick-dots li {
    margin: 0 min(4px, calc(4 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .slick-dots li button {
    border: none;
    background-color: var(--bg-default);
    color: transparent;
    height: 3px;
    width: 20px;
    padding: unset;
    cursor: pointer;
    border-radius: var(--border-radius-circle);
  }
}
@media print, screen and (min-width: 768px) {
  .static.slider_typeB .slick-dots li.slick-active button {
    background-color: #707070;
  }
}

.static.icon_num {
  margin-top: var(--margin-top-medium);
  padding-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .static.icon_num {
    margin-top: var(--margin-top-large);
  }
}
.static.icon_num .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner {
    display: flex;
    justify-content: center;
    gap: 4%;
  }
}
.static.icon_num .inner .unit {
  text-align: center;
  margin-top: var(--space-large);
  border: 1px solid var(--color-border);
  padding: var(--space-small);
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit {
    margin-top: unset;
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: var(--space-large);
  }
}
.static.icon_num .inner .unit:first-of-type {
  margin-top: unset;
}
.static.icon_num .inner .unit h3 {
  font-size: var(--font-size-medium);
  line-height: var(--line-height-medium);
  font-weight: var(--font-weight-bold);
  border-bottom: 1px solid var(--color-border);
  padding-bottom: var(--space-small);
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit h3 {
    font-size: var(--font-size-large);
    padding-bottom: var(--space-medium);
  }
}
.static.icon_num .inner .unit .icon {
  margin-top: var(--space-large);
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit .icon .image {
    flex: 1;
  }
}
.static.icon_num .inner .unit .icon .image img {
  max-width: 150px;
  max-height: 150px;
}
.static.icon_num .inner .unit .icon .data {
  margin-top: var(--space-medium);
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit .icon .data {
    flex: 1;
  }
}
.static.icon_num .inner .unit .icon .data em {
  display: block;
  color: var(--color-brand);
  font-size: 7rem;
  margin: 0 var(--space-xxsmall);
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit .icon .data em {
    font-size: 6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit .icon .data em {
    font-size: 7.4rem;
  }
}
.static.icon_num .inner .unit .icon .data span {
  font-size: var(--font-size-large);
  display: block;
  transform: translateY(-5px);
  font-weight: var(--font-weight-heading);
  font-family: var(--font-family-heading);
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit .icon .data span {
    font-size: var(--font-size-xlarge);
  }
}
.static.icon_num .inner .unit .note {
  font-size: var(--font-size-xsmall);
  line-height: var(--line-height-medium);
  margin-top: var(--space-medium);
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  .static.icon_num .inner .unit .note {
    margin-top: var(--space-large);
    font-size: var(--font-size-small);
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

.static.image_link {
  margin-top: var(--margin-top-medium);
  padding-bottom: var(--space-large);
}
@media print, screen and (min-width: 768px) {
  .static.image_link {
    margin-top: var(--margin-top-large);
    padding-bottom: 0;
  }
}
.static.image_link .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.static.image_link .inner .unit {
  background-size: 90% auto;
  background-position: top left;
  background-repeat: no-repeat;
  padding: 150px 0 0 45px;
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit {
    background-size: 69% auto;
    padding: 0 0 0 61%;
    position: relative;
    min-height: 350px;
  }
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit {
    min-height: 505px;
  }
}
.static.image_link .inner .unit .box {
  background-color: var(--color-bg);
  border-left: 1px solid var(--color-deep);
  transform: translateY(var(--space-large));
  position: relative;
  padding: var(--space-large) 0 var(--space-xxsmall) var(--space-large);
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit .box {
    transform: translateY(0);
    position: absolute;
    right: 0;
    bottom: 0;
    width: 380px;
    padding: var(--space-xlarge) var(--space-small) var(--space-small) var(--space-xlarge);
  }
}
.static.image_link .inner .unit .box:before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background-color: var(--color-deep);
}
.static.image_link .inner .unit .box h3 {
  font-size: var(--font-size-large);
  line-height: var(--line-height-medium);
  font-weight: var(--font-weight-heading);
  font-family: var(--font-family-heading);
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit .box h3 {
    font-size: var(--font-size-xlarge);
  }
}
.static.image_link .inner .unit .box p {
  font-size: var(--font-size-xsmall);
  line-height: var(--line-height-medium);
  margin-top: var(--space-small);
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit .box p {
    margin-top: var(--space-medium);
    font-size: var(--font-size-small);
  }
}
.static.image_link .inner .unit .box ul {
  margin-top: var(--space-medium);
}
.static.image_link .inner .unit .box ul li {
  font-size: var(--font-size-xsmall);
  line-height: var(--line-height-medium);
  margin-top: var(--space-xsmall);
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit .box ul li {
    margin-top: var(--space-small);
    font-size: var(--font-size-small);
  }
}
.static.image_link .inner .unit .box ul li a {
  position: relative;
  display: block;
  padding-left: var(--space-medium);
  color: var(--color-brand);
  text-decoration: underline;
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit .box ul li a {
    padding-left: var(--space-large);
  }
  .static.image_link .inner .unit .box ul li a:hover {
    text-decoration: none;
  }
}
.static.image_link .inner .unit .box ul li a:before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  top: 7px;
  background: center/contain no-repeat var(--arrow-right);
  width: 8px;
  height: 8px;
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit .box ul li a:before {
    width: 12px;
    height: 12px;
    top: 5px;
  }
}
.static.image_link .inner .unit .box .link {
  margin-top: var(--space-medium);
  text-align: right;
}
@media print, screen and (min-width: 768px) {
  .static.image_link .inner .unit .box .link {
    margin-top: var(--space-large);
  }
}
.static.image_link .inner .unit .box .link a {
  text-align: center;
}

.static.heading_link {
  margin-top: var(--margin-top-medium);
}
@media print, screen and (min-width: 768px) {
  .static.heading_link {
    margin-top: var(--margin-top-large);
  }
}
@media print, screen and (min-width: 768px) {
  .static.heading_link.set2 .inner {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(1, auto);
    grid-gap: var(--gap-2col-col) var(--gap-2col-row);
  }
}
@media print, screen and (min-width: 768px) {
  .static.heading_link.set2 .inner .unit {
    flex: 1;
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 4;
    gap: 0;
  }
}
@media print, screen and (min-width: 768px) {
  .static.heading_link.set2 .inner .unit ul {
    -moz-column-count: 1;
    column-count: 1;
  }
}
.static.heading_link .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.static.heading_link .inner .unit + .unit {
  margin-top: var(--margin-top-medium);
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit + .unit {
    margin-top: unset;
  }
}
.static.heading_link .inner .unit h3 {
  font-size: var(--font-size-large);
  line-height: var(--line-height-medium);
  font-weight: var(--font-weight-heading);
  font-family: var(--font-family-heading);
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit h3 {
    font-size: var(--font-size-xlarge);
  }
}
.static.heading_link .inner .unit p {
  font-size: var(--font-size-xsmall);
  line-height: var(--line-height-medium);
  margin-top: var(--space-medium);
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit p {
    margin-top: var(--space-large);
    font-size: var(--font-size-small);
  }
}
.static.heading_link .inner .unit ul {
  margin-top: var(--space-medium);
  border-top: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  padding: var(--space-small) 0 var(--space-large);
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit ul {
    padding: var(--space-large) 0 var(--space-large);
    margin-top: var(--space-large);
    -moz-column-count: 3;
    column-count: 3;
    -moz-column-rule: solid 1px var(--color-border);
    column-rule: solid 1px var(--color-border);
    -moz-column-gap: 7%;
    column-gap: 7%;
  }
}
.static.heading_link .inner .unit ul li {
  font-size: var(--font-size-xsmall);
  margin-top: var(--space-small);
  line-height: var(--line-height-medium);
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit ul li {
    margin-top: var(--space-small);
    font-size: var(--font-size-small);
  }
}
.static.heading_link .inner .unit ul li a {
  position: relative;
  display: block;
  padding-left: var(--space-medium);
  color: var(--color-text);
  text-decoration: underline;
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit ul li a {
    padding-left: var(--space-large);
  }
  .static.heading_link .inner .unit ul li a:hover {
    text-decoration: none;
  }
}
.static.heading_link .inner .unit ul li a:before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  top: 7px;
  background: center/contain no-repeat var(--arrow-right);
  width: 8px;
  height: 8px;
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit ul li a:before {
    width: 12px;
    height: 12px;
    top: 5px;
  }
}
.static.heading_link .inner .unit .link {
  margin-top: var(--space-large);
  text-align: right;
}
@media print, screen and (min-width: 768px) {
  .static.heading_link .inner .unit .link {
    margin-top: var(--space-xlarge);
  }
}
.static.heading_link .inner .unit .link a {
  text-align: center;
}

.toppage #headerDefault:not(.is-active) {
  translate: 0 -110%;
}
.toppage.is-scroll #headerDefault {
  translate: 0 0;
}
.toppage.is-scroll #headerTop {
  translate: 0 -200%;
}
@media print, screen and (min-width: 768px) {
  .toppage.is-scroll #headerTop {
    translate: 0 max(-300px, calc(-300 / 1440 * 100vw));
  }
}
.toppage.is-scroll.is-down #headerDefault {
  translate: 0 -120%;
}
.toppage.fixed:has(#headerDefault.is-active) #headerTop {
  translate: 0 -150%;
}
@media print, screen and (min-width: 768px) {
  .toppage.fixed:has(#headerDefault.is-active) #headerTop {
    translate: 0 max(-92px, calc(-92 / 1440 * 100vw));
  }
}
.toppage #headerTop {
  display: block;
  background-color: transparent;
  border-bottom: 1px solid rgba(238, 240, 245, 0.4);
}
.toppage #headerTop .inner {
  justify-content: flex-end;
}
.toppage #headerTop .inner #logo {
  position: absolute;
  left: 0;
  top: 0;
}
@media print, screen and (min-width: 768px) {
  .toppage #headerTop .inner #logo {
    top: min(46px, calc(46 / 1440 * 100vw));
  }
}
.toppage #headerTop .inner #logo a {
  display: block;
  background-color: var(--color-bg-bg-corporate);
  padding: calc(14 / 375 * 100vw) calc(19 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .toppage #headerTop .inner #logo a {
    padding: min(24px, calc(24 / 1440 * 100vw)) min(31px, calc(31 / 1440 * 100vw));
  }
}
.toppage #headerTop .inner #logo a img {
  width: calc(73 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .toppage #headerTop .inner #logo a img {
    width: min(120px, calc(120 / 1440 * 100vw));
  }
}
.toppage #headerTop .inner .langPC ul li {
  color: var(--color-text-on-accent);
}
@media (any-hover: hover) {
  .toppage #headerTop .inner .langPC ul li a {
    transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  }
  .toppage #headerTop .inner .langPC ul li a:hover {
    color: var(--color-gray-light) !important;
  }
  .toppage #headerTop .inner .langPC ul li a[target=_blank]:hover::after {
    background-color: var(--color-gray-light);
  }
}
.toppage #headerTop .inner .gnavPC ul {
  border-left-color: var(--color-text-on-accent);
  border-right-color: var(--color-text-on-accent);
}
.toppage #headerTop .inner .gnavPC ul li a {
  color: var(--color-text-on-accent);
}
@media (any-hover: hover) {
  .toppage #headerTop .inner .gnavPC ul li a {
    transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  }
  .toppage #headerTop .inner .gnavPC ul li a:hover {
    color: var(--color-gray-light) !important;
  }
  .toppage #headerTop .inner .gnavPC ul li a[target=_blank]:hover::after {
    background-color: var(--color-gray-light);
  }
}
.toppage #headerTop .inner .contact a span {
  color: var(--color-text-on-accent);
}
@media (any-hover: hover) {
  .toppage #headerTop .inner .contact a span {
    transition: background-color var(--transition-speed-fast) var(--bezier), color var(--transition-speed-fast) var(--bezier), border var(--transition-speed-fast) var(--bezier);
  }
  .toppage #headerTop .inner .contact a span:hover {
    color: var(--color-gray-light) !important;
  }
  .toppage #headerTop .inner .contact a span[target=_blank]:hover::after {
    background-color: var(--color-gray-light);
  }
}
.toppage #headerTop .inner .menuButton {
  position: absolute;
  right: 0;
  top: calc(10 / 375 * 100vw);
  width: calc(48 / 375 * 100vw);
  height: calc(48 / 375 * 100vw);
  cursor: pointer;
  z-index: 1002;
}
@media print, screen and (min-width: 768px) {
  .toppage #headerTop .inner .menuButton {
    display: none;
  }
}
.toppage #headerTop .inner .menuButton span {
  background-color: var(--color-text-on-accent);
}
.toppage #headerTop .inner .menuButton.is-active span.middle, .toppage #headerTop .inner .menuButton.is-active span.back {
  background-color: var(--color-brand-primary);
}
.toppage #headerTop .inner .menuButton.is-active span.top, .toppage #headerTop .inner .menuButton.is-active span.bottom {
  background-color: transparent;
}

#topScene01 {
  position: relative;
}

#scene01Bar {
  display: none;
  position: absolute;
  inset: 0;
  z-index: 99;
  pointer-events: none;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  #scene01Bar {
    display: block;
    top: min(93px, calc(93 / 1440 * 100vw));
  }
}
#scene01Bar .bar {
  position: absolute;
  width: 3px;
  opacity: 0.4;
  height: 100%;
}
#scene01Bar .bar.left {
  left: min(120px, calc(120 / 1440 * 100vw));
}
#scene01Bar .bar.left::after {
  animation: scroll_arrow_left 5s ease infinite normal;
}
#scene01Bar .bar.right {
  right: min(120px, calc(120 / 1440 * 100vw));
}
#scene01Bar .bar.right::after {
  animation: scroll_arrow_right 5s ease infinite normal 2.5s;
}
#scene01Bar .bar::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--color-border-light);
  opacity: 0.4;
  width: 1px;
  height: 100%;
  left: 1px;
}
#scene01Bar .bar::after {
  content: "";
  position: absolute;
  background-color: var(--color-border-light);
  opacity: 0;
  width: 3px;
  height: min(240px, calc(240 / 1440 * 100vw));
  left: 0;
}
@keyframes scroll_arrow_left {
  0% {
    bottom: 0;
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  to {
    bottom: 100%;
    opacity: 0;
  }
}
@keyframes scroll_arrow_right {
  0% {
    bottom: 0;
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  to {
    bottom: 100%;
    opacity: 0;
  }
}

.circleObject {
  width: calc(357 / 375 * 100vw);
  aspect-ratio: 1/1;
  position: absolute;
  right: 0;
  top: calc(100 / 375 * 100vw);
  translate: calc(100 / 375 * 100vw) 0;
  z-index: 11;
  pointer-events: none;
}
@media print, screen and (min-width: 768px) {
  .circleObject {
    width: min(549px, calc(549 / 1440 * 100vw));
    top: min(210px, calc(210 / 1440 * 100vw));
    translate: min(200px, calc(200 / 1440 * 100vw)) 0;
  }
}
.circleObject.reverse {
  opacity: 0.4;
}
.circleObject.reverse .out {
  background-image: url(/images/circle_out_reverse.png);
}
.circleObject.reverse .middle {
  background-image: url(/images/circle_middle_reverse.png);
}
.circleObject.reverse .in {
  background-image: url(/images/circle_in_reverse.png);
}
.circleObject .out {
  position: absolute;
  inset: 0;
  background-image: url(/images/circle_out.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 100%;
  animation: circle_out 56s linear infinite;
}
@keyframes circle_out {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.circleObject .middle {
  position: absolute;
  inset: 0;
  background-image: url(/images/circle_middle.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 100%;
}
.circleObject .in {
  position: absolute;
  inset: 0;
  background-image: url(/images/circle_in.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 100%;
  animation: circle_in 30s linear infinite;
}
@keyframes circle_in {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-360deg);
  }
}

#topSlider {
  overflow: hidden;
  position: relative;
}
#topSlider .circleObject {
  right: 0;
  top: calc(100 / 375 * 100vw);
  translate: calc(100 / 375 * 100vw) 0;
}
@media print, screen and (min-width: 768px) {
  #topSlider .circleObject {
    top: min(210px, calc(210 / 1440 * 100vw));
    translate: min(200px, calc(200 / 1440 * 100vw)) 0;
  }
}
#topSlider .swiper-slide {
  height: 100svh;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  #topSlider .swiper-slide {
    place-items: center;
  }
}
#topSlider .swiper-slide .cover {
  position: absolute;
  inset: 0;
  background-color: #000000;
  z-index: 2;
  transition: opacity 1.6s ease-out;
  pointer-events: none;
}
#topSlider .swiper-slide .text {
  position: absolute;
  bottom: calc(24 / 375 * 100vw);
  width: 100%;
  z-index: 1;
  padding-inline: calc(36 / 375 * 100vw);
  color: var(--color-text-on-accent);
  font-weight: 700;
  clip-path: inset(0 100% 0 0);
  transition: clip-path 1s var(--bezier) 0.4s;
}
@media print, screen and (min-width: 768px) {
  #topSlider .swiper-slide .text {
    bottom: min(90px, calc(90 / 1440 * 100vw));
    width: min(calc(1120px * 1.333333), calc(1120 / 1440 * 100vw));
    margin-inline: auto;
    padding-inline: unset;
  }
}
#topSlider .swiper-slide .text h2 {
  font-size: calc(var(--fs-xxxxl) / 375 * 100vw);
  line-height: 175%;
  border-bottom: calc(3 / 375 * 100vw) solid var(--color-text-on-accent);
  padding-bottom: calc(16 / 375 * 100vw);
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width: 768px) {
  #topSlider .swiper-slide .text h2 {
    font-size: min(48px, calc(48 / 1440 * 100vw));
    border-bottom-width: min(3px, calc(3 / 1440 * 100vw));
    padding-bottom: min(6px, calc(6 / 1440 * 100vw));
  }
}
#topSlider .swiper-slide .text p {
  padding-top: calc(28 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 200%;
}
@media print, screen and (min-width: 768px) {
  #topSlider .swiper-slide .text p {
    font-size: min(18px, calc(18 / 1440 * 100vw));
    padding-top: min(36px, calc(36 / 1440 * 100vw));
  }
}
#topSlider .swiper-slide .bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  scale: 1.1;
  transition: scale 8s ease-out;
  z-index: 0;
}
#topSlider .swiper-slide .bg.pc {
  display: none;
}
@media print, screen and (min-width: 768px) {
  #topSlider .swiper-slide .bg.pc {
    display: block;
  }
}
@media print, screen and (min-width: 768px) {
  #topSlider .swiper-slide .bg.sp {
    display: none;
  }
}
#topSlider .swiper-slide.swiper-slide-active .cover {
  opacity: 0;
}
#topSlider .swiper-slide.swiper-slide-active .text {
  clip-path: inset(0 0 0 0);
}
#topSlider .swiper-slide.swiper-slide-active .bg {
  scale: 1;
}

#topIndicator {
  text-align: center;
  position: sticky;
  top: calc(100 / 375 * 100vw);
  padding-top: calc(42 / 375 * 100vw);
  z-index: 99;
}
@media print, screen and (min-width: 768px) {
  #topIndicator {
    top: 0;
    padding-top: 15vh;
  }
}
#topIndicator ul {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media print, screen and (min-width: 768px) {
  #topIndicator ul {
    width: min(calc(1120px * 1.333333), calc(1120 / 1440 * 100vw));
    margin-inline: auto;
    justify-content: flex-start;
    gap: min(8px, calc(8 / 1440 * 100vw));
    translate: min(5px, calc(5 / 1440 * 100vw)) 0;
  }
}
#topIndicator ul li {
  width: calc(12 / 375 * 100vw);
  height: calc(12 / 375 * 100vw);
  position: relative;
}
@media print, screen and (min-width: 768px) {
  #topIndicator ul li {
    width: min(16px, calc(16 / 1440 * 100vw));
    height: min(16px, calc(16 / 1440 * 100vw));
  }
}
#topIndicator ul li::after {
  content: "";
  display: block;
  width: calc(5 / 375 * 100vw);
  height: calc(5 / 375 * 100vw);
  background-color: var(--color-surface);
  border-radius: 50%;
  box-shadow: 0 2.036px 2.036px 0 rgba(0, 0, 0, 0.2);
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  transition: all var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  #topIndicator ul li::after {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.2);
  }
}
#topIndicator ul li.is-active::after {
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  border: 0.5px solid #C2E8FF;
  background-color: var(--color-brand-lightblue);
  z-index: 2;
  border-radius: 50%;
}
@media print, screen and (min-width: 768px) {
  #topIndicator ul li.is-active::after {
    width: min(16px, calc(16 / 1440 * 100vw));
    height: min(16px, calc(16 / 1440 * 100vw));
    border-width: 1px;
  }
}
#topIndicator ul li.is-active::before {
  content: "";
  display: block;
  width: calc(9 / 375 * 100vw);
  height: calc(9 / 375 * 100vw);
  background-color: #C2E8FF;
  box-shadow: 0 0 5px 0 rgb(255, 255, 255);
  z-index: 1;
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 50%;
  translate: -50% -50%;
}
@media print, screen and (min-width: 768px) {
  #topIndicator ul li.is-active::before {
    width: min(17px, calc(17 / 1440 * 100vw));
    height: min(17px, calc(17 / 1440 * 100vw));
    filter: blur(6px);
    box-shadow: unset;
  }
}

.topAboutBG {
  background-image: url(/images/top_about_bg.webp);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}
@media print, screen and (min-width: 768px) {
  .topAboutBG {
    background-image: url(/images/top_about_bg_pc.webp);
  }
}

#topAbout {
  padding-block: calc(20 / 375 * 100vw) calc(60 / 375 * 100vw);
  transition: opacity 1s var(--bezier);
}
#topAbout.is-hide {
  opacity: 0;
}
@media print, screen and (min-width: 768px) {
  #topAbout {
    width: min(calc(1120px * 1.333333), calc(1120 / 1440 * 100vw));
    margin-inline: auto;
    padding-block: min(20px, calc(20 / 1440 * 100vw)) min(160px, calc(160 / 1440 * 100vw));
    display: flex;
    align-items: flex-start;
    gap: min(40px, calc(40 / 1440 * 100vw));
  }
}
#topAbout .images {
  margin-top: calc(40 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topAbout .images {
    margin-top: unset;
    width: min(calc(600px * 1.333333), calc(600 / 1440 * 100vw));
  }
}
#topAbout .images .sp {
  overflow: hidden;
  display: flex;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  #topAbout .images .sp {
    display: none;
  }
}
#topAbout .images .sp img {
  width: auto;
  height: 100%;
  max-width: none;
  animation: infinity-scroll-left 30s infinite linear 0.5s both;
  height: calc(212 / 375 * 100vw);
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
#topAbout .images .pc {
  display: none;
}
@media print, screen and (min-width: 768px) {
  #topAbout .images .pc {
    display: block;
  }
}
#topAbout .images .pc li {
  margin-top: min(24px, calc(24 / 1440 * 100vw));
}
#topAbout .images .pc li:nth-child(1) {
  margin-top: unset;
}
#topAbout .images .pc li:nth-child(2) {
  text-align: right;
}
#topAbout .images .pc li:nth-child(2) img {
  width: min(290px, calc(290 / 1440 * 100vw));
}
#topAbout .images .pc li:nth-child(3) {
  margin-left: min(92px, calc(92 / 1440 * 100vw));
}
#topAbout .images .pc li:nth-child(3) img {
  width: min(470px, calc(470 / 1440 * 100vw));
}
#topAbout .images .pc li:nth-child(4) img {
  width: min(320px, calc(320 / 1440 * 100vw));
}

#topBusiness {
  padding-block: calc(80 / 375 * 100vw) calc(130 / 375 * 100vw);
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: opacity 1s var(--bezier);
}
#topBusiness.is-hide {
  opacity: 0;
}
@media print, screen and (min-width: 768px) {
  #topBusiness {
    padding-block: min(120px, calc(120 / 1440 * 100vw)) min(280px, calc(280 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner {
    width: min(calc(1120px * 1.333333), calc(1120 / 1440 * 100vw));
    margin-inline: auto;
    display: flex;
    align-items: flex-start;
    gap: min(40px, calc(40 / 1440 * 100vw));
  }
}
#topBusiness .inner .topText .circleObject {
  display: none;
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .topText .circleObject {
    display: block;
    position: absolute;
    top: min(1px, calc(1 / 1440 * 100vw));
    left: max(-500px, calc(-500 / 1440 * 100vw));
    z-index: 1;
  }
}
#topBusiness .inner .links {
  margin-top: calc(40 / 375 * 100vw);
  padding-inline: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links {
    padding-inline: unset;
    margin-top: unset;
    width: min(calc(600px * 1.333333), calc(600 / 1440 * 100vw));
  }
}
#topBusiness .inner .links .unit {
  display: block;
  margin-top: calc(20 / 375 * 100vw);
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit {
    margin-top: min(40px, calc(40 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
#topBusiness .inner .links .unit:first-child {
  margin-top: unset;
}
@media (any-hover: hover) {
  #topBusiness .inner .links .unit:hover .image img {
    scale: 1;
  }
  #topBusiness .inner .links .unit:hover .text::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
#topBusiness .inner .links .unit .image {
  overflow: hidden;
  border-radius: calc(4 / 375 * 100vw) calc(4 / 375 * 100vw) 0 0;
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit .image {
    border-radius: min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) 0 0;
  }
}
#topBusiness .inner .links .unit .image img {
  width: 100%;
  aspect-ratio: 3/2;
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit .image img {
    transition: scale var(--transition-speed) var(--bezier);
    scale: 1.05;
  }
}
#topBusiness .inner .links .unit .text {
  padding: calc(10 / 375 * 100vw) calc(34 / 375 * 100vw) calc(10 / 375 * 100vw) calc(12 / 375 * 100vw);
  position: relative;
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit .text {
    padding: min(20px, calc(20 / 1440 * 100vw)) min(46px, calc(46 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw));
  }
}
#topBusiness .inner .links .unit .text::after {
  content: "";
  display: block;
  position: absolute;
  width: calc(14 / 375 * 100vw);
  height: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  background-color: var(--color-brand-primary);
  right: calc(12 / 375 * 100vw);
  top: 50%;
  translate: 0 -50%;
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit .text::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    height: min(14px, calc(14 / 1440 * 100vw));
    right: min(20px, calc(20 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
#topBusiness .inner .links .unit .text .cat {
  display: flex;
  flex-wrap: wrap;
  gap: calc(12 / 375 * 100vw);
  margin-bottom: calc(6 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit .text .cat {
    gap: min(12px, calc(12 / 1440 * 100vw));
    margin-bottom: min(12px, calc(12 / 1440 * 100vw));
  }
}
#topBusiness .inner .links .unit .text .cat li {
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  line-height: 145%;
  padding: calc(4 / 375 * 100vw) calc(6 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  color: var(--color-text-on-accent);
  border-radius: calc(4 / 375 * 100vw);
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit .text .cat li {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    padding: min(4px, calc(4 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
#topBusiness .inner .links .unit .text h2 {
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 700;
  line-height: 166%;
}
@media print, screen and (min-width: 768px) {
  #topBusiness .inner .links .unit .text h2 {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}

#topProducts {
  margin-top: calc(-70 / 375 * 100vw);
  padding-block: calc(80 / 375 * 100vw) calc(95 / 375 * 100vw);
  background-color: #EEF0F5;
  filter: drop-shadow(0 -8px 12px rgba(0, 0, 0, 0.1));
  position: relative;
}
@media print, screen and (min-width: 768px) {
  #topProducts {
    padding-block: min(180px, calc(180 / 1440 * 100vw)) min(160px, calc(160 / 1440 * 100vw));
    margin-top: min(-166px, calc(-166 / 1440 * 100vw));
    background-image: url(/images/top_products_bg.png);
    background-size: contain;
    background-position: top center;
    background-repeat: no-repeat;
  }
}
@media print, screen and (min-width: 768px) {
  #topProducts::before, #topProducts::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #91ABE0;
    width: 1px;
    height: 100%;
    left: min(121px, calc(121 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  #topProducts::after {
    left: auto;
    right: min(121px, calc(121 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  #topProducts .head {
    width: min(calc(1120px * 1.333333), calc(1120 / 1440 * 100vw));
    margin-inline: auto;
    display: flex;
    align-items: flex-start;
    gap: min(40px, calc(40 / 1440 * 100vw));
  }
}
#topProducts .head .topText {
  color: var(--color-text-dark);
}
#topProducts .head .images {
  margin-top: calc(40 / 375 * 100vw);
  padding-inline: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topProducts .head .images {
    padding-inline: unset;
    margin-top: unset;
    width: min(calc(600px * 1.333333), calc(600 / 1440 * 100vw));
  }
}
#topProducts .elevator {
  margin-top: calc(110 / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
  background-image: url(/images/top_elevator_bg.webp);
  background-size: auto calc(188 / 375 * 100vw);
  background-repeat: no-repeat;
  background-position: right calc(-20 / 375 * 100vw) top;
}
@media print, screen and (min-width: 768px) {
  #topProducts .elevator {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  #topProducts .elevator {
    width: min(1120px, calc(1120 / 1440 * 100vw));
    margin-top: min(120px, calc(120 / 1440 * 100vw));
    padding-top: min(70px, calc(70 / 1440 * 100vw));
    background-size: min(543px, calc(543 / 1440 * 100vw)) auto;
    background-position: right min(56px, calc(56 / 1440 * 100vw));
    border-top: 1px solid var(--color-text-on-accent);
    min-height: min(520px, calc(520 / 1440 * 100vw));
  }
}
#topProducts .elevator .title {
  color: var(--color-text-on-accent);
  font-family: var(--en);
  font-size: calc(40 / 375 * 100vw);
  line-height: 120%;
  text-transform: uppercase;
}
@media print, screen and (min-width: 768px) {
  #topProducts .elevator .title {
    font-size: min(64px, calc(64 / 1440 * 100vw));
    line-height: 100%;
  }
  #topProducts .elevator .title br {
    display: none;
  }
}
#topProducts .elevator .text {
  margin-top: calc(24 / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  #topProducts .elevator .text {
    margin-top: min(60px, calc(60 / 1440 * 100vw));
    text-align: left;
    width: min(520px, calc(520 / 1440 * 100vw));
  }
}
#topProducts .elevator .text h3 {
  color: var(--color-text-medium);
  font-size: calc(var(--fs-xxl) / 375 * 100vw);
  font-weight: 700;
  line-height: 150%;
}
@media print, screen and (min-width: 768px) {
  #topProducts .elevator .text h3 {
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
  }
  #topProducts .elevator .text h3 br {
    display: none;
  }
}
#topProducts .elevator .text p {
  margin-top: calc(20 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 170%;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  #topProducts .elevator .text p {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    line-height: 177%;
  }
}
#topProducts .elevator .text .button {
  margin-top: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topProducts .elevator .text .button {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
  }
}
#topProducts .elevator .text .button .p_button {
  margin-inline: auto;
}
#topProducts .other {
  margin-top: calc(48 / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topProducts .other {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  #topProducts .other {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
    width: min(1120px, calc(1120 / 1440 * 100vw));
  }
}
#topProducts .other .title {
  color: var(--color-text-on-accent);
  font-family: var(--en);
  font-size: calc(48 / 375 * 100vw);
  text-align: center;
  text-transform: uppercase;
}
@media print, screen and (min-width: 768px) {
  #topProducts .other .title {
    font-size: min(64px, calc(64 / 1440 * 100vw));
    text-align: left;
  }
}
#topProducts .other .list {
  margin-top: calc(28 / 375 * 100vw);
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topProducts .other .list {
    margin-top: min(28px, calc(28 / 1440 * 100vw));
    grid-template-columns: repeat(3, 1fr);
    gap: min(28px, calc(28 / 1440 * 100vw));
  }
}
#topProducts .other .list .unit {
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  display: grid;
  grid-template: "title image" auto "button button" auto/1fr calc(200 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topProducts .other .list .unit {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    padding: min(28px, calc(28 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw)) min(36px, calc(36 / 1440 * 100vw));
    gap: min(20px, calc(20 / 1440 * 100vw));
    grid-template: "title" auto "image" auto "button" auto/1fr;
  }
  #topProducts .other .list .unit > .title {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
}
#topProducts .other .list .unit h3 {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  font-size: calc(24 / 375 * 100vw);
  text-align: center;
  color: var(--color-text-medium);
  font-weight: 700;
  font-size: calc(var(--fs-l) / 375 * 100vw);
  align-self: center;
  grid-area: title;
}
@media print, screen and (min-width: 768px) {
  #topProducts .other .list .unit h3 {
    font-size: min(24px, calc(24 / 1440 * 100vw));
  }
}
#topProducts .other .list .unit .image {
  grid-area: image;
}
#topProducts .other .list .unit .image img {
  border-top-right-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topProducts .other .list .unit .image img {
    border-radius: unset;
  }
}
#topProducts .other .list .unit .button {
  grid-area: button;
  padding-block: calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topProducts .other .list .unit .button {
    padding-block: min(16px, calc(16 / 1440 * 100vw)) 0;
  }
}
#topProducts .other .list .unit .button .p_button {
  margin-inline: auto;
}

.elevator-search {
  margin-top: calc(48 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .elevator-search {
    margin-top: unset;
  }
}
.elevator-search .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .elevator-search .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .elevator-search .inner {
    width: min(1120px, calc(1120 / 1440 * 100vw));
  }
}
.elevator-search .inner .product_search {
  padding-top: calc(14 / 375 * 100vw);
  padding-inline: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .elevator-search .inner .product_search {
    padding-top: min(20px, calc(20 / 1440 * 100vw));
    padding-inline: min(20px, calc(20 / 1440 * 100vw));
  }
}
.elevator-search .inner .product_search .radio-group {
  margin-top: unset;
}

.topText {
  color: var(--color-text-on-accent);
  text-align: center;
  padding-inline: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: text;
    text-align: left;
    padding-inline: unset;
    position: sticky;
    top: 22vh;
    flex: 1;
    z-index: 2;
  }
  .p_button.cv > .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .component .text .p_button > .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .component.type_catchcopy .inner .copy .button a > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .component.type_catchcopy .inner .button a > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .component.type_catchcopy_image .inner .text .button a > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .component.type_catchcopy_image_bg .inner .text .button a > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .component.type_conversion .inner .button a > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .component.type_panel .inner .unit .button a > .topText, .component.type_panel .inner .unit .button span > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .navigation.pagenate_detail .inner span.next a > .topText, .pagenate_detail.component.type_pagelist .inner span.next a > .topText, .navigation.pagenate_detail .inner span.prev a > .topText, .pagenate_detail.component.type_pagelist .inner span.prev a > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
  .navigation.pagenate_detail .inner span.back a > .topText, .pagenate_detail.component.type_pagelist .inner span.back a > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 768px) {
  .topText.static {
    position: static;
  }
}
.topText h1 {
  font-family: var(--en);
  font-size: calc(40 / 375 * 100vw);
  line-height: 160%;
  text-transform: uppercase;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .topText h1 {
    font-size: min(72px, calc(72 / 1440 * 100vw));
  }
}
.topText h1::after {
  content: "";
  display: block;
  width: calc(14 / 375 * 100vw);
  height: calc(12 / 375 * 100vw);
  background-image: url(/images/icon_down.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-inline: auto;
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .topText h1::after {
    width: min(24px, calc(24 / 1440 * 100vw));
    height: min(20px, calc(20 / 1440 * 100vw));
    margin-top: min(24px, calc(24 / 1440 * 100vw));
    margin-inline: unset;
  }
}
.topText h2 {
  margin-top: calc(16 / 375 * 100vw);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  line-height: 175%;
  font-weight: 700;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .topText h2 {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxl) * 1px), calc(var(--fs-xxl) / 1440 * 100vw));
  }
}
.topText .desc {
  margin-top: calc(16 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 170%;
  font-weight: 500;
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .topText .desc {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.topText .desc p {
  padding-bottom: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .topText .desc p {
    padding-bottom: min(16px, calc(16 / 1440 * 100vw));
  }
}
.topText .desc p:last-child {
  padding-bottom: unset;
}
.topText .desc p strong {
  font-weight: 700;
}
.topText .button {
  margin-top: calc(16 / 375 * 100vw);
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .topText .button {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
  }
}
.topText .button .p_button {
  margin-inline: auto;
}
@media print, screen and (min-width: 768px) {
  .topText .button .p_button {
    margin-inline: unset;
  }
}

#topCompany {
  padding-block: calc(48 / 375 * 100vw);
  background-image: url(/images/top_company_bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {
  #topCompany {
    padding-block: min(124px, calc(124 / 1440 * 100vw)) min(140px, calc(140 / 1440 * 100vw));
  }
}
#topCompany .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topCompany .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  #topCompany .inner {
    width: min(calc(1120px * 1.333333), calc(1120 / 1440 * 100vw));
    display: flex;
    align-items: flex-start;
    gap: min(40px, calc(40 / 1440 * 100vw));
  }
}
#topCompany .inner .links {
  margin-top: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topCompany .inner .links {
    margin-top: unset;
    width: min(calc(600px * 1.333333), calc(600 / 1440 * 100vw));
  }
}
#topCompany .inner .links .image img {
  border-radius: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topCompany .inner .links .image img {
    border-radius: min(calc(4px * 1.333333), calc(4 / 1440 * 100vw));
  }
}
#topCompany .inner .links ul li {
  margin-top: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topCompany .inner .links ul li {
    margin-top: min(20px, calc(20 / 1440 * 100vw));
  }
}
#topCompany .inner .links ul li a {
  display: block flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(12 / 375 * 100vw);
  background-color: var(--color-surface);
  padding: calc(18 / 375 * 100vw) calc(28 / 375 * 100vw);
  border-radius: calc(2 / 375 * 100vw);
  line-height: 170%;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 700;
  color: var(--color-brand-primary);
  border: 1px solid var(--color-bg-bg-white);
  transition: background-color var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  #topCompany .inner .links ul li a {
    padding: min(28px, calc(28 / 1440 * 100vw)) min(48px, calc(48 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    gap: min(12px, calc(12 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  #topCompany .inner .links ul li a:hover {
    background-color: var(--color-brand-tertiary);
    border-color: var(--color-border-white);
  }
  #topCompany .inner .links ul li a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
#topCompany .inner .links ul li a::after {
  content: "";
  display: block;
  width: calc(14 / 375 * 100vw);
  height: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center right;
  mask-position: center right;
  background-color: var(--color-brand-primary);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  #topCompany .inner .links ul li a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    height: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}

#topPartners {
  padding-block: calc(72 / 375 * 100vw);
  background-color: var(--color-surface);
}
@media print, screen and (min-width: 768px) {
  #topPartners {
    padding-block: min(80px, calc(80 / 1440 * 100vw)) min(100px, calc(100 / 1440 * 100vw));
  }
}
#topPartners .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topPartners .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  #topPartners .inner {
    width: min(1000px, calc(1000 / 1440 * 100vw));
  }
}
#topPartners .inner h1 {
  color: var(--color-text-medium);
  text-align: center;
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  font-weight: 700;
  line-height: 140%;
}
@media print, screen and (min-width: 768px) {
  #topPartners .inner h1 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
  }
}
#topPartners .inner ul {
  margin-top: calc(56 / 375 * 100vw);
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: calc(48 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topPartners .inner ul {
    margin-top: min(70px, calc(70 / 1440 * 100vw));
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
    gap: min(150px, calc(150 / 1440 * 100vw));
  }
}
#topPartners .inner ul li {
  text-align: center;
}
#topPartners .inner ul li img {
  width: calc(160 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topPartners .inner ul li img {
    width: min(237px, calc(237 / 1440 * 100vw));
  }
}

#topSponsors {
  padding-block: calc(48 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topSponsors {
    padding-block: min(84px, calc(84 / 1440 * 100vw)) min(96px, calc(96 / 1440 * 100vw));
  }
}
#topSponsors .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
#topSponsors .inner .unit {
  margin-top: calc(48 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit {
    margin-top: min(82px, calc(82 / 1440 * 100vw));
  }
}
#topSponsors .inner .unit:first-child {
  margin-top: unset;
}
#topSponsors .inner .unit h1 .en {
  font-family: var(--en);
  font-size: calc(40 / 375 * 100vw);
  line-height: 160%;
  text-transform: uppercase;
  text-align: center;
  display: block;
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit h1 .en {
    font-size: min(64px, calc(64 / 1440 * 100vw));
    text-align: left;
  }
}
#topSponsors .inner .unit h1 .ja {
  margin-top: calc(28 / 375 * 100vw);
  display: block;
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 700;
  line-height: 175%;
  display: grid;
  grid-template-columns: auto auto 1fr;
  align-items: center;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit h1 .ja {
    margin-top: min(38px, calc(38 / 1440 * 100vw));
    gap: min(10px, calc(10 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
  }
}
#topSponsors .inner .unit h1 .ja::before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-bg-bg−lightblue);
  border-radius: 50%;
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit h1 .ja::before {
    width: min(13px, calc(13 / 1440 * 100vw));
    height: min(13px, calc(13 / 1440 * 100vw));
  }
}
#topSponsors .inner .unit h1 .ja::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: var(--color-brand-primary);
}
#topSponsors .inner .unit .block {
  margin-top: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit .block {
    margin-top: min(30px, calc(30 / 1440 * 100vw));
    display: grid;
    grid-template: "lead image" auto "text image" 1fr/1fr min(392px, calc(392 / 1440 * 100vw));
    gap: 0 min(48px, calc(48 / 1440 * 100vw));
  }
}
#topSponsors .inner .unit .block .lead {
  display: flex;
  padding-inline: calc(20 / 375 * 100vw);
  align-items: center;
  justify-content: center;
  background-color: var(--color-brand-primary);
  border-radius: calc(4 / 375 * 100vw);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 700;
  line-height: 175%;
  color: var(--color-text-on-accent);
  height: calc(128 / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit .block .lead {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxl) * 1px), calc(var(--fs-xxl) / 1440 * 100vw));
    padding-inline: min(36px, calc(36 / 1440 * 100vw));
    height: min(152px, calc(152 / 1440 * 100vw));
    grid-area: lead;
  }
}
#topSponsors .inner .unit .block .text {
  margin-top: calc(20 / 375 * 100vw);
  font-weight: 500;
  line-height: 170%;
  font-size: calc(var(--fs-s) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit .block .text {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    grid-area: text;
  }
}
#topSponsors .inner .unit .block .image {
  margin-top: calc(20 / 375 * 100vw);
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  padding: calc(16 / 375 * 100vw);
  min-height: calc(158 / 375 * 100vw);
  display: flex;
  align-items: center;
  justify-content: center;
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit .block .image {
    margin-top: unset;
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    height: min(392px, calc(392 / 1440 * 100vw));
    min-height: unset;
    padding: min(16px, calc(16 / 1440 * 100vw));
    grid-area: image;
  }
}
#topSponsors .inner .unit .block .image img {
  max-width: calc(292 / 375 * 100vw);
  max-height: calc(207 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topSponsors .inner .unit .block .image img {
    max-width: min(344px, calc(344 / 1440 * 100vw));
    max-height: min(344px, calc(344 / 1440 * 100vw));
  }
}

#topRecruit {
  background-image: url(/images/top_recruit.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-block: calc(64 / 375 * 100vw) calc(118 / 375 * 100vw);
  padding-inline: calc(26 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topRecruit {
    background-image: url(/images/top_recruit_pc.jpg);
    padding-block: min(128px, calc(128 / 1440 * 100vw)) 0;
    padding-inline: unset;
  }
}
#topRecruit .inner {
  position: relative;
  padding-bottom: calc(48 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topRecruit .inner {
    display: grid;
    grid-template: ". text text" auto/1fr min(80px, calc(80 / 1440 * 100vw)) 1fr;
    padding-bottom: unset;
  }
}
#topRecruit .inner::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(40 / 375 * 100vw);
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--color-bg-bg-dark);
  z-index: 1;
}
@media print, screen and (min-width: 768px) {
  #topRecruit .inner::before {
    content: none;
  }
}
#topRecruit .inner .topText {
  position: relative;
  z-index: 2;
  padding-inline: calc(30 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topRecruit .inner .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: text;
    padding-inline: min(87px, calc(87 / 1440 * 100vw)) 0;
    padding-bottom: min(60px, calc(60 / 1440 * 100vw));
    top: unset;
  }
  #topRecruit .inner .topText::before {
    content: "";
    display: block;
    position: absolute;
    background-color: var(--color-bg-bg-dark);
    top: min(40px, calc(40 / 1440 * 100vw));
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
  }
  #topRecruit .inner .topText > * {
    position: relative;
    z-index: 2;
  }
}
#topRecruit .inner .topText .pc {
  display: none;
}
@media print, screen and (min-width: 768px) {
  #topRecruit .inner .topText .pc {
    display: inline;
  }
}
@media print, screen and (min-width: 768px) {
  #topRecruit .inner .topText .desc {
    margin-top: min(20px, calc(20 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  #topRecruit .inner .topText .button .p_button {
    margin-inline: unset;
  }
}

#topNews {
  padding-block: calc(36 / 375 * 100vw);
  background-color: var(--color-surface);
}
@media print, screen and (min-width: 768px) {
  #topNews {
    padding-block: min(96px, calc(96 / 1440 * 100vw));
  }
}
#topNews + footer {
  margin-top: unset;
}
#topNews .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #topNews .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  #topNews .inner {
    display: grid;
    grid-template: "text list" auto/1fr min(870px, calc(870 / 1440 * 100vw));
  }
}
#topNews .inner .topText {
  position: static;
  color: var(--color-text-medium);
}
@media print, screen and (min-width: 768px) {
  #topNews .inner .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    grid-area: text;
  }
}
@media print, screen and (min-width: 768px){
  .component.type_extendedtitle .inner > .text {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .component.type_extendedtitle .inner .image {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
  }
  .component.type_catchcopy .inner .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .component.type_catchcopy .inner .copy {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .component.type_catchcopy .inner .copy .button {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .component.type_extendedtitle .inner > .text {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .component.type_catchcopy .inner > .text {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .navigation.articlelist .inner .list .unit .image, .component.type_pagelist .inner .list .unit .image {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
  }
  .navigation.articlelist .inner .list .unit > .image, .component.type_pagelist .inner .list .unit > .image, .navigation.articlelist .inner .list .unit > .image, .component.type_pagelist .inner .list .unit > .image {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .navigation.articlelist .inner .list .unit .desc, .component.type_pagelist .inner .list .unit .desc {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .navigation.articlelist .inner .list .unit .summary, .component.type_pagelist .inner .list .unit .summary {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 3;
  }
  #topProducts .other .list .unit .image {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
  }
  .navigation.articlelist .inner .list .unit > .image, .component.type_pagelist .inner .list .unit > .image {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  #topProducts .other .list .unit .button {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .component.type_extendedtitle .inner > .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .component.type_catchcopy .inner > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .component.type_extendedtitle .inner > .text {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .component.type_catchcopy .inner > .text {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  #topSponsors .inner .unit .block .image {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
    -ms-grid-column-span: 2;
  }
  .navigation.articlelist .inner .list .unit > .image, .component.type_pagelist .inner .list .unit > .image {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  .component.type_extendedtitle .inner > .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .component.type_catchcopy .inner > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
  .component.type_extendedtitle .inner > .topText {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .component.type_catchcopy .inner > .topText {
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    -ms-grid-column: 3;
  }
}
@media print, screen and (min-width: 768px) {
  #topNews .inner .topText h1 {
    line-height: 1;
  }
}
@media print, screen and (min-width: 768px) {
  #topNews .inner .topText .button .p_button {
    margin-inline: unset;
  }
}
#topNews .inner ul {
  margin-top: calc(36 / 375 * 100vw);
  border-bottom: 1px solid #EAEEF7;
}
@media print, screen and (min-width: 768px) {
  #topNews .inner ul {
    grid-area: list;
    margin-top: unset;
  }
}
@media print, screen and (min-width: 768px){
  .pNewsSet .date {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .pNewsSet .cat {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .pNewsSet .title {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
    -ms-grid-column-span: 1;
  }
  #topProducts .other .list .unit h3 {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
    -ms-grid-column-span: 1;
  }
  #topProducts .other .list .unit > h3 {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
  }
  #topSponsors .inner .unit .block .lead {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  #topNews .inner ul {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
}

.catLead {
  background-color: var(--color-bg-bg-dark);
  padding-block: calc(56 / 375 * 100vw) calc(162 / 375 * 100vw);
  background-image: url(/images/catlead_bg.svg);
  background-size: calc(448 / 375 * 100vw) auto;
  background-position: center calc(-16 / 375 * 100vw);
  background-repeat: no-repeat;
  position: relative;
}
.catLead::before, .catLead::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: color-mix(in srgb, var(--color-brand-corporate) 20%, transparent);
  width: 1px;
  height: 100%;
  left: calc(20 / 375 * 100vw);
  z-index: 1;
}
@media print, screen and (min-width: 768px) {
  .catLead::before, .catLead::after {
    content: "";
    left: 50%;
    translate: max(-600px, calc(-600 / 1440 * 100vw)) 0;
  }
}
.catLead::after {
  left: unset;
  right: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .catLead::after {
    right: 50%;
    left: unset;
    translate: min(600px, calc(600 / 1440 * 100vw)) 0;
  }
}
.aboutBorderBG .catLead {
  padding-bottom: calc(262 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutBorderBG .catLead {
    padding-bottom: min(367px, calc(367 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .catLead {
    padding-block: min(100px, calc(100 / 1440 * 100vw)) min(367px, calc(367 / 1440 * 100vw));
    background-size: min(1508px, calc(1508 / 1440 * 100vw)) auto;
    background-position: center max(-153px, calc(-153 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 1440px) {
  .catLead {
    background-size: 110% auto;
  }
}
.catLead::before, .catLead::after {
  background: linear-gradient(to top, var(--color-brand-corporate) 0%, transparent 100%);
}
.catLead .inner {
  color: var(--color-text-on-accent);
  padding-inline: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .catLead .inner {
    padding-left: calc(var(--padding-sp) / 375 * 100vw);
    padding-right: calc(var(--padding-sp) / 375 * 100vw);
    padding-inline: unset;
  }
}
@media print, screen and (min-width: 768px) and (min-width: 768px) {
  .catLead .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.catLead .inner h2 {
  text-align: center;
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  font-weight: 700;
  margin-bottom: calc(48 / 375 * 100vw);
  line-height: 240%;
}
@media print, screen and (min-width: 768px) {
  .catLead .inner h2 {
    margin-bottom: min(82px, calc(82 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
    line-height: 150%;
  }
}
.catLead .inner p {
  padding-bottom: 2em;
  font-size: calc(var(--fs-m) / 375 * 100vw);
  line-height: 175%;
  font-weight: 500;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .catLead .inner p {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.catLead + .component.type_catchcopy_image {
  margin-top: calc(-214 / 375 * 100vw);
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .catLead + .component.type_catchcopy_image {
    margin-top: max(-245px, calc(-245 / 1440 * 100vw));
  }
}
.catLead + .component.type_image_multi {
  margin-top: calc(-115 / 375 * 100vw);
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .catLead + .component.type_image_multi {
    margin-top: max(-270px, calc(-270 / 1440 * 100vw));
  }
}

.aboutBorderBG {
  position: relative;
  padding-bottom: calc(48 / 375 * 100vw);
}
.aboutBorderBG::before, .aboutBorderBG::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: color-mix(in srgb, var(--color-brand-corporate) 20%, transparent);
  width: 1px;
  height: 100%;
  left: calc(20 / 375 * 100vw);
  z-index: 1;
  content: none;
}
@media print, screen and (min-width: 768px) {
  .aboutBorderBG::before, .aboutBorderBG::after {
    content: "";
    left: 50%;
    translate: max(-600px, calc(-600 / 1440 * 100vw)) 0;
  }
}
.aboutBorderBG::after {
  left: unset;
  right: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutBorderBG::after {
    right: 50%;
    left: unset;
    translate: min(600px, calc(600 / 1440 * 100vw)) 0;
  }
}
@media print, screen and (min-width: 768px) {
  .aboutBorderBG {
    padding-bottom: min(88px, calc(88 / 1440 * 100vw));
  }
}

.aboutHeader {
  margin-top: calc(55 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutHeader {
    margin-top: min(100px, calc(100 / 1440 * 100vw));
  }
}
.aboutHeader .inner h2 {
  text-align: center;
  font-size: calc(var(--fs-xxl) / 375 * 100vw);
  font-weight: 700;
  line-height: 218%;
}
@media print, screen and (min-width: 768px) {
  .aboutHeader .inner h2 {
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
    line-height: 150%;
  }
}

.aboutReason {
  position: relative;
}
.aboutReason::before, .aboutReason::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: color-mix(in srgb, var(--color-brand-corporate) 20%, transparent);
  width: 1px;
  height: 100%;
  left: calc(20 / 375 * 100vw);
  z-index: 1;
  content: none;
}
@media print, screen and (min-width: 768px) {
  .aboutReason::before, .aboutReason::after {
    content: "";
    left: 50%;
    translate: max(-600px, calc(-600 / 1440 * 100vw)) 0;
  }
}
.aboutReason::after {
  left: unset;
  right: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReason::after {
    right: 50%;
    left: unset;
    translate: min(600px, calc(600 / 1440 * 100vw)) 0;
  }
}

.aboutReasonHeader {
  position: relative;
  overflow: hidden;
  z-index: 2;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding-block: calc(48 / 375 * 100vw) calc(90 / 375 * 100vw);
}
.aboutReasonHeader::before, .aboutReasonHeader::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: color-mix(in srgb, var(--color-brand-corporate) 20%, transparent);
  width: 1px;
  height: 100%;
  left: calc(20 / 375 * 100vw);
  z-index: 1;
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader::before, .aboutReasonHeader::after {
    content: "";
    left: 50%;
    translate: max(-600px, calc(-600 / 1440 * 100vw)) 0;
  }
}
.aboutReasonHeader::after {
  left: unset;
  right: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader::after {
    right: 50%;
    left: unset;
    translate: min(600px, calc(600 / 1440 * 100vw)) 0;
  }
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader {
    padding-block: min(147px, calc(147 / 1440 * 100vw)) min(246px, calc(246 / 1440 * 100vw));
  }
}
.aboutReasonHeader::before, .aboutReasonHeader::after {
  background-color: var(--color-border-white);
}
.aboutReasonHeader.about_01 {
  background-image: url(/images/about_01_bg.webp);
}
.aboutReasonHeader.about_02 {
  background-image: url(/images/about_02_bg.webp);
}
.aboutReasonHeader.about_03 {
  background-image: url(/images/about_03_bg.webp);
}
.aboutReasonHeader .circleObject {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader .circleObject {
    display: block;
    top: min(17px, calc(17 / 1440 * 100vw));
    width: min(546px, calc(546 / 1440 * 100vw));
    left: 50%;
    translate: min(327px, calc(327 / 1440 * 100vw)) 0;
  }
}
.aboutReasonHeader .inner {
  padding-inline: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader .inner {
    padding-left: calc(var(--padding-sp) / 375 * 100vw);
    padding-right: calc(var(--padding-sp) / 375 * 100vw);
  }
}
@media print, screen and (min-width: 768px) and (min-width: 768px) {
  .aboutReasonHeader .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.aboutReasonHeader .inner dl {
  color: var(--color-text-on-accent);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader .inner dl {
    display: flex;
    align-items: center;
    gap: min(94px, calc(94 / 1440 * 100vw));
    padding-inline: min(85px, calc(85 / 1440 * 100vw));
  }
}
.aboutReasonHeader .inner dl dt {
  font-family: var(--en);
  font-size: calc(var(--fs-xxxxxxl) / 375 * 100vw);
  font-weight: 500;
  line-height: 150%;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader .inner dl dt {
    font-size: min(180px, calc(180 / 1440 * 100vw));
    display: flex;
    align-items: center;
    gap: min(99px, calc(99 / 1440 * 100vw));
  }
}
.aboutReasonHeader .inner dl dt::after {
  content: "";
  height: 2px;
  background-color: var(--color-surface);
  width: calc(49 / 375 * 100vw);
  display: block;
  margin-top: calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader .inner dl dt::after {
    margin-top: unset;
    width: min(2px, calc(2 / 1440 * 100vw));
    height: min(187px, calc(187 / 1440 * 100vw));
  }
}
.aboutReasonHeader .inner dl dd {
  margin-top: calc(20 / 375 * 100vw);
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  font-weight: 700;
  line-height: 180%;
}
@media print, screen and (min-width: 768px) {
  .aboutReasonHeader .inner dl dd {
    margin-top: unset;
    font-size: min(56px, calc(56 / 1440 * 100vw));
    line-height: 170%;
  }
}

.aboutReasonBody {
  margin-top: calc(-50 / 375 * 100vw);
  position: relative;
  z-index: 2;
  padding-bottom: calc(80 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody {
    margin-top: max(-130px, calc(-130 / 1440 * 100vw));
    padding-bottom: min(133px, calc(133 / 1440 * 100vw));
  }
}
.aboutReasonBody .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
.aboutReasonBody .inner .text {
  background-color: var(--color-surface);
  padding: calc(36 / 375 * 100vw) calc(18 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner .text {
    padding: min(65px, calc(65 / 1440 * 100vw)) min(126px, calc(126 / 1440 * 100vw));
  }
}
.aboutReasonBody .inner .text h2 {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner .text h2 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.aboutReasonBody .inner .text h2:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner .text h2:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
.aboutReasonBody .inner .text p {
  margin-top: calc(16 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 175%;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner .text p {
    margin-top: min(32px, calc(32 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.aboutReasonBody .inner .text p + h2 {
  margin-top: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner .text p + h2 {
    margin-top: min(54px, calc(54 / 1440 * 100vw));
  }
}
.aboutReasonBody .inner .images {
  margin-top: calc(36 / 375 * 100vw);
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner .images {
    margin-top: min(42px, calc(42 / 1440 * 100vw));
    grid-template-columns: repeat(3, 1fr);
    gap: min(36px, calc(36 / 1440 * 100vw));
  }
}
.aboutReasonBody .inner .images figure figcaption {
  margin-top: calc(12 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 175%;
  font-weight: 700;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .aboutReasonBody .inner .images figure figcaption {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}

.aboutRelate {
  background-color: var(--color-surface);
  padding-block: calc(56 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .aboutRelate {
    padding-block: min(110px, calc(110 / 1440 * 100vw));
  }
}
.aboutRelate > *:first-child {
  margin-top: unset;
}
.aboutRelate + .navigation.breadcrumbs, .aboutRelate + .breadcrumbs.component.type_pagelist {
  margin-top: unset;
}

.philosophyTop {
  background-color: var(--color-surface);
  padding-block: calc(36 / 375 * 100vw) calc(48 / 375 * 100vw);
  position: relative;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .philosophyTop {
    padding-block: min(120px, calc(120 / 1440 * 100vw));
  }
}
.philosophyTop .circleObject {
  top: 0;
  z-index: 0;
  width: calc(268 / 375 * 100vw);
  translate: calc(73 / 375 * 100vw) 0;
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .circleObject {
    width: min(549px, calc(549 / 1440 * 100vw));
    translate: min(150px, calc(150 / 1440 * 100vw)) 0;
  }
}
.philosophyTop .component.type_heading {
  margin-top: unset;
}
.philosophyTop .philosophyTopText {
  margin-top: calc(72 / 375 * 100vw);
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .philosophyTopText {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .philosophyTopText {
    margin-top: min(90px, calc(90 / 1440 * 100vw));
  }
}
.philosophyTop .philosophyTopText h3 img {
  width: calc(240 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .philosophyTopText h3 img {
    width: min(374px, calc(374 / 1440 * 100vw));
  }
}
.philosophyTop .philosophyTopText h4 {
  margin-top: calc(64 / 375 * 100vw);
  color: var(--color-text-medium);
  font-size: calc(var(--fs-xl) / 375 * 100vw);
  font-weight: 700;
  line-height: 180%;
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .philosophyTopText h4 {
    margin-top: min(74px, calc(74 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    line-height: 130%;
  }
}
.philosophyTop .philosophyTopText p {
  margin-top: calc(36 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 500;
  line-height: 175%;
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .philosophyTopText p {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.philosophyTop .philosophyTopText .logo {
  margin-top: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .philosophyTopText .logo {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
  }
}
.philosophyTop .philosophyTopText .logo img {
  width: calc(180 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyTop .philosophyTopText .logo img {
    width: min(352px, calc(352 / 1440 * 100vw));
  }
}

.philosophyMiddle {
  position: relative;
  overflow: hidden;
  padding-bottom: calc(48 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle {
    padding-bottom: min(120px, calc(120 / 1440 * 100vw));
  }
}
.philosophyMiddle .circleObject {
  top: calc(172 / 375 * 100vw);
  z-index: 0;
  width: calc(268 / 375 * 100vw);
  translate: calc(-75 / 375 * 100vw) 0;
  left: 0;
  right: auto;
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .circleObject {
    top: min(224px, calc(224 / 1440 * 100vw));
    width: min(549px, calc(549 / 1440 * 100vw));
    translate: max(-152px, calc(-152 / 1440 * 100vw)) 0;
  }
}
.philosophyMiddle .philosophyMiddleText {
  margin-top: calc(36 / 375 * 100vw);
  position: relative;
  z-index: 2;
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
  }
}
.philosophyMiddle .philosophyMiddleText .inner {
  padding-left: calc(var(--padding-sp) / 375 * 100vw);
  padding-right: calc(var(--padding-sp) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner {
    padding-left: unset;
    padding-right: unset;
    width: min(calc(var(--width-container) * 1px), calc(var(--width-container) / 1440 * 100vw));
    margin-inline: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .lead {
    padding-inline: min(120px, calc(120 / 1440 * 100vw));
  }
}
.philosophyMiddle .philosophyMiddleText .inner .lead h3 {
  position: relative;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 155%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(10 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .lead h3 {
    font-size: min(calc(var(--fs-xxxl) * 1px), calc(var(--fs-xxxl) / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.philosophyMiddle .philosophyMiddleText .inner .lead h3:before {
  content: "";
  display: block;
  width: calc(8 / 375 * 100vw);
  height: calc(8 / 375 * 100vw);
  background-color: var(--color-brand-lightblue);
  border: 1px solid #C2E8FF;
  border-radius: 50%;
  translate: 0 calc(11 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .lead h3:before {
    width: min(10px, calc(10 / 1440 * 100vw));
    height: min(10px, calc(10 / 1440 * 100vw));
    translate: 0 min(18px, calc(18 / 1440 * 100vw));
  }
}
.philosophyMiddle .philosophyMiddleText .inner .lead p {
  margin-top: calc(16 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 500;
  line-height: 175%;
  padding-inline: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .lead p {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding-inline: unset;
  }
}
.philosophyMiddle .philosophyMiddleText .inner .details {
  margin-top: calc(36 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .details {
    margin-top: min(64px, calc(64 / 1440 * 100vw));
  }
}
.philosophyMiddle .philosophyMiddleText .inner .details .unit {
  background-color: var(--color-surface);
  padding: calc(28 / 375 * 100vw) calc(24 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw);
  text-align: center;
  margin-top: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .details .unit {
    padding: min(56px, calc(56 / 1440 * 100vw)) min(108px, calc(108 / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    min-height: min(228px, calc(228 / 1440 * 100vw));
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.philosophyMiddle .philosophyMiddleText .inner .details .unit:first-child {
  margin-top: unset;
}
.philosophyMiddle .philosophyMiddleText .inner .details .unit h4 {
  color: var(--color-text-medium);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 700;
  line-height: 150%;
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .details .unit h4 {
    font-size: min(calc(var(--fs-xxl) * 1px), calc(var(--fs-xxl) / 1440 * 100vw));
  }
}
.philosophyMiddle .philosophyMiddleText .inner .details .unit p {
  margin-top: calc(16 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 500;
  line-height: 175%;
}
@media print, screen and (min-width: 768px) {
  .philosophyMiddle .philosophyMiddleText .inner .details .unit p {
    margin-top: min(20px, calc(20 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}

.philosophyBottom {
  background-color: var(--color-surface);
  padding-block: calc(36 / 375 * 100vw) calc(48 / 375 * 100vw);
  position: relative;
  overflow: hidden;
}
@media print, screen and (min-width: 768px) {
  .philosophyBottom {
    padding-block: min(120px, calc(120 / 1440 * 100vw));
  }
}
.philosophyBottom .component.type_catchcopy_image_bg {
  margin-top: unset;
}

@media print, screen and (min-width: 768px) {
  .products-search-wrapper {
    margin-top: min(56px, calc(56 / 1440 * 100vw));
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    width: min(1200px, calc(1200 / 1440 * 100vw));
    margin-inline: auto;
  }
}
.products-search-wrapper:has(.product-detail-hero) .product-search-nav {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .products-search-wrapper:has(.product-detail-hero) .product-search-nav {
    display: block;
  }
}
.products-search-wrapper .tip {
  z-index: 2;
  position: absolute;
  text-align: center;
  width: 100%;
  left: 0;
  bottom: calc(38 / 375 * 100vw);
  opacity: 0;
  transition: opacity var(--transition-speed) var(--bezier), transform var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .products-search-wrapper .tip {
    bottom: min(48px, calc(48 / 1440 * 100vw));
  }
}
.products-search-wrapper .tip::after {
  position: absolute;
  content: "";
  display: block;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: calc(7 / 375 * 100vw) calc(4 / 375 * 100vw) 0 calc(4 / 375 * 100vw);
  border-color: var(--color-surface) transparent transparent transparent;
  left: 50%;
  transform: translateX(-50%);
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
}
@media print, screen and (min-width: 768px) {
  .products-search-wrapper .tip::after {
    border-width: min(7px, calc(7 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) 0 min(4px, calc(4 / 1440 * 100vw));
  }
}
.products-search-wrapper .tip.is-show {
  opacity: 1;
  transform: translateY(calc(-5 / 375 * 100vw));
}
@media print, screen and (min-width: 768px) {
  .products-search-wrapper .tip.is-show {
    transform: translateY(max(-5px, calc(-5 / 1440 * 100vw)));
  }
}
.products-search-wrapper .tip span {
  display: inline-block;
  background-color: var(--color-surface);
  text-align: center;
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  color: var(--color-brand-lightblue);
  padding: calc(4 / 375 * 100vw) calc(12 / 375 * 100vw) calc(5 / 375 * 100vw);
  font-weight: 500;
  filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
  border-radius: calc(2 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .products-search-wrapper .tip span {
    border-radius: min(2px, calc(2 / 1440 * 100vw));
    padding: min(4px, calc(4 / 1440 * 100vw)) min(12px, calc(12 / 1440 * 100vw)) min(5px, calc(5 / 1440 * 100vw));
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  }
}
.products-search-wrapper .add-to-contact {
  border-radius: calc(2 / 375 * 100vw);
  border: 1px solid var(--color-brand-lightblue);
  background: var(--color-surface);
  color: var(--color-brand-lightblue);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 700;
  padding: calc(8 / 375 * 100vw) calc(6 / 375 * 100vw) calc(8 / 375 * 100vw) calc(6 / 375 * 100vw);
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
@media print, screen and (min-width: 768px) {
  .products-search-wrapper .add-to-contact {
    border-radius: min(2px, calc(2 / 1440 * 100vw));
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    padding: min(13px, calc(13 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw)) min(13px, calc(13 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw));
  }
}
.products-search-wrapper .add-to-contact::after {
  content: "";
  display: block;
  width: calc(18 / 375 * 100vw);
  height: calc(18 / 375 * 100vw);
  -webkit-mask-image: url("/images/icon_plus.svg");
  mask-image: url("/images/icon_plus.svg");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  background: var(--color-brand-lightblue);
  animation: rotate var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .products-search-wrapper .add-to-contact::after {
    width: min(18px, calc(18 / 1440 * 100vw));
    height: min(18px, calc(18 / 1440 * 100vw));
  }
}
.products-search-wrapper .add-to-contact.is-selected {
  background: var(--color-brand-lightblue);
  color: var(--color-text-on-accent);
}
.products-search-wrapper .add-to-contact.is-selected::after {
  rotate: z 45deg;
  background: var(--color-text-on-accent);
}

.product-search-nav {
  background-color: var(--color-brand-tertiary);
  padding: calc(24 / 375 * 100vw) calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-nav {
    padding: unset;
    background-color: transparent;
    position: sticky;
    top: min(132px, calc(132 / 1440 * 100vw));
    width: min(288px, calc(288 / 1440 * 100vw));
  }
}
.product-search-nav .search-box .search-box-header {
  background-color: var(--color-brand-primary);
  padding: calc(10 / 375 * 100vw) calc(16 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw) calc(4 / 375 * 100vw) 0 0;
  color: var(--color-text-on-accent);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 700;
  line-height: 166.667%;
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .search-box .search-box-header {
    padding: min(8px, calc(8 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) 0 0;
  }
}
.product-search-nav .search-box .search-box-body {
  background-color: var(--color-surface);
  padding: calc(12 / 375 * 100vw);
  border-radius: 0 0 calc(4 / 375 * 100vw) calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .search-box .search-box-body {
    padding: min(12px, calc(12 / 1440 * 100vw));
    border-radius: 0 0 min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw));
  }
}
.product-search-nav .search-box .search-box-body .search-input {
  padding: calc(8 / 375 * 100vw);
  display: flex;
  align-items: center;
  gap: calc(16 / 375 * 100vw);
  background-color: var(--color-brand-tertiary);
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .search-box .search-box-body .search-input {
    padding: min(4px, calc(4 / 1440 * 100vw));
    gap: min(16px, calc(16 / 1440 * 100vw));
  }
}
.product-search-nav .search-box .search-box-body .search-input input {
  background-color: transparent;
  border: none;
  outline: none;
  width: 100%;
  font: inherit;
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 170%;
  color: var(--color-gray-dark);
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .search-box .search-box-body .search-input input {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}
.product-search-nav .search-box .search-box-body .search-input .search-btn {
  width: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .search-box .search-box-body .search-input .search-btn {
    width: min(24px, calc(24 / 1440 * 100vw));
  }
}
.product-search-nav .category-nav {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .category-nav {
    display: block;
  }
}
.product-search-nav .category-nav .category-nav-header {
  background-color: var(--color-brand-primary);
  padding: calc(10 / 375 * 100vw) calc(16 / 375 * 100vw);
  border-radius: calc(4 / 375 * 100vw) calc(4 / 375 * 100vw) 0 0;
  color: var(--color-text-on-accent);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 700;
  line-height: 166.667%;
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .category-nav .category-nav-header {
    padding: min(8px, calc(8 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw));
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) 0 0;
  }
}
.product-search-nav .category-nav .category-nav-list {
  background-color: var(--color-surface);
  border-radius: 0 0 calc(4 / 375 * 100vw) calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .category-nav .category-nav-list {
    border-radius: 0 0 min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw));
  }
}
.product-search-nav .category-nav .category-nav-list .category-nav-item {
  padding-inline: min(16px, calc(16 / 1440 * 100vw));
}
.product-search-nav .category-nav .category-nav-list .category-nav-item:last-child a {
  border-bottom: none;
}
.product-search-nav .category-nav .category-nav-list .category-nav-item a {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  border-bottom: 1px solid var(--color-border-medium);
  gap: calc(8 / 375 * 100vw);
  padding-block: calc(16 / 375 * 100vw);
  color: var(--color-text-medium);
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 500;
  line-height: 150%;
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .category-nav .category-nav-list .category-nav-item a {
    gap: min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
    padding-block: min(16px, calc(16 / 1440 * 100vw));
  }
}
.product-search-nav .category-nav .category-nav-list .category-nav-item a::after {
  justify-self: end;
  content: "";
  display: block;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  aspect-ratio: 1/1;
  width: calc(14 / 375 * 100vw);
  -webkit-mask-image: url(/images/arrow_right_scroll.svg);
  mask-image: url(/images/arrow_right_scroll.svg);
  background-color: var(--color-brand-primary);
  -webkit-mask-position: center right;
  mask-position: center right;
  -webkit-mask-size: auto calc(14 / 375 * 100vw);
  mask-size: auto calc(14 / 375 * 100vw);
  transition: -webkit-mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier);
  transition: mask-position var(--transition-speed) var(--bezier), -webkit-mask-position var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .category-nav .category-nav-list .category-nav-item a::after {
    width: min(14px, calc(14 / 1440 * 100vw));
    -webkit-mask-size: auto min(14px, calc(14 / 1440 * 100vw));
    mask-size: auto min(14px, calc(14 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .product-search-nav .category-nav .category-nav-list .category-nav-item a:hover::after {
    -webkit-mask-position: center left;
    mask-position: center left;
  }
}
.product-search-nav .buttons {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .product-search-nav .buttons {
    display: block;
    margin-top: min(28px, calc(28 / 1440 * 100vw));
  }
}
.product-search-nav .buttons .p_button {
  width: 100%;
}

@media print, screen and (min-width: 768px) {
  .product-search-body {
    width: min(896px, calc(896 / 1440 * 100vw));
  }
}

.product-detail-hero {
  background-color: var(--color-surface);
  padding: calc(28 / 375 * 100vw) calc(20 / 375 * 100vw) calc(48 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-detail-hero {
    padding: min(28px, calc(28 / 1440 * 100vw));
    display: grid;
    grid-template-columns: min(396px, calc(396 / 1440 * 100vw)) 1fr;
    gap: min(24px, calc(24 / 1440 * 100vw));
    align-items: start;
  }
}

#product-detail-main-swiper .product-detail-main img {
  aspect-ratio: 4/3;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
}

#product-detail-thumb-swiper {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #product-detail-thumb-swiper {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
  }
}
#product-detail-thumb-swiper .swiper-wrapper {
  gap: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  #product-detail-thumb-swiper .swiper-wrapper {
    gap: min(4px, calc(4 / 1440 * 100vw));
  }
}
#product-detail-thumb-swiper .swiper-wrapper .swiper-slide {
  width: calc(109 / 375 * 100vw) !important;
  aspect-ratio: 4/3;
}
@media print, screen and (min-width: 768px) {
  #product-detail-thumb-swiper .swiper-wrapper .swiper-slide {
    width: min(129px, calc(129 / 1440 * 100vw)) !important;
  }
}
#product-detail-thumb-swiper .swiper-wrapper .swiper-slide img {
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  aspect-ratio: 4/3;
}

.product-detail-info {
  margin-top: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-detail-info {
    margin-top: unset;
  }
}
.product-detail-info .product-detail-model {
  font-family: var(--num);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 500;
  line-height: 171.429%;
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-model {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    line-height: 155%;
  }
}
.product-detail-info .product-detail-name {
  margin: calc(4 / 375 * 100vw) 0 0;
  font-size: calc(var(--fs-l) / 375 * 100vw);
  font-weight: 700;
  line-height: 133%;
  color: var(--color-brand-primary);
  word-break: auto-phrase;
  border-bottom: calc(3 / 375 * 100vw) solid var(--color-border-dark);
  padding-bottom: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-name {
    margin-top: min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxxxl) * 1px), calc(var(--fs-xxxxl) / 1440 * 100vw));
    padding-bottom: min(30px, calc(30 / 1440 * 100vw));
    border-bottom-width: min(3px, calc(3 / 1440 * 100vw));
  }
}
.product-detail-info .product-detail-specs {
  margin-top: calc(20 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  line-height: 171.429%;
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-specs {
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    line-height: 155.556%;
  }
}
.product-detail-info .product-detail-add-contact {
  margin-top: calc(36 / 375 * 100vw);
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-add-contact {
    margin-top: min(48px, calc(48 / 1440 * 100vw));
  }
}
.product-detail-info .product-detail-add-contact .tip {
  bottom: calc(40 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-add-contact .tip {
    bottom: min(58px, calc(58 / 1440 * 100vw));
  }
}
.product-detail-info .product-detail-add-contact .add-to-contact {
  margin-inline: auto;
  width: calc(200 / 375 * 100vw);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  padding-block: calc(11 / 375 * 100vw);
  padding-right: calc(8 / 375 * 100vw);
  background-color: var(--color-surface);
  color: var(--color-brand-lightblue);
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-add-contact .add-to-contact {
    width: 100%;
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    padding-block: min(20px, calc(20 / 1440 * 100vw));
    padding-right: min(14px, calc(14 / 1440 * 100vw));
  }
}
.product-detail-info .product-detail-add-contact .add-to-contact::after {
  background-color: var(--color-brand-lightblue);
}
.product-detail-info .product-detail-add-contact .add-to-contact.is-selected {
  background-color: var(--color-brand-lightblue);
  color: var(--color-text-on-accent);
}
.product-detail-info .product-detail-add-contact .add-to-contact.is-selected::after {
  background-color: var(--color-text-on-accent);
}
.product-detail-info .product-detail-download-catalog {
  margin-top: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-download-catalog {
    margin-top: min(24px, calc(24 / 1440 * 100vw));
  }
}
.product-detail-info .product-detail-download-catalog .p_button {
  margin-inline: auto;
  width: calc(200 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-detail-info .product-detail-download-catalog .p_button {
    width: 100%;
  }
}

.product_search {
  background-color: var(--color-surface);
  padding: calc(28 / 375 * 100vw) calc(20 / 375 * 100vw);
  font-weight: 500;
}
@media print, screen and (min-width: 768px) {
  .product_search {
    padding: min(20px, calc(20 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw)) min(28px, calc(28 / 1440 * 100vw));
  }
}
.product_search .is-hidden {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .product_search .is-hidden {
    display: block;
  }
}
.product_search .is-hidden + p {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .product_search .is-hidden + p {
    display: block;
  }
}

.search-section .section-title {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: calc(12 / 375 * 100vw);
  align-items: center;
  font-size: calc(var(--fs-m) / 375 * 100vw);
  font-weight: 700;
  line-height: 175%;
}
@media print, screen and (min-width: 768px) {
  .search-section .section-title {
    font-size: min(calc(var(--fs-xl) * 1px), calc(var(--fs-xl) / 1440 * 100vw));
    gap: min(12px, calc(12 / 1440 * 100vw));
  }
}
.search-section .section-title::before {
  content: "";
  display: block;
  width: calc(4 / 375 * 100vw);
  height: calc(28 / 375 * 100vw);
  background-color: var(--color-brand-primary);
}
@media print, screen and (min-width: 768px) {
  .search-section .section-title::before {
    width: min(4px, calc(4 / 1440 * 100vw));
    height: min(36px, calc(36 / 1440 * 100vw));
  }
}
.search-section .radio-group {
  margin-top: calc(16 / 375 * 100vw);
  display: flex;
  flex-wrap: wrap;
  gap: calc(14 / 375 * 100vw) calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .search-section .radio-group {
    margin-top: min(24px, calc(24 / 1440 * 100vw));
    gap: min(20px, calc(20 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw));
  }
}
.search-section .radio-group .radio-item {
  display: flex;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .search-section .radio-group .radio-item {
    gap: min(4px, calc(4 / 1440 * 100vw));
  }
}
.search-section .radio-group .radio-item input {
  margin: unset;
}
@media print, screen and (min-width: 768px) {
  .search-section .radio-group .radio-item input {
    translate: 0 min(1px, calc(1 / 1440 * 100vw));
  }
}
.search-section .radio-group .radio-item .radio-label {
  font-size: calc(var(--fs-xs) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .search-section .radio-group .radio-item .radio-label {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}

.refine-section {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section {
    margin-top: min(24px, calc(24 / 1440 * 100vw));
  }
}
.refine-section.is-disabled {
  opacity: 0.4;
  pointer-events: none;
}
.refine-section .refine-toggle .refine-toggle-btn {
  width: 100%;
  border-radius: calc(2 / 375 * 100vw);
  border: 1px solid var(--color-border-medium);
  display: flex;
  gap: calc(10 / 375 * 100vw);
  padding: calc(8 / 375 * 100vw);
  align-items: center;
  justify-content: center;
  color: var(--color-text-medium);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  font-weight: 700;
  line-height: 233.333%;
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-toggle .refine-toggle-btn {
    display: block;
    border-radius: min(2px, calc(2 / 1440 * 100vw));
    gap: unset;
    padding: min(6px, calc(6 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw));
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}
.refine-section .refine-toggle .refine-toggle-btn.is-disabled {
  opacity: 0.3;
  pointer-events: none;
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-toggle .refine-toggle-btn.is-disabled {
    opacity: 1;
  }
}
.refine-section .refine-toggle .refine-toggle-btn.is-open::after {
  rotate: z 270deg;
}
.refine-section .refine-toggle .refine-toggle-btn::after {
  content: "";
  display: block;
  width: calc(14 / 375 * 100vw);
  height: calc(14 / 375 * 100vw);
  background-image: url("/images/arrow_right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  rotate: z 90deg;
  transition: rotate var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-toggle .refine-toggle-btn::after {
    display: none;
  }
}
.refine-section .refine-content {
  padding-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content {
    padding-top: min(16px, calc(16 / 1440 * 100vw));
  }
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row {
    display: grid;
    grid-template-columns: min(156px, calc(156 / 1440 * 100vw)) 1fr;
    gap: min(12px, calc(12 / 1440 * 100vw));
    margin-top: min(16px, calc(16 / 1440 * 100vw));
  }
  .refine-section .refine-content .filter-row:first-child {
    margin-top: unset;
  }
}
.refine-section .refine-content .filter-row .filter-label {
  border-radius: calc(2 / 375 * 100vw);
  background: var(--color-brand-tertiary);
  color: var(--color-text-medium);
  text-align: center;
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  font-weight: 700;
  line-height: 200%;
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .filter-label {
    border-radius: min(2px, calc(2 / 1440 * 100vw));
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
    display: grid;
    align-items: center;
  }
}
.refine-section .refine-content .filter-row .checkbox-group {
  padding-block: calc(8 / 375 * 100vw) calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group {
    padding-block: min(4px, calc(4 / 1440 * 100vw));
  }
}
.refine-section .refine-content .filter-row .checkbox-group:not(.grid-line) {
  display: flex;
  flex-wrap: wrap;
  gap: calc(8 / 375 * 100vw) calc(12 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group:not(.grid-line) {
    gap: min(8px, calc(8 / 1440 * 100vw)) min(12px, calc(12 / 1440 * 100vw));
  }
}
.refine-section .refine-content .filter-row .checkbox-group.grid-line {
  display: flex;
  flex-wrap: wrap;
  gap: calc(8 / 375 * 100vw) calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group.grid-line {
    gap: min(4px, calc(4 / 1440 * 100vw)) min(12px, calc(12 / 1440 * 100vw));
  }
}
.refine-section .refine-content .filter-row .checkbox-group.grid-line .checkbox-item input {
  translate: 0 calc(1 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group.grid-line .checkbox-item input {
    translate: 0 min(1px, calc(1 / 1440 * 100vw));
  }
}
.refine-section .refine-content .filter-row .checkbox-group.grid-line .checkbox-item .checkbox-label {
  min-width: calc(24 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group.grid-line .checkbox-item .checkbox-label {
    min-width: min(42px, calc(42 / 1440 * 100vw));
  }
}
.refine-section .refine-content .filter-row .checkbox-group .checkbox-item {
  display: flex;
  align-items: center;
  gap: calc(4 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group .checkbox-item {
    gap: min(2px, calc(2 / 1440 * 100vw));
  }
}
.refine-section .refine-content .filter-row .checkbox-group .checkbox-item:has(input:disabled) {
  opacity: 0.5;
  pointer-events: none;
}
.refine-section .refine-content .filter-row .checkbox-group .checkbox-item input {
  margin: unset;
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group .checkbox-item input {
    translate: 0 min(1px, calc(1 / 1440 * 100vw));
  }
}
.refine-section .refine-content .filter-row .checkbox-group .checkbox-item .checkbox-label {
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .refine-section .refine-content .filter-row .checkbox-group .checkbox-item .checkbox-label {
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  }
}
.refine-section .note-text {
  margin-top: calc(4 / 375 * 100vw);
  font-size: calc(var(--fs-xxs) / 375 * 100vw);
  line-height: 170%;
}
@media print, screen and (min-width: 768px) {
  .refine-section .note-text {
    margin-top: min(16px, calc(16 / 1440 * 100vw));
    font-size: min(calc(var(--fs-s) * 1px), calc(var(--fs-s) / 1440 * 100vw));
  }
}

.search-button-wrapper {
  margin-top: calc(16 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .search-button-wrapper {
    margin-top: min(20px, calc(20 / 1440 * 100vw));
  }
}
.search-button-wrapper .search-button {
  width: calc(142 / 375 * 100vw);
  margin-inline: auto;
  cursor: pointer;
}
.search-button-wrapper .search-button.is-disabled {
  opacity: 0.4;
  pointer-events: none;
  cursor: default;
}
@media print, screen and (min-width: 768px) {
  .search-button-wrapper .search-button {
    width: min(172px, calc(172 / 1440 * 100vw));
  }
}

.product-search-result .heading {
  margin-top: calc(24 / 375 * 100vw);
  color: var(--color-text-medium);
  margin-inline: calc(20 / 375 * 100vw);
  padding-bottom: calc(12 / 375 * 100vw);
  border-bottom: calc(3 / 375 * 100vw) solid var(--color-border-dark);
  position: relative;
  font-size: calc(var(--fs-l) / 375 * 100vw);
  line-height: 155%;
  word-break: auto-phrase;
  font-weight: 700;
}
@media print, screen and (min-width: 768px) {
  .product-search-result .heading {
    margin-top: min(80px, calc(80 / 1440 * 100vw));
    border-bottom-width: min(3px, calc(3 / 1440 * 100vw));
    font-size: min(calc(var(--fs-xxl) * 1px), calc(var(--fs-xxl) / 1440 * 100vw));
    margin-inline: unset;
    padding-bottom: min(12px, calc(12 / 1440 * 100vw));
  }
}
.product-search-result .feature {
  margin-top: calc(12 / 375 * 100vw);
  padding-inline: calc(20 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-result .feature {
    margin-top: min(24px, calc(24 / 1440 * 100vw));
    padding-inline: unset;
  }
}
.product-search-result .back-button {
  margin-top: calc(56 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-result .back-button {
    margin-top: min(90px, calc(90 / 1440 * 100vw));
  }
}
.product-search-result .back-button .p_button {
  margin-inline: auto;
}
.product-search-result .product-list {
  padding-inline: calc(20 / 375 * 100vw);
  margin-top: calc(36 / 375 * 100vw);
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(28 / 375 * 100vw) calc(15 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list {
    padding-inline: unset;
    margin-top: min(36px, calc(36 / 1440 * 100vw));
    grid-template-columns: repeat(4, 1fr);
    gap: min(28px, calc(28 / 1440 * 100vw)) min(6px, calc(6 / 1440 * 100vw));
  }
}
.product-search-result .product-list:has(.product-none) {
  display: block;
}
.product-search-result .product-list:has(.product-none) .product-none {
  background: var(--color-surface);
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 500;
  text-align: center;
  border-radius: calc(4 / 375 * 100vw);
  padding-block: calc(32 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list:has(.product-none) .product-none {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
    border-radius: min(4px, calc(4 / 1440 * 100vw));
    padding-block: min(64px, calc(64 / 1440 * 100vw));
  }
}
.product-search-result .product-list .product-item {
  position: relative;
}
.product-search-result .product-list .product-item:has(.add-to-contact) {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list .product-item:has(.add-to-contact) {
    gap: min(8px, calc(8 / 1440 * 100vw));
  }
}
.product-search-result .product-list .product-item .product-link {
  display: block;
  background-color: var(--color-surface);
  border-radius: calc(4 / 375 * 100vw);
  border: 1px solid transparent;
  transition: border var(--transition-speed) var(--bezier);
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list .product-item .product-link {
    border-radius: min(4px, calc(4 / 1440 * 100vw));
  }
}
@media (any-hover: hover) {
  .product-search-result .product-list .product-item .product-link:hover {
    border-color: var(--color-brand-lightblue);
  }
  .product-search-result .product-list .product-item .product-link:hover .product-image img {
    scale: 1;
  }
}
.product-search-result .product-list .product-item .product-link .product-image {
  overflow: hidden;
  border-radius: calc(4 / 375 * 100vw) calc(4 / 375 * 100vw) 0 0;
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list .product-item .product-link .product-image {
    border-radius: min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) 0 0;
  }
}
.product-search-result .product-list .product-item .product-link .product-image img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 4/3;
  transition: scale var(--transition-speed) var(--bezier);
  scale: 1.05;
}
.product-search-result .product-list .product-item .product-link .product-title {
  padding: calc(6 / 375 * 100vw) calc(8 / 375 * 100vw);
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list .product-item .product-link .product-title {
    padding: min(8px, calc(8 / 1440 * 100vw)) min(12px, calc(12 / 1440 * 100vw));
  }
}
.product-search-result .product-list .product-item .product-link .product-title .product-name {
  font-size: calc(var(--fs-s) / 375 * 100vw);
  font-weight: 500;
  line-height: 157%;
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list .product-item .product-link .product-title .product-name {
    font-size: min(calc(var(--fs-l) * 1px), calc(var(--fs-l) / 1440 * 100vw));
  }
}
.product-search-result .product-list .product-item .product-link .product-title .product-number {
  font-family: var(--num);
  font-size: calc(var(--fs-xs) / 375 * 100vw);
  line-height: 183.333%;
}
@media print, screen and (min-width: 768px) {
  .product-search-result .product-list .product-item .product-link .product-title .product-number {
    font-size: min(calc(var(--fs-m) * 1px), calc(var(--fs-m) / 1440 * 100vw));
  }
}

.floatButton {
  background: rgba(0, 0, 0, 0.4);
  padding: calc(36 / 375 * 100vw) calc(24 / 375 * 100vw);
  position: fixed;
  z-index: 999;
  bottom: 0;
  width: 100%;
  transition: translate var(--transition-speed) var(--bezier);
  translate: 0 100%;
}
@media print, screen and (min-width: 768px) {
  .floatButton {
    padding: min(36px, calc(36 / 1440 * 100vw));
  }
}
.floatButton.is-show {
  translate: 0 0;
}
.floatButton .p_button {
  margin-inline: auto;
}

/**
 * Swiper 11.1.14
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2024 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: September 12, 2024
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, 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");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color:#007aff;
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide {
  transform-style: preserve-3d;
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size:44px;
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

.swiper-button-next svg, .swiper-button-prev svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  transform-origin: center;
}

.swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg);
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 0.3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  backface-visibility: hidden;
  overflow: hidden;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsIl9yZXNldC5zY3NzIiwic3R5bGUuc2NzcyIsIl9taXhpbnMuc2NzcyIsIjxubyBzb3VyY2U+IiwiY29tbW9uL19oZWFkZXIuc2NzcyIsImNvbW1vbi9fZm9vdGVyLnNjc3MiLCJjb21tb24vX3NpZGViYXIuc2NzcyIsImNvbXBvbmVudC9faW5kZXguc2NzcyIsImNvbXBvbmVudC9fcGFnZXRpdGxlLnNjc3MiLCJjb21wb25lbnQvX2V4dGVuZGVkdGl0bGUuc2NzcyIsImNvbXBvbmVudC9fc3BlYWtlcl9oZWFkaW5nLnNjc3MiLCJjb21wb25lbnQvX2NhdGNoY29weS5zY3NzIiwiY29tcG9uZW50L19jYXRjaGNvcHlfaW1hZ2Uuc2NzcyIsImNvbXBvbmVudC9fY2F0Y2hjb3B5X2ltYWdlX2JnLnNjc3MiLCJjb21wb25lbnQvX2NvbnZlcnNpb24uc2NzcyIsImNvbXBvbmVudC9faGVhZGluZy5zY3NzIiwiY29tcG9uZW50L190ZXh0X2xlYWQuc2NzcyIsImNvbXBvbmVudC9fdGV4dC5zY3NzIiwiY29tcG9uZW50L190ZXh0X2ltYWdlLnNjc3MiLCJjb21wb25lbnQvX3RleHRfbWFwLnNjc3MiLCJjb21wb25lbnQvX21hcC5zY3NzIiwiY29tcG9uZW50L19pbWFnZS5zY3NzIiwiY29tcG9uZW50L19tb3ZpZS5zY3NzIiwiY29tcG9uZW50L19wYW5lbC5zY3NzIiwiY29tcG9uZW50L19zcGVha2VyLnNjc3MiLCJjb21wb25lbnQvX2NvbHVtbi5zY3NzIiwiY29tcG9uZW50L190YWJsZS5zY3NzIiwiY29tcG9uZW50L19idXR0b24uc2NzcyIsImNvbXBvbmVudC9fYW5jaG9yLnNjc3MiLCJjb21wb25lbnQvX251bS5zY3NzIiwiY29tcG9uZW50L193eXNpd3lnLnNjc3MiLCJjb21wb25lbnQvX2NhdGFsb2cuc2NzcyIsImNvbXBvbmVudC9fZmFxLnNjc3MiLCJjb21wb25lbnQvX21lbWJlci5zY3NzIiwiY29tcG9uZW50L19pZnJhbWUuc2NzcyIsIm5hdmlnYXRpb24vX2JyZWFkY3J1bWJzLnNjc3MiLCJuYXZpZ2F0aW9uL19wYWdlbmF0ZS5zY3NzIiwibmF2aWdhdGlvbi9fcGFnZW5hdGVfZGV0YWlsLnNjc3MiLCJuYXZpZ2F0aW9uL19sb2NhbG5hdi5zY3NzIiwibmF2aWdhdGlvbi9fbG9jYWxuYXZfc3ViLnNjc3MiLCJuYXZpZ2F0aW9uL19sb2NhbG5hdl9ib3R0b20uc2NzcyIsIm5hdmlnYXRpb24vX2FyY2hpdmVuYXYuc2NzcyIsIm5hdmlnYXRpb24vX25ld3NsaXN0LnNjc3MiLCJuYXZpZ2F0aW9uL19hcnRpY2xlbGlzdC5zY3NzIiwibmF2aWdhdGlvbi9fbWFpbmNhdG5hdi5zY3NzIiwic3RhdGljL19zbGlkZXIuc2NzcyIsInN0YXRpYy9fc2xpZGVyX2Iuc2NzcyIsInN0YXRpYy9faWNvbl9udW0uc2NzcyIsInN0YXRpYy9faW1hZ2VfbGluay5zY3NzIiwic3RhdGljL19oZWFkaW5nX2xpbmsuc2NzcyIsIl90b3Auc2NzcyIsIl91bmlxLnNjc3MiLCJfcHJvZHVjdHNlYXJjaC5zY3NzIiwiX3N3aXBlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjtFQUNFLFNBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0VBQ0Esd0JBQUE7QURFRjs7QUNBQTtFQUNFLGNBQUE7QURHRjs7QUNEQTtFQUNFLGdCQUFBO0FESUY7O0FDRkE7RUFDRSx5QkFBQTtFQUNBLGlCQUFBO0FES0Y7O0FDSEE7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0Esc0JBQUE7QURNRjs7QUNKQTtFQUNFLFlBQUE7QURPRjs7QUNMQTtFQUNFLFdBQUE7RUFDQSxhQUFBO0FEUUY7O0FDTkE7RUFDRSxZQUFBO0FEU0Y7O0FDUEE7RUFDRSxjQUFBO0FEVUY7O0FFbENBO0VBQ0csc0JBQUE7QUZxQ0g7O0FFbkNBOztFQUVHLHNCQUFBO0FGc0NIOztBRXBDQTtFQUNBLGFBQUE7QUZ1Q0E7O0FFckNBO0VB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QkFBQTtFSncrREU7RVkxN0RJO0lSOUNOLGdCQUFBO0lBQUEsbUJBQUE7RUpnZ0VFO0VZdDhERTtJUjFESixnQkFBQTtJQUFBLG1CQUFBO0VKOG9FRTtFWXBsRUU7SVIxREosZ0JBQUE7SUFBQSxxQkFBQTtJQUFBLG1CQUFBO0VKOG9FRTtFNEN0bUVNO0l4Q3hDUixnQkFBQTtJQUFBLG1CQUFBO0lBQUEsd0JBQUE7RUp5K01BO0U0Q2o4TVE7SXhDeENSLGdCQUFBO0lBQUEsbUJBQUE7SUFBQSx3QkFBQTtFSnkrTUE7RTRDbDdNUTtJeEN2RFIsZ0JBQUE7SUFBQSxtQkFBQTtFSjYvTUE7RTRDOTRNUTtJeEMvR1IsZ0JBQUE7SUFBQSxtQkFBQTtJQUFBLHdCQUFBO0VKbWtOQTtFbUQ3dExRO0kvQ3QyQlIsZ0JBQUE7SUFBQSxtQkFBQTtJQUFBLHdCQUFBO0VKK3ZSQTtFbUR6NVBRO0kvQ3QyQlIsZ0JBQUE7SUFBQSxtQkFBQTtJQUFBLHdCQUFBO0VKK3ZSQTtFbURoNVBRO0kvQy8yQlIsZ0JBQUE7SUFBQSxtQkFBQTtFSjJ3UkE7RW1EdDNQQTtJL0NyNUJBLGdCQUFBO0lBQUEsbUJBQUE7RUowMFJFO0VtRHI3UEY7SS9DcjVCQSxnQkFBQTtJQUFBLHFCQUFBO0lBQUEsbUJBQUE7RUowMFJFO0VtRDdtUE07SS9DN3RDUixnQkFBQTtJQUFBLG1CQUFBO0VKNnRTRTtFbURoZ1FNO0kvQzd0Q1IsZ0JBQUE7SUFBQSxxQkFBQTtJQUFBLG1CQUFBO0VKNnRTRTtFbURyL1BNO0kvQ3h1Q1IsZ0JBQUE7SUFBQSxtQkFBQTtJQUFBLHdCQUFBO0VKaXZTRTtFbUR6Z1FNO0kvQ3h1Q1IsZ0JBQUE7SUFBQSxtQkFBQTtJQUFBLHdCQUFBO0VKaXZTRTtFbUR2OFBFO0kvQzF5Q0osZ0JBQUE7SUFBQSxtQkFBQTtFSm16U0U7RW1EemdRRTtJL0MxeUNKLGdCQUFBO0lBQUEscUJBQUE7SUFBQSxtQkFBQTtFSm16U0U7RW1EejhQRTtJL0MxMkNKLGdCQUFBO0lBQUEsbUJBQUE7RUo0M1NFO0VtRGxoUUU7SS9DMTJDSixnQkFB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c0Msd0JBQUE7QXREbXJYNTVmOztBc0RuclhvN2Y7RUFBeUYsb0JBQUE7QXREdXJYN2dnQjs7QXNEdnJYaWlnQjtFQUFrRyxvQkFBQTtFQUFvQixtQkFBQTtBdEQ0clh2cGdCOztBc0Q1clgwcWdCO0VBQWlDLGtCQUFBO0VBQWtCLE9BQUE7RUFBTyxXQUFBO0VBQVcsV0FBQTtFQUFXLFlBQUE7RUFBWSxZQUFBO0VBQVcsVUFBQTtBdERzc1hqeGdCOztBc0R0c1gyeGdCO0VBQXdDLFdBQUE7RUFBVyxnQkFBQTtFQUFnQixrQkFBQTtFQUFrQixPQUFBO0VBQU8sTUFBQTtFQUFNLFNBQUE7RUFBUyxRQUFBO0VBQVEsa0JBQUE7QXREaXRYOTRnQjs7QXNEanRYZzZnQjtFQUE4QyxvQkFBQTtFQUFvQixtQkFBQTtBdERzdFhsK2dCOztBc0R0dFhxL2dCO0VBQWtRLFVBQUE7RUFBNkMsMkJBQUE7QXRENHRYcHloQjs7QXNENXRYK3poQjtFQUFvQixpQkFBQTtBdERndVhuMWhCOztBc0RodVhvMmhCO0VBQTJCLG9CQUFBO0VBQXVELDJCQUFBO0VBQTJCLFVBQUE7QXREdXVYajloQjs7QXNEdnVYMjloQjtFQUF5QyxvQkFBQTtBdEQydVhwZ2lCOztBc0QzdVh3aGlCO0VBQXlGLG9CQUFBO0F0RCt1WGpuaUI7O0FzRC91WHFvaUI7RUFBa1EsVUFBQTtFQUE2QywyQkFBQTtBdERxdlhwN2lCOztBc0RydlgrOGlCO0VBQWtFLDJCQUFBO0VBQTJCLGdCQUFBO0VBQWdCLCtDQUFBO0F0RDR2WDVqakI7O0FzRDV2WHltakI7RUFBcUIsaUJBQUE7QXREZ3dYOW5qQjs7QXNEaHdYK29qQjtFQUE0QiwrQkFBQTtFQUFrRSwyQkFBQTtFQUEyQixnQkFBQTtBdER1d1h4d2pCIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbmh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLCBhLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsIGRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCwgc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhciwgYiwgdSwgaSwgY2VudGVyLCBkbCwgZHQsIGRkLCBvbCwgdWwsIGxpLCBmaWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCwgdGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsIGFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLCBmaWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LCB0aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IHVuc2V0O1xuICBib3JkZXI6IDA7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbm9sLCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbmNhcHRpb24sIHRoLCB0ZCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnEsIGJsb2NrcXVvdGUge1xuICBxdW90ZXM6IG5vbmU7XG59XG5cbnE6YmVmb3JlLCBxOmFmdGVyLCBibG9ja3F1b3RlOmJlZm9yZSwgYmxvY2txdW90ZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbmEgaW1nIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbio6YmVmb3JlLFxuKjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbio6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiA2Mi41JTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuYm9keSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWRhcmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1saWdodCk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1nb3RoaWMpO1xuICBmb250LW9wdGljYWwtc2l6aW5nOiBhdXRvO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbm9ybWFsKTtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiB2YXIoLS1mb250LWZlYXR1cmUtc2V0dGluZ3MpO1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cbmJvZHkuZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkuZml4ZWQge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cbmJvZHkuZml4ZWQ6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKSAwLjFzLCB6LWluZGV4IDBzIHZhcigtLWJlemllcik7XG59XG5ib2R5LmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnJlZCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWVycm9yKTtcbn1cblxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG5sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEsIGxhYmVsLCBhIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuYSB7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuYVtocmVmXj1cInRlbDpcIl0ge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbmE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5hYmJyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG5zdXAsXG5zdWIge1xuICBoZWlnaHQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG59XG5cbnN1cCB7XG4gIGJvdHRvbTogMC43NWV4O1xufVxuXG5zdWIge1xuICB0b3A6IDAuNWV4O1xufVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cbi5oaWRkZW4tc3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tc3Age1xuICAgIGRpc3BsYXk6IHVuc2V0O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGlkZGVuLXBjIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDgwcHgpIHtcbiAgLmhpZGRlbi1vdmVyLXRibCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhpZGRlbi1vdmVyLXRiIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCkge1xuICAuaGlkZGVuLW92ZXItc3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmFuY2hvcm0gLmFuY2hvcl9oaWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYW5jaG9ybSAuYW5jaG9yX2hpZGUge1xuICAgIHRvcDogbWF4KC00OXB4LCBjYWxjKC00OSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5zdmdfZGVmIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cblxuLnBfYnV0dG9uOm5vdCguY3YpIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJiZWZvcmUgdGV4dCBhZnRlclwiO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZzogY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IGNhbGMoMTQyIC8gMzc1ICogMTAwdncpO1xuICAvKlxuICAmW3RhcmdldD1cIl9ibGFua1wiXSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogdncoNHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBnYXA6IHBjKDRweCk7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgd2lkdGg6IHZ3KDE0cHgpO1xuICAgICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgd2lkdGg6IHBjKDE4cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE4cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAgICovXG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBfYnV0dG9uOm5vdCguY3YpIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBtaW4td2lkdGg6IG1pbigyMjRweCwgY2FsYygyMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucF9idXR0b246bm90KC5jdikucmV2ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbn1cbi5wX2J1dHRvbjpub3QoLmN2KS5yZXZlcnNlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAucF9idXR0b246bm90KC5jdikucmV2ZXJzZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbiAgfVxufVxuLnBfYnV0dG9uOm5vdCguY3YpOjpiZWZvcmUge1xuICBncmlkLWFyZWE6IGJlZm9yZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICByb3RhdGU6IHogMTgwZGVnO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wX2J1dHRvbjpub3QoLmN2KTo6YmVmb3JlIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBfYnV0dG9uOm5vdCguY3YpOjphZnRlciB7XG4gIGp1c3RpZnktc2VsZjogZW5kO1xuICBncmlkLWFyZWE6IGFmdGVyO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wX2J1dHRvbjpub3QoLmN2KTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLnBfYnV0dG9uOm5vdCguY3YpOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgfVxuICAucF9idXR0b246bm90KC5jdik6aG92ZXI6OmFmdGVyIHtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgfVxuICAucF9idXR0b246bm90KC5jdik6aG92ZXI6OmJlZm9yZSB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbn1cbi5wX2J1dHRvbjpub3QoLmN2KSBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4ucF9idXR0b24uY3Yge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImJlZm9yZSB0ZXh0IGFmdGVyXCI7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogY2FsYygxNDIgLyAzNzUgKiAxMDB2dyk7XG4gIC8qXG4gICZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2dyg0cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGdhcDogcGMoNHB4KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICB3aWR0aDogdncoMTRweCk7XG4gICAgICBoZWlnaHQ6IHZ3KDE0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogcGMoMThweCk7XG4gICAgICAgIGhlaWdodDogcGMoMThweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2Vjb25kYXJ5KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWNvbmRhcnkpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wX2J1dHRvbi5jdiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLXdpZHRoOiBtaW4oMjI0cHgsIGNhbGMoMjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBfYnV0dG9uLmN2LnJldmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG59XG4ucF9idXR0b24uY3YucmV2ZXJzZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLnBfYnV0dG9uLmN2LnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5wX2J1dHRvbi5jdjo6YmVmb3JlIHtcbiAgZ3JpZC1hcmVhOiBiZWZvcmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgcm90YXRlOiB6IDE4MGRlZztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucF9idXR0b24uY3Y6OmJlZm9yZSB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wX2J1dHRvbi5jdjo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgZ3JpZC1hcmVhOiBhZnRlcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucF9idXR0b24uY3Y6OmFmdGVyIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5wX2J1dHRvbi5jdjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gIH1cbiAgLnBfYnV0dG9uLmN2OmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbiAgLnBfYnV0dG9uLmN2OmhvdmVyOjpiZWZvcmUge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG59XG4ucF9idXR0b24uY3Ygc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucF9idXR0b24uY3Yge1xuICAgIG1pbi13aWR0aDogbWluKDMyMHB4LCBjYWxjKDMyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLnBfYnV0dG9uLmN2OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWNvbmRhcnkpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2Vjb25kYXJ5KTtcbiAgfVxufVxuXG5ib2R5Om5vdCgudG9wcGFnZSkgbWFpbiB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlaWdodC1oZWFkZXIpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHk6bm90KC50b3BwYWdlKSBtYWluIHtcbiAgICBwYWRkaW5nLXRvcDogbWluKGNhbGModmFyKC0taGVpZ2h0LWhlYWRlci1wYykgKiAxcHgpLCBjYWxjKHZhcigtLWhlaWdodC1oZWFkZXItcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuI3dyYXBwZXIge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5oZWFkZXIgKyAjd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlaWdodC1oZWFkZXIpICsgMzBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyICsgI3dyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlaWdodC1oZWFkZXItcGMpICsgMzVweCk7XG4gIH1cbn1cbi50b3BwYWdlICN3cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4uc2luayAjd3JhcHBlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2luayAjd3JhcHBlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuI3dyYXBwZXIgLmNvbnRlbnRzSW5uZXIge1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW4tdG9wOiBjYWxjKDQwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN3cmFwcGVyIC5jb250ZW50c0lubmVyOmhhcygjc2lkZWJhcikge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZTogXCJzaWRlYmFyIG1haW5cIiAxZnIvbWluKDI4OHB4LCBjYWxjKDI4OCAvIDE0NDAgKiAxMDB2dykpIDFmcjtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgbWFyZ2luLXRvcDogbWluKDU2cHgsIGNhbGMoNTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZ2FwOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjd3JhcHBlciAuY29udGVudHNJbm5lcjpoYXMoI3NpZGViYXIpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuI3dyYXBwZXIgLmNvbnRlbnRzSW5uZXIgbWFpbiB7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDU2IC8gMzc1ICogMTAwdncpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN3cmFwcGVyIC5jb250ZW50c0lubmVyIG1haW4ge1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oODBweCwgY2FsYyg4MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN3cmFwcGVyIC5jb250ZW50c0lubmVyIG1haW4ge1xuICAgIGdyaWQtYXJlYTogbWFpbjtcbiAgfVxuICAjd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogdW5zZXQgIWltcG9ydGFudDtcbiAgfVxuICAjd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluID4gYTpmaXJzdC1jaGlsZCArICoge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gIH1cbiAgI3dyYXBwZXIgLmNvbnRlbnRzSW5uZXIgbWFpbiAuY29udGFpbmVyLFxuI3dyYXBwZXIgLmNvbnRlbnRzSW5uZXIgbWFpbiAuaW5uZXIsXG4jd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluIC5jb21wb25lbnQudHlwZV90YWJsZSxcbiN3cmFwcGVyIC5jb250ZW50c0lubmVyIG1haW4gLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyxcbiN3cmFwcGVyIC5jb250ZW50c0lubmVyIG1haW4gLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24sXG4jd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluIC5oZWFkaW5nTGFyZ2UsXG4jd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluIC5oZWFkaW5nU21hbGwsXG4jd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluIC5tX3RhZ2xpc3Qge1xuICAgIHdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICB9XG4gICN3cmFwcGVyIC5jb250ZW50c0lubmVyIG1haW4gLmNvbXBvbmVudC50eXBlX3RleHQgLmlubmVyIC50ZXh0IHtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICB9XG4gICN3cmFwcGVyIC5jb250ZW50c0lubmVyIG1haW4gLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0LCAjd3JhcHBlciAuY29udGVudHNJbm5lciBtYWluIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3Qge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cbiAgI3dyYXBwZXIgLmNvbnRlbnRzSW5uZXIgbWFpbiAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAuaW1hZ2UgaW1nIHtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gIH1cbiAgI3dyYXBwZXIgLmNvbnRlbnRzSW5uZXIgbWFpbiAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAuaW1hZ2Uge1xuICAgIHdpZHRoOiA4MiU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjd3JhcHBlciAuY29udGVudHNJbm5lciAjc2lkZWJhciB7XG4gICAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xuICB9XG59XG5cbi5mYWRlVXAge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2xhdGU6IDAgY2FsYygzMCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSBjdWJpYy1iZXppZXIoMCwgMS40MiwgMC45OCwgMS4wOSkgMC41cywgdHJhbnNsYXRlIGN1YmljLWJlemllcigwLCAxLjQyLCAwLjk4LCAxLjA5KSAwLjVzO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mYWRlVXAge1xuICAgIHRyYW5zbGF0ZTogMCBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uZmFkZVVwLmlzLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zbGF0ZTogMCAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5mYWRlVXAuZGVsYXktcGMge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XG4gIH1cbn1cblxuaHRtbC5sZW5pcyxcbmh0bWwubGVuaXMgYm9keSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmxlbmlzLmxlbmlzLXNtb290aCB7XG4gIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xufVxuXG4ubGVuaXMubGVuaXMtc21vb3RoIFtkYXRhLWxlbmlzLXByZXZlbnRdIHtcbiAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbn1cblxuLmxlbmlzLmxlbmlzLXN0b3BwZWQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubGVuaXMubGVuaXMtc2Nyb2xsaW5nIGlmcmFtZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5odG1sLmlzLWNoYW5naW5nIC50cmFuc2l0aW9uLWZhZGUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICBvcGFjaXR5OiAxO1xufVxuXG5odG1sLmlzLWFuaW1hdGluZyAudHJhbnNpdGlvbi1mYWRlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmNvdmVyT3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuLmNvdmVyT3V0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgYm90dG9tOiAtMXB4O1xuICBsZWZ0OiAtMXB4O1xuICByaWdodDogLTFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGhpcmQpO1xuICB6LWluZGV4OiAyMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDEsIDAsIDAsIDEpIDBzO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbn1cbi5jb3Zlck91dDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQpO1xuICB6LWluZGV4OiAxOTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgY3ViaWMtYmV6aWVyKDEsIDAsIDAsIDEpIDAuM3M7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xufVxuLmNvdmVyT3V0LmlzLWFjdGl2ZTo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG59XG4uY292ZXJPdXQuaXMtYWN0aXZlOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApO1xufVxuXG5oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNsYXRlIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdykgdmFyKC0tYmV6aWVyKTtcbn1cbmJvZHkuaXMtZG93biBoZWFkZXIjaGVhZGVyRGVmYXVsdCB7XG4gIHRyYW5zbGF0ZTogMCAtMTIwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBib2R5LmlzLWRvd24gaGVhZGVyI2hlYWRlckRlZmF1bHQge1xuICAgIHRyYW5zbGF0ZTogMCBtYXgoLTkycHgsIGNhbGMoLTkyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbmJvZHkuaXMtZml4ZWQgaGVhZGVyI2hlYWRlckRlZmF1bHQge1xuICB0cmFuc2xhdGU6IDAgLTEyMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keS5pcy1maXhlZCBoZWFkZXIjaGVhZGVyRGVmYXVsdCB7XG4gICAgdHJhbnNsYXRlOiAwIG1heCgtOTJweCwgY2FsYygtOTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuaGVhZGVyI2hlYWRlckRlZmF1bHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbn1cbmhlYWRlciNoZWFkZXJUb3Age1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50IHtcbiAgaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cbmhlYWRlciAuaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogY2FsYyh2YXIoLS1oZWlnaHQtaGVhZGVyKSAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllciksIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgcGFkZGluZzogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDY0IC8gMzc1ICogMTAwdncpIGNhbGMoMTIgLyAzNzUgKiAxMDB2dykgY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIgLmlubmVyIHtcbiAgICBoZWlnaHQ6IG1pbihjYWxjKHZhcigtLWhlaWdodC1oZWFkZXItcGMpICogMXB4KSwgY2FsYyh2YXIoLS1oZWlnaHQtaGVhZGVyLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctYmxvY2s6IHVuc2V0O1xuICAgIHBhZGRpbmctaW5saW5lOiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5oZWFkZXIgLmlubmVyICNsb2dvIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICBoZWFkZXIgLmlubmVyICNsb2dvIGEge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG4gIGhlYWRlciAuaW5uZXIgI2xvZ28gYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG5oZWFkZXIgLmlubmVyICNsb2dvIGEgaW1nIHtcbiAgd2lkdGg6IGNhbGMoMTMyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGhlYWRlciAuaW5uZXIgI2xvZ28gYSBpbWcge1xuICAgIHdpZHRoOiBtaW4oMjIwcHgsIGNhbGMoMjIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbmhlYWRlciAuaW5uZXIgLmxhbmdQQyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyIC5pbm5lciAubGFuZ1BDIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5oZWFkZXIgLmlubmVyIC5sYW5nUEMgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xufVxuaGVhZGVyIC5pbm5lciAubGFuZ1BDIHVsIGxpIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbn1cbmhlYWRlciAuaW5uZXIgLmxhbmdQQyB1bCBsaTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIi9cIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5oZWFkZXIgLmlubmVyIC5sYW5nUEMgdWwgbGk6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIGhlYWRlciAuaW5uZXIgLmxhbmdQQyB1bCBsaSBhIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG4gIGhlYWRlciAuaW5uZXIgLmxhbmdQQyB1bCBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKSAhaW1wb3J0YW50O1xuICB9XG4gIGhlYWRlciAuaW5uZXIgLmxhbmdQQyB1bCBsaSBhW3RhcmdldD1fYmxhbmtdOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKTtcbiAgfVxufVxuaGVhZGVyIC5pbm5lciAuZ25hdlBDIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIgLmlubmVyIC5nbmF2UEMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIGhlYWRlciAuaW5uZXIgLmduYXZQQyB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IG1pbigzMHB4LCBjYWxjKDMwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IG1pbigyOHB4LCBjYWxjKDI4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICB9XG4gIGhlYWRlciAuaW5uZXIgLmduYXZQQyB1bCBsaSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nLWJsb2NrOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQgYW5kIChhbnktaG92ZXI6IGhvdmVyKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIGhlYWRlciAuaW5uZXIgLmduYXZQQyB1bCBsaSBhIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG4gIGhlYWRlciAuaW5uZXIgLmduYXZQQyB1bCBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKSAhaW1wb3J0YW50O1xuICB9XG4gIGhlYWRlciAuaW5uZXIgLmduYXZQQyB1bCBsaSBhW3RhcmdldD1fYmxhbmtdOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGhlYWRlciAuaW5uZXIgLmNvbnRhY3Qge1xuICAgIG1hcmdpbi1sZWZ0OiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5oZWFkZXIgLmlubmVyIC5jb250YWN0IGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIgLmlubmVyIC5jb250YWN0IGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgaGVhZGVyIC5pbm5lciAuY29udGFjdCBhOmhvdmVyIHNwYW4ge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpO1xuICB9XG59XG5oZWFkZXIgLmlubmVyIC5jb250YWN0IGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDM2IC8gMzc1ICogMTAwdncpO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgYmFja2dyb3VuZDogdXJsKFwiL2ltYWdlcy9pY29uX21haWwuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyL2NvbnRhaW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyIC5pbm5lciAuY29udGFjdCBhOjphZnRlciB7XG4gICAgd2lkdGg6IG1pbig0NXB4LCBjYWxjKDQ1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbmhlYWRlciAuaW5uZXIgLmNvbnRhY3QgYSBzcGFuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBoZWFkZXIgLmlubmVyIC5jb250YWN0IGEgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtcykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG59XG5oZWFkZXIgLmlubmVyIC5tZW51QnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICB3aWR0aDogY2FsYyg0OCAvIDM3NSAqIDEwMHZ3KTtcbiAgaGVpZ2h0OiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwMDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyIC5pbm5lciAubWVudUJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuaGVhZGVyIC5pbm5lciAubWVudUJ1dHRvbiBzcGFuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gIHdpZHRoOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoMiAvIDM3NSAqIDEwMHZ3KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXBpbGwpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbn1cbmhlYWRlciAuaW5uZXIgLm1lbnVCdXR0b24gc3Bhbi50b3Age1xuICB0b3A6IGNhbGMoMTcgLyAzNzUgKiAxMDB2dyk7XG59XG5oZWFkZXIgLmlubmVyIC5tZW51QnV0dG9uIHNwYW4ubWlkZGxlLCBoZWFkZXIgLmlubmVyIC5tZW51QnV0dG9uIHNwYW4uYmFjayB7XG4gIHRvcDogY2FsYygyMyAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xufVxuaGVhZGVyIC5pbm5lciAubWVudUJ1dHRvbiBzcGFuLmJvdHRvbSB7XG4gIHRvcDogY2FsYygyOSAvIDM3NSAqIDEwMHZ3KTtcbn1cbmhlYWRlciAuaW5uZXIgLm1lbnVCdXR0b24uaXMtYWN0aXZlIHNwYW4udG9wIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaGVhZGVyIC5pbm5lciAubWVudUJ1dHRvbi5pcy1hY3RpdmUgc3Bhbi5ib3R0b20ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaGVhZGVyIC5pbm5lciAubWVudUJ1dHRvbi5pcy1hY3RpdmUgc3Bhbi5taWRkbGUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2NhbGVYKDEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCk7XG59XG5oZWFkZXIgLmlubmVyIC5tZW51QnV0dG9uLmlzLWFjdGl2ZSBzcGFuLmJhY2sge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHNjYWxlWCgxKTtcbn1cblxuI2duYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICB6LWluZGV4OiA5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgdHJhbnNsYXRlOiAwIC0xMTAlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2xhdGUgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKSwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDc2IC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWlubGluZTogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjZ25hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuI2duYXYuaXMtYWN0aXZlIHtcbiAgdHJhbnNsYXRlOiAwIDA7XG4gIG9wYWNpdHk6IDE7XG59XG4jZ25hdiBuYXYgdWwgbGkgYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDE4IC8gMzc1ICogMTAwdncpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbiNnbmF2IC5sYW5nIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbiNnbmF2IC5sYW5nIHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuI2duYXYgLmxhbmcgdWwgbGkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMjMzLjMzMyU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xufVxuI2duYXYgLmxhbmcgdWwgbGk6OmFmdGVyIHtcbiAgY29udGVudDogXCIvXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI2duYXYgLmxhbmcgdWwgbGk6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICNnbmF2IC5sYW5nIHVsIGxpIGEge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIH1cbiAgI2duYXYgLmxhbmcgdWwgbGkgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWNvcnBvcmF0ZSkgIWltcG9ydGFudDtcbiAgfVxuICAjZ25hdiAubGFuZyB1bCBsaSBhW3RhcmdldD1fYmxhbmtdOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKTtcbiAgfVxufVxuXG4jd3JhcHBlcjpoYXMoLmNvbnRlbnRzSW5uZXIgI3NpZGViYXIpICsgZm9vdGVyLFxuYm9keTpoYXMoLnRvcF9jb252ZXJzaW9uKSBmb290ZXIsXG5ib2R5OmhhcygudG9wQkcpIGZvb3RlcixcbmJvZHk6aGFzKC5hYm91dFJlbGF0ZSkgZm9vdGVyLFxuYm9keS50b3BwYWdlIGZvb3RlciB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgYm9keTpoYXMoLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMsIC5icmVhZGNydW1icy5jb21wb25lbnQudHlwZV9wYWdlbGlzdCkgZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgfVxufVxuXG5mb290ZXIge1xuICBtYXJnaW4tdG9wOiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBmb290ZXIge1xuICAgIG1hcmdpbi10b3A6IG1pbig5NnB4LCBjYWxjKDk2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuI2Zvb3Rlck5hdiB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjZm9vdGVyTmF2IHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuI2Zvb3Rlck5hdiAuaW5uZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzJBNDU3ODtcbiAgcGFkZGluZy1ibG9jazogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNmb290ZXJOYXYgLmlubmVyIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBtaW4oMTAwcHgsIGNhbGMoMTAwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI2Zvb3Rlck5hdiAuaW5uZXIgLmNvcnBpbmZvIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNmb290ZXJOYXYgLmlubmVyIC5jb3JwaW5mbyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jZm9vdGVyTmF2IC5pbm5lciAuY29ycGluZm8gcCBpbWcge1xuICB3aWR0aDogY2FsYygyNDAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3Rlck5hdiAuaW5uZXIgLmNvcnBpbmZvIHAgaW1nIHtcbiAgICB3aWR0aDogbWluKDI3NnB4LCBjYWxjKDI3NiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jZm9vdGVyTmF2IC5pbm5lciAuY29ycGluZm8gLmNvbnRhY3Qge1xuICBtYXJnaW4tdG9wOiBjYWxjKDMyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNmb290ZXJOYXYgLmlubmVyIC5jb3JwaW5mbyAuY29udGFjdCB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbiNmb290ZXJOYXYgLmlubmVyIC5jb3JwaW5mbyAuY29udGFjdCBhZGRyZXNzIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3Rlck5hdiAuaW5uZXIgLmNvcnBpbmZvIC5jb250YWN0IGFkZHJlc3Mge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiNmb290ZXJOYXYgLmlubmVyIC5mb290bmF2IHtcbiAgbWFyZ2luLXRvcDogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgZ2FwOiBjYWxjKDM2IC8gMzc1ICogMTAwdncpIGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYge1xuICAgIG1hcmdpbi10b3A6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICBnYXA6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjZm9vdGVyTmF2IC5pbm5lciAuZm9vdG5hdiAudW5pdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQgaDIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14cykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQgaDIge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiNmb290ZXJOYXYgLmlubmVyIC5mb290bmF2IC51bml0IGgyIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQgaDIgYSB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDEycHgsIGNhbGMoMTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQgdWwge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNmb290ZXJOYXYgLmlubmVyIC5mb290bmF2IC51bml0IHVsIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXMpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1zKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi10b3A6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQgdWwgKyBoMiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQgdWwgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3Rlck5hdiAuaW5uZXIgLmZvb3RuYXYgLnVuaXQgdWwgbGkge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jZm9vdGVyTmF2IC5pbm5lciAuZm9vdG5hdiAudW5pdCB1bCBsaTo6YmVmb3JlIHtcbiAgY29udGVudDogXCItXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiNmb290ZXJOYXYgLmlubmVyIC5mb290bmF2IC51bml0IHVsIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjZm9vdGVyTmF2IC5pbm5lciAuZm9vdG5hdiAudW5pdCB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbiNmb290ZXJDb3B5cmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3RlckNvcHlyaWdodCB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbiNmb290ZXJDb3B5cmlnaHQgLmlubmVyIHtcbiAgcGFkZGluZy1ibG9jazogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3RlckNvcHlyaWdodCAuaW5uZXIge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDgwcHgsIGNhbGMoODAgLyAxNDQwICogMTAwdncpKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogbWluKDU0cHgsIGNhbGMoNTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI2Zvb3RlckNvcHlyaWdodCAuaW5uZXIgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IGNhbGMoMjggLyAzNzUgKiAxMDB2dyk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNmb290ZXJDb3B5cmlnaHQgLmlubmVyIHVsIHtcbiAgICBnYXA6IG1pbig1NHB4LCBjYWxjKDU0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI2Zvb3RlckNvcHlyaWdodCAuaW5uZXIgdWwgbGkge1xuICAgIGZsZXg6IGF1dG87XG4gIH1cbn1cbiNmb290ZXJDb3B5cmlnaHQgLmlubmVyIHVsIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNmb290ZXJDb3B5cmlnaHQgLmlubmVyIHVsIGxpIGEge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtcykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiNmb290ZXJDb3B5cmlnaHQgLmlubmVyIHAge1xuICBtYXJnaW4tdG9wOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHhzKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjZm9vdGVyQ29weXJpZ2h0IC5pbm5lciBwIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXMpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1zKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbiNwYWdldG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjcGFnZXRvcCB7XG4gICAgYm90dG9tOiB2YXIoLS1zcGFjZS14bGFyZ2UpO1xuICAgIHJpZ2h0OiB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gIH1cbn1cbiNwYWdldG9wIGEge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLXBhZ2V0b3ApO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1wYWdldG9wKTtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS13aWR0aC1wYWdldG9wLXBjKSBhdXRvO1xuICB3aWR0aDogdmFyKC0td2lkdGgtcGFnZXRvcC1wYyk7XG4gIGhlaWdodDogdmFyKC0td2lkdGgtcGFnZXRvcC1wYyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3BhZ2V0b3AgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgI3BhZ2V0b3AgYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG59XG4jcGFnZXRvcC5vbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbiNzaWRlYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGMoMTAwJSArICgxNTAgLyAzNzUgKiAxMDB2dykpKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgcGFkZGluZy1ibG9jazogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWlubGluZTogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjc2lkZWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiB1bnNldDtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IHVuc2V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbiN3cmFwcGVyICNzaWRlYmFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jc2lkZWJhci5pcy1zaG93IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuI3NpZGViYXIgLnNpZGViYXJIZWFkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNzaWRlYmFyIC5zaWRlYmFySGVhZGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10aGlyZCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQteHNtYWxsKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLW0pICogMXB4KSwgY2FsYyh2YXIoLS1mcy1tKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZzogbWluKDlweCwgY2FsYyg5IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKSBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jc2lkZWJhciAuZ25hdkNhdGVnb3JpZXNTUCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3NpZGViYXIgLmduYXZDYXRlZ29yaWVzU1Age1xuICAgIG1hcmdpbi10b3A6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiNzaWRlYmFyIC5iYW5uZXIge1xuICBtYXJnaW4tdG9wOiBjYWxjKDcwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNzaWRlYmFyIC5iYW5uZXIge1xuICAgIG1hcmdpbi10b3A6IG1pbig3MHB4LCBjYWxjKDcwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiNzaWRlYmFyIC5iYW5uZXIgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiBjYWxjKDIyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNzaWRlYmFyIC5iYW5uZXIgYSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDIycHgsIGNhbGMoMjIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50IGFuZCAoYW55LWhvdmVyOiBob3ZlciksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAoYW55LWhvdmVyOiBob3Zlcikge1xuICAjc2lkZWJhciAuYmFubmVyIGEge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG4gICNzaWRlYmFyIC5iYW5uZXIgYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG5cbiNzaWRlYmFyLW1lbnUtYnV0dG9uIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGxlZnQ6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQ6IHRvcC9jYWxjKDQ4IC8gMzc1ICogMTAwdncpIGF1dG8gbm8tcmVwZWF0IHVybCgvaW1hZ2VzL2ljb25fc2lkZWJhci5zdmcpO1xuICB3aWR0aDogY2FsYyg0OCAvIDM3NSAqIDEwMHZ3KTtcbiAgaGVpZ2h0OiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWNpcmNsZSk7XG4gIHotaW5kZXg6IDIwMDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKSwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xufVxuI3NpZGViYXItbWVudS1idXR0b24uaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGJvdHRvbTtcbn1cbiNzaWRlYmFyLW1lbnUtYnV0dG9uLmlzLXNjcm9sbCB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSAwLjVzO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNzaWRlYmFyLW1lbnUtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4jc2lkZWJhci1tZW51LWJ1dHRvbiBzcGFuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbXBvbmVudCBzdHJvbmcsIC5jb21wb25lbnQgYiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uY29tcG9uZW50IGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1kYXJrKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uY29tcG9uZW50IC50ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5jb21wb25lbnQgLnRleHQgcCB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50IC50ZXh0IHAge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQgLnRleHQgcC5ub3RlIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4cykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICBwYWRkaW5nLWJvdHRvbTogdW5zZXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudCAudGV4dCBwLm5vdGUge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHhzKSAqIDFweCksIGNhbGModmFyKC0tZnMteHhzKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50IC50ZXh0IHAuaGVhZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLWwpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTU1JTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgZ2FwOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50IC50ZXh0IHAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQgLnRleHQgcC5oZWFkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MyRThGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2xhdGU6IDAgY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50IC50ZXh0IHAuaGVhZGluZzpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQgLnRleHQgcC5oZWFkaW5nIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudCAudGV4dCBwIGltZy5tdC1pbWFnZS1sZWZ0LCAuY29tcG9uZW50IC50ZXh0IHAgaW1nLm10LWltYWdlLWNlbnRlciwgLmNvbXBvbmVudCAudGV4dCBwIGltZy5tdC1pbWFnZS1yaWdodCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi5jb21wb25lbnQgLnRleHQgcDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG4uY29tcG9uZW50IC50ZXh0IHVsLCAuY29tcG9uZW50IC50ZXh0IG9sIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQgLnRleHQgdWwsIC5jb21wb25lbnQgLnRleHQgb2wge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQgLnRleHQgdWw6bGFzdC1jaGlsZCwgLmNvbXBvbmVudCAudGV4dCBvbDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xufVxuLmNvbXBvbmVudCAudGV4dCB1bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG4uY29tcG9uZW50IC50ZXh0IHVsIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudCAudGV4dCB1bCBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQgLnRleHQgdWwgbGkgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uY29tcG9uZW50IC50ZXh0IHVsIGxpID4gdWwgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQgLnRleHQgdWwgbGkgPiB1bCA+IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQgLnRleHQgdWwgbGkgPiB1bCA+IGxpOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIi1cIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uY29tcG9uZW50IC50ZXh0IG9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cbi5jb21wb25lbnQgLnRleHQgb2wgbGkge1xuICBtYXJnaW4tbGVmdDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50IC50ZXh0IG9sIGxpIHtcbiAgICBtYXJnaW4tbGVmdDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudCAudGV4dCAucF9idXR0b24ge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImJlZm9yZSB0ZXh0IGFmdGVyXCI7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogY2FsYygxNDIgLyAzNzUgKiAxMDB2dyk7XG4gIC8qXG4gICZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2dyg0cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGdhcDogcGMoNHB4KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICB3aWR0aDogdncoMTRweCk7XG4gICAgICBoZWlnaHQ6IHZ3KDE0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogcGMoMThweCk7XG4gICAgICAgIGhlaWdodDogcGMoMThweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgKi9cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50IC50ZXh0IC5wX2J1dHRvbiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLXdpZHRoOiBtaW4oMjI0cHgsIGNhbGMoMjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudCAudGV4dCAucF9idXR0b24ucmV2ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbn1cbi5jb21wb25lbnQgLnRleHQgLnBfYnV0dG9uLnJldmVyc2U6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5jb21wb25lbnQgLnRleHQgLnBfYnV0dG9uLnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5jb21wb25lbnQgLnRleHQgLnBfYnV0dG9uOjpiZWZvcmUge1xuICBncmlkLWFyZWE6IGJlZm9yZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICByb3RhdGU6IHogMTgwZGVnO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQgLnRleHQgLnBfYnV0dG9uOjpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50IC50ZXh0IC5wX2J1dHRvbjo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgZ3JpZC1hcmVhOiBhZnRlcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50IC50ZXh0IC5wX2J1dHRvbjo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudCAudGV4dCAucF9idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICB9XG4gIC5jb21wb25lbnQgLnRleHQgLnBfYnV0dG9uOmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbiAgLmNvbXBvbmVudCAudGV4dCAucF9idXR0b246aG92ZXI6OmJlZm9yZSB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbn1cbi5jb21wb25lbnQgLnRleHQgLnBfYnV0dG9uIHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uY29tcG9uZW50IC50ZXh0IC5wX2J1dHRvbi5saW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA2Qzc1NTtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50IC50ZXh0IC5wX2J1dHRvbi5saW5lOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDZCNDREO1xuICB9XG59XG4uY29tcG9uZW50IC5pbWFnZSwgLmNvbXBvbmVudCAubW92aWUsIC5jb21wb25lbnQgLm1hcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jb21wb25lbnQgLmltYWdlLnNocmluaywgLmNvbXBvbmVudCAubW92aWUuc2hyaW5rLCAuY29tcG9uZW50IC5tYXAuc2hyaW5rIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50IC5pbWFnZSBhLCAuY29tcG9uZW50IC5tb3ZpZSBhLCAuY29tcG9uZW50IC5tYXAgYSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIH1cbiAgLmNvbXBvbmVudCAuaW1hZ2UgYTpob3ZlciwgLmNvbXBvbmVudCAubW92aWUgYTpob3ZlciwgLmNvbXBvbmVudCAubWFwIGE6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxufVxuLmNvbXBvbmVudCAuaW1hZ2UgaW1nLCAuY29tcG9uZW50IC5tb3ZpZSBpbWcsIC5jb21wb25lbnQgLm1hcCBpbWcge1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudCAuaW1hZ2UgaW1nLCAuY29tcG9uZW50IC5tb3ZpZSBpbWcsIC5jb21wb25lbnQgLm1hcCBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50IC5pbWFnZSAuY2FwdGlvbiwgLmNvbXBvbmVudCAubW92aWUgLmNhcHRpb24sIC5jb21wb25lbnQgLm1hcCAuY2FwdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1kYXJrKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4cykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbWFsbCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudCAuaW1hZ2UgLmNhcHRpb24sIC5jb21wb25lbnQgLm1vdmllIC5jYXB0aW9uLCAuY29tcG9uZW50IC5tYXAgLmNhcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtcykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXRvcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudCAuaW1hZ2UgLmNhcHRpb24uc2hyaW5rLCAuY29tcG9uZW50IC5tb3ZpZSAuY2FwdGlvbi5zaHJpbmssIC5jb21wb25lbnQgLm1hcCAuY2FwdGlvbi5zaHJpbmsge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLmNvbXBvbmVudCAuaW1hZ2UgLmNhcHRpb24ubGVmdCwgLmNvbXBvbmVudCAubW92aWUgLmNhcHRpb24ubGVmdCwgLmNvbXBvbmVudCAubWFwIC5jYXB0aW9uLmxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmNvbXBvbmVudCAuaW1hZ2UgLmNhcHRpb24uY2VudGVyLCAuY29tcG9uZW50IC5tb3ZpZSAuY2FwdGlvbi5jZW50ZXIsIC5jb21wb25lbnQgLm1hcCAuY2FwdGlvbi5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29tcG9uZW50IC5pbWFnZSAuY2FwdGlvbi5yaWdodCwgLmNvbXBvbmVudCAubW92aWUgLmNhcHRpb24ucmlnaHQsIC5jb21wb25lbnQgLm1hcCAuY2FwdGlvbi5yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmNvbXBvbmVudCAuaW1hZ2UgLmNoaWxkLCAuY29tcG9uZW50IC5tb3ZpZSAuY2hpbGQsIC5jb21wb25lbnQgLm1hcCAuY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygzMiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50IC5pbWFnZSAuY2hpbGQsIC5jb21wb25lbnQgLm1vdmllIC5jaGlsZCwgLmNvbXBvbmVudCAubWFwIC5jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQgLmltYWdlIC5jaGlsZDpsYXN0LWNoaWxkLCAuY29tcG9uZW50IC5tb3ZpZSAuY2hpbGQ6bGFzdC1jaGlsZCwgLmNvbXBvbmVudCAubWFwIC5jaGlsZDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xufVxuXG4uY29tcG9uZW50LnR5cGVfcGFnZXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhZ2V0aXRsZSB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3BhZ2V0aXRsZSAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhZ2V0aXRsZSAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFnZXRpdGxlIC5pbm5lciBoMSB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14bCkgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICB3b3JkLWJyZWFrOiBhdXRvLXBocmFzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfcGFnZXRpdGxlIC5pbm5lciBoMSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBsaW5lLWhlaWdodDogMTcwJTtcbiAgfVxufVxuXG4uY29tcG9uZW50LnR5cGVfZXh0ZW5kZWR0aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY29tcG9uZW50LnR5cGVfZXh0ZW5kZWR0aXRsZSAuY2lyY2xlT2JqZWN0IHtcbiAgd2lkdGg6IGNhbGMoMjMwIC8gMzc1ICogMTAwdncpO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgdG9wOiBjYWxjKC0zMSAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNsYXRlOiBjYWxjKC02NCAvIDM3NSAqIDEwMHZ3KSAwO1xuICB6LWluZGV4OiAxMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2V4dGVuZGVkdGl0bGUgLmNpcmNsZU9iamVjdCB7XG4gICAgd2lkdGg6IG1pbig0NzFweCwgY2FsYyg0NzEgLyAxNDQwICogMTAwdncpKTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiBtYXgoLTEwNnB4LCBjYWxjKC0xMDYgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IG1heCgtODU0cHgsIGNhbGMoLTg1NCAvIDE0NDAgKiAxMDB2dykpIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZXh0ZW5kZWR0aXRsZSAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZTogXCIuIHRleHQgaW1hZ2UgaW1hZ2VcIiBhdXRvLzFmciBtaW4oNDQwcHgsIGNhbGMoNDQwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDc2MHB4LCBjYWxjKDc2MCAvIDE0NDAgKiAxMDB2dykpIDFmcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfZXh0ZW5kZWR0aXRsZSAuaW5uZXIgLnRleHQge1xuICBwYWRkaW5nLWlubGluZTogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1ibG9jazogY2FsYyg2NCAvIDM3NSAqIDEwMHZ3KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9leHRlbmRlZHRpdGxlIC5pbm5lciAudGV4dCB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBncmlkLWFyZWE6IHRleHQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2V4dGVuZGVkdGl0bGUgLmlubmVyIC50ZXh0IHNwYW4ge1xuICBmb250LXNpemU6IGNhbGMoNDggLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICB3b3JkLWJyZWFrOiBhdXRvLXBocmFzZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZXh0ZW5kZWR0aXRsZSAuaW5uZXIgLnRleHQgc3BhbiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHh4eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4eHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2V4dGVuZGVkdGl0bGUgLmlubmVyIC50ZXh0IGgxIHtcbiAgbWFyZ2luLXRvcDogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbCkgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9leHRlbmRlZHRpdGxlIC5pbm5lciAudGV4dCBoMSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZXh0ZW5kZWR0aXRsZSAuaW5uZXIgLmltYWdlIHtcbiAgICBncmlkLWFyZWE6IGltYWdlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfZXh0ZW5kZWR0aXRsZSAuaW5uZXIgLmltYWdlIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBhc3BlY3QtcmF0aW86IDM3NS8xNzM7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9leHRlbmRlZHRpdGxlIC5pbm5lciAuaW1hZ2UgaW1nIHtcbiAgICBtaW4taGVpZ2h0OiBtaW4oMzY2cHgsIGNhbGMoMzY2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZyB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24pIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZyB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyX2hlYWRpbmcge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmc6IGNhbGMoMjQgLyAzNzUgKiAxMDB2dykgY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciB7XG4gICAgcGFkZGluZzogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZyAuaW5uZXIgLmltYWdlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciAuaW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oNTcwcHgsIGNhbGMoNTcwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyX2hlYWRpbmcgLmlubmVyIC5pbWFnZSBpbWcge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZyAuaW5uZXIgLmNvcHkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyX2hlYWRpbmcgLmlubmVyIC5jb3B5IHtcbiAgICB3aWR0aDogbWluKDUyNnB4LCBjYWxjKDUyNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciAuY29weSBoMyB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eGwpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTY1JTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciAuY29weSBoMyB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciAuY29weSAucHJvZmlsZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZyAuaW5uZXIgLmNvcHkgLnByb2ZpbGUge1xuICAgIG1hcmdpbi10b3A6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyX2hlYWRpbmcgLmlubmVyIC5jb3B5IC5wcm9maWxlIC5wb3NpdGlvbiB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14cykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAyMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyX2hlYWRpbmcgLmlubmVyIC5jb3B5IC5wcm9maWxlIC5wb3NpdGlvbiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciAuY29weSAucHJvZmlsZSBoNCB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14bCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxODAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyX2hlYWRpbmcgLmlubmVyIC5jb3B5IC5wcm9maWxlIGg0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKDM0cHgsIGNhbGMoMzQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZyAuaW5uZXIgLmNvcHkgLnByb2ZpbGUgLmVuIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLW0pIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTc1JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlcl9oZWFkaW5nIC5pbm5lciAuY29weSAucHJvZmlsZSAuZW4ge1xuICAgIG1hcmdpbi10b3A6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZy5yZXZlcnNlIC5pbm5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyX2hlYWRpbmcucmV2ZXJzZSAuaW5uZXIgLmltYWdlIHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgfVxufVxuXG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbikgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZzogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbig0OHB4LCBjYWxjKDQ4IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgICBncmlkLXRlbXBsYXRlOiBcImhlYWRpbmcgdGV4dFwiIGF1dG8gXCJjb3B5IHRleHRcIiBhdXRvIFwiYnV0dG9uIHRleHRcIiBhdXRvLzFmciBtaW4oNjI0cHgsIGNhbGMoNjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmhlYWRpbmcge1xuICAgIGdyaWQtYXJlYTogaGVhZGluZztcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmhlYWRpbmcgaDMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1sKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIGdhcDogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuaGVhZGluZyBoMyB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5oZWFkaW5nIGgzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MyRThGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2xhdGU6IDAgY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuaGVhZGluZyBoMzpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5jb3B5IHtcbiAgICBncmlkLWFyZWE6IGNvcHk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5jb3B5IGg0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhsKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE4MCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmNvcHkgaDQge1xuICAgIG1hcmdpbi10b3A6IG1pbig0OHB4LCBjYWxjKDQ4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuY29weSAuYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuY29weSAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBncmlkLWFyZWE6IGJ1dHRvbjtcbiAgICBtYXJnaW4tdG9wOiBtaW4oNDhweCwgY2FsYyg0OCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuY29weSAuYnV0dG9uIGEge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImJlZm9yZSB0ZXh0IGFmdGVyXCI7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogY2FsYygxNDIgLyAzNzUgKiAxMDB2dyk7XG4gIC8qXG4gICZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2dyg0cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGdhcDogcGMoNHB4KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICB3aWR0aDogdncoMTRweCk7XG4gICAgICBoZWlnaHQ6IHZ3KDE0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogcGMoMThweCk7XG4gICAgICAgIGhlaWdodDogcGMoMThweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgKi9cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuY29weSAuYnV0dG9uIGEge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZzogbWluKDEycHgsIGNhbGMoMTIgLyAxNDQwICogMTAwdncpKSBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1pbi13aWR0aDogbWluKDIyNHB4LCBjYWxjKDIyNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdhcDogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5jb3B5IC5idXR0b24gYS5yZXZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmNvcHkgLmJ1dHRvbiBhLnJldmVyc2U6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5jb3B5IC5idXR0b24gYS5yZXZlcnNlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuY29weSAuYnV0dG9uIGE6OmJlZm9yZSB7XG4gIGdyaWQtYXJlYTogYmVmb3JlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIG1hc2stc2l6ZTogYXV0byBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIHJvdGF0ZTogeiAxODBkZWc7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmNvcHkgLmJ1dHRvbiBhOjpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuY29weSAuYnV0dG9uIGE6OmFmdGVyIHtcbiAganVzdGlmeS1zZWxmOiBlbmQ7XG4gIGdyaWQtYXJlYTogYWZ0ZXI7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIG1hc2stc2l6ZTogYXV0byBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmNvcHkgLmJ1dHRvbiBhOjphZnRlciB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuY29weSAuYnV0dG9uIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICB9XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5jb3B5IC5idXR0b24gYTpob3Zlcjo6YWZ0ZXIge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5jb3B5IC5idXR0b24gYTpob3Zlcjo6YmVmb3JlIHtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmNvcHkgLmJ1dHRvbiBhIHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAudGV4dCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLnRleHQge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgIGdyaWQtYXJlYTogdGV4dDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmJ1dHRvbiBhIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJiZWZvcmUgdGV4dCBhZnRlclwiO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZzogY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IGNhbGMoMTQyIC8gMzc1ICogMTAwdncpO1xuICAvKlxuICAmW3RhcmdldD1cIl9ibGFua1wiXSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogdncoNHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBnYXA6IHBjKDRweCk7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgd2lkdGg6IHZ3KDE0cHgpO1xuICAgICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgd2lkdGg6IHBjKDE4cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE4cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAgICovXG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmJ1dHRvbiBhIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBtaW4td2lkdGg6IG1pbigyMjRweCwgY2FsYygyMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuYnV0dG9uIGEucmV2ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5idXR0b24gYS5yZXZlcnNlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuYnV0dG9uIGEucmV2ZXJzZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmJ1dHRvbiBhOjpiZWZvcmUge1xuICBncmlkLWFyZWE6IGJlZm9yZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICByb3RhdGU6IHogMTgwZGVnO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5idXR0b24gYTo6YmVmb3JlIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmJ1dHRvbiBhOjphZnRlciB7XG4gIGp1c3RpZnktc2VsZjogZW5kO1xuICBncmlkLWFyZWE6IGFmdGVyO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5idXR0b24gYTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weSAuaW5uZXIgLmJ1dHRvbiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgfVxuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuYnV0dG9uIGE6aG92ZXI6OmFmdGVyIHtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgfVxuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IC5pbm5lciAuYnV0dG9uIGE6aG92ZXI6OmJlZm9yZSB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHkgLmlubmVyIC5idXR0b24gYSBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbikgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZzogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIHtcbiAgICBwYWRkaW5nOiBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLmltYWdlIHtcbiAgICB3aWR0aDogbWluKDU3MHB4LCBjYWxjKDU3MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAuaW1hZ2UgaW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygzMiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbig1MTJweCwgY2FsYyg1MTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgaDMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1sKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIGdhcDogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCBoMyB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IGgzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MyRThGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2xhdGU6IDAgY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCBoMzpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgaDMgKyAuY29weSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgaDMgKyAuY29weSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgLmNvcHkgaDQge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteGwpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTgwJTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCAuY29weSBoNCB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCAuZGVzYyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgLmRlc2Mge1xuICAgIG1hcmdpbi10b3A6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IC5idXR0b24ge1xuICBtYXJnaW4tdG9wOiBjYWxjKDMyIC8gMzc1ICogMTAwdncpO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IC5idXR0b24gYSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYmVmb3JlIHRleHQgYWZ0ZXJcIjtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmc6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTcwJTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygyIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiBjYWxjKDE0MiAvIDM3NSAqIDEwMHZ3KTtcbiAgLypcbiAgJlt0YXJnZXQ9XCJfYmxhbmtcIl0ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IHZ3KDRweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZ2FwOiBwYyg0cHgpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgIHdpZHRoOiB2dygxNHB4KTtcbiAgICAgIGhlaWdodDogdncoMTRweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHdpZHRoOiBwYygxOHB4KTtcbiAgICAgICAgaGVpZ2h0OiBwYygxOHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgICAqL1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IC5idXR0b24gYSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLXdpZHRoOiBtaW4oMjI0cHgsIGNhbGMoMjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhLnJldmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCAuYnV0dG9uIGEucmV2ZXJzZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhLnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IC5idXR0b24gYTo6YmVmb3JlIHtcbiAgZ3JpZC1hcmVhOiBiZWZvcmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgcm90YXRlOiB6IDE4MGRlZztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCAuYnV0dG9uIGE6OmJlZm9yZSB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IC5idXR0b24gYTo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgZ3JpZC1hcmVhOiBhZnRlcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCAuYnV0dG9uIGE6OmFmdGVyIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2UgLmlubmVyIC50ZXh0IC5idXR0b24gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhOmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZSAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhOmhvdmVyOjpiZWZvcmUge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAudGV4dCAuYnV0dG9uIGEgc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlLnJldmVyc2UgLmlubmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZS5yZXZlcnNlIC5pbm5lciAuaW1hZ2Uge1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAqIDFweCksIGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC5pbWFnZSB7XG4gIHdpZHRoOiBjYWxjKDMwMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAuaW1hZ2Uge1xuICAgIHdpZHRoOiBtaW4oNzIwcHgsIGNhbGMoNzIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC5pbWFnZSBpbWcge1xuICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAuaW1hZ2UgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLnRleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgcGFkZGluZzogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDI0IC8gMzc1ICogMTAwdncpIGNhbGMoMzIgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiBjYWxjKDI4MCAvIDM3NSAqIDEwMHZ3KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiBjYWxjKC00MiAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogbWluKDUyMHB4LCBjYWxjKDUyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKSBtaW4oNDZweCwgY2FsYyg0NiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCBoMyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbSkgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IGgzIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1ib3R0b206IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuY29weSBoNCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWxpZ2h0KTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhsKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE4MCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLnRleHQgLmNvcHkgaDQge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IC5kZXNjIHtcbiAgbWFyZ2luLXRvcDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbGlnaHQpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IC5kZXNjIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuYnV0dG9uIGEge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImJlZm9yZSB0ZXh0IGFmdGVyXCI7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogY2FsYygxNDIgLyAzNzUgKiAxMDB2dyk7XG4gIC8qXG4gICZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2dyg0cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGdhcDogcGMoNHB4KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICB3aWR0aDogdncoMTRweCk7XG4gICAgICBoZWlnaHQ6IHZ3KDE0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogcGMoMThweCk7XG4gICAgICAgIGhlaWdodDogcGMoMThweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IC5idXR0b24gYSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLXdpZHRoOiBtaW4oMjI0cHgsIGNhbGMoMjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhLnJldmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuYnV0dG9uIGEucmV2ZXJzZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhLnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IC5idXR0b24gYTo6YmVmb3JlIHtcbiAgZ3JpZC1hcmVhOiBiZWZvcmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgcm90YXRlOiB6IDE4MGRlZztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuYnV0dG9uIGE6OmJlZm9yZSB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IC5idXR0b24gYTo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgZ3JpZC1hcmVhOiBhZnRlcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuYnV0dG9uIGE6OmFmdGVyIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IC5idXR0b24gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhOmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhOmhvdmVyOjpiZWZvcmUge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIC5pbm5lciAudGV4dCAuYnV0dG9uIGEgc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbi5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2VfYmcgLmlubmVyIC50ZXh0IC5idXR0b24gYTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLnRleHQgLmJ1dHRvbiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnLnJldmVyc2UgLmlubmVyIC5pbWFnZSB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZy5yZXZlcnNlIC5pbm5lciAudGV4dCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZy5yZXZlcnNlIC5pbm5lciAudGV4dCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4uY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24pIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDY0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb252ZXJzaW9uIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24ge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbig5NnB4LCBjYWxjKDk2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb252ZXJzaW9uIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIuY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyLnJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXI6aGFzKC5pbWFnZSkgLmNvcHkgaDQge1xuICBtYXJnaW4tdG9wOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb252ZXJzaW9uIC5pbm5lcjpoYXMoLmltYWdlKSAuY29weSBoNCB7XG4gICAgbWFyZ2luLXRvcDogbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5pbWFnZSB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG4uY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmltYWdlIGltZyB7XG4gIHdpZHRoOiBjYWxjKDE2MCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmltYWdlIGltZyB7XG4gICAgd2lkdGg6IG1pbihjYWxjKDE3NnB4ICogMS4zMzMzMzMpLCBjYWxjKDE3NiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmNvcHkgaDQge1xuICBsaW5lLWhlaWdodDogMTgwJTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhsKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmNvcHkgaDQge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb252ZXJzaW9uIC5pbm5lciAuZGVzYyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5kZXNjIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmRlc2MgcCB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5kZXNjIHAge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb252ZXJzaW9uIC5pbm5lciAuYnV0dG9uIHtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgbWFyZ2luLXRvcDogY2FsYygzMiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJiZWZvcmUgdGV4dCBhZnRlclwiO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZzogY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IGNhbGMoMTQyIC8gMzc1ICogMTAwdncpO1xuICAvKlxuICAmW3RhcmdldD1cIl9ibGFua1wiXSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogdncoNHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBnYXA6IHBjKDRweCk7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgd2lkdGg6IHZ3KDE0cHgpO1xuICAgICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgd2lkdGg6IHBjKDE4cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE4cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAgICovXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlY29uZGFyeSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2Vjb25kYXJ5KTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLXdpZHRoOiBtaW4oMjI0cHgsIGNhbGMoMjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYS5yZXZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xufVxuLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYS5yZXZlcnNlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmJ1dHRvbiBhLnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb252ZXJzaW9uIC5pbm5lciAuYnV0dG9uIGE6OmJlZm9yZSB7XG4gIGdyaWQtYXJlYTogYmVmb3JlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIG1hc2stc2l6ZTogYXV0byBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIHJvdGF0ZTogeiAxODBkZWc7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYTo6YmVmb3JlIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYTo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgZ3JpZC1hcmVhOiBhZnRlcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmJ1dHRvbiBhOjphZnRlciB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmJ1dHRvbiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgfVxuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmJ1dHRvbiBhOmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYTpob3Zlcjo6YmVmb3JlIHtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYSBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb252ZXJzaW9uIC5pbm5lciAuYnV0dG9uIGEge1xuICAgIG1pbi13aWR0aDogbWluKDMyMHB4LCBjYWxjKDMyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbnZlcnNpb24gLmlubmVyIC5idXR0b24gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2Vjb25kYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlY29uZGFyeSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiAuaW5uZXIgLmJ1dHRvbiBhIHtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIH1cbn1cblxuLmNvbXBvbmVudC50eXBlX2hlYWRpbmcge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfaGVhZGluZyB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2hlYWRpbmcgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9oZWFkaW5nIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9oZWFkaW5nLmxhcmdlIC5pbm5lciAuaGVhZGluZyB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItYm90dG9tOiBjYWxjKDMgLyAzNzUgKiAxMDB2dykgc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1sKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gIHdvcmQtYnJlYWs6IGF1dG8tcGhyYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9oZWFkaW5nLmxhcmdlIC5pbm5lciAuaGVhZGluZyB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogbWluKDNweCwgY2FsYygzIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfaGVhZGluZy5tZWRpdW0ge1xuICBtYXJnaW4tdG9wOiBjYWxjKDM2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9oZWFkaW5nLm1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDU2cHgsIGNhbGMoNTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9oZWFkaW5nLm1lZGl1bSAuaW5uZXIge1xuICAgIHBhZGRpbmctaW5saW5lOiBtaW4oMTIwcHgsIGNhbGMoMTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9oZWFkaW5nLm1lZGl1bSAuaW5uZXIgLmhlYWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1sKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIGdhcDogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfaGVhZGluZy5tZWRpdW0gLmlubmVyIC5oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXh4eGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdhcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2hlYWRpbmcubWVkaXVtIC5pbm5lciAuaGVhZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgaGVpZ2h0OiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDMkU4RkY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdHJhbnNsYXRlOiAwIGNhbGMoMTEgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2hlYWRpbmcubWVkaXVtIC5pbm5lciAuaGVhZGluZzpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RleHRfbGVhZCB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZSkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfbGVhZCB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZS1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90ZXh0X2xlYWQgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90ZXh0X2xlYWQgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RleHRfbGVhZCAuaW5uZXIgLnRleHQgcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbCkgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sYXJnZSk7XG4gIHdvcmQtYnJlYWs6IGF1dG8tcGhyYXNlO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90ZXh0X2xlYWQgLmlubmVyIC50ZXh0IHAge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGV4dF9sZWFkIC5pbm5lciAudGV4dCBwLmxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmNvbXBvbmVudC50eXBlX3RleHRfbGVhZCAuaW5uZXIgLnRleHQgcC5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG4uY29tcG9uZW50LnR5cGVfdGV4dF9sZWFkIC5pbm5lciAudGV4dCBwLnJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb21wb25lbnQudHlwZV90ZXh0IHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dCB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZS1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90ZXh0IC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dCAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHQgLmlubmVyIHtcbiAgICBwYWRkaW5nLWlubGluZTogbWluKDEyMHB4LCBjYWxjKDEyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGV4dC5zcF9sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5jb21wb25lbnQudHlwZV90ZXh0LnNwX2NlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jb21wb25lbnQudHlwZV90ZXh0LnNwX3JpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHQucGNfbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90ZXh0LnBjX2NlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHQucGNfcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV90ZXh0X2ltYWdlIHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbikgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfaW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAqIDFweCksIGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90ZXh0X2ltYWdlIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dF9pbWFnZSAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfaW1hZ2UgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RleHRfaW1hZ2UgLmlubmVyIC50ZXh0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dF9pbWFnZSAuaW5uZXIgLnRleHQge1xuICAgIHdpZHRoOiBtaW4oNTgycHgsIGNhbGMoNTgyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dF9pbWFnZSAuaW5uZXIgLmltYWdlIHtcbiAgICB3aWR0aDogbWluKDU3MHB4LCBjYWxjKDU3MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfaW1hZ2UucmV2ZXJzZSAuaW5uZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuXG4uY29tcG9uZW50LnR5cGVfdGV4dF9tYXAge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90ZXh0X21hcCB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZS1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90ZXh0X21hcCAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfbWFwIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nLWlubGluZTogbWluKDEyMHB4LCBjYWxjKDEyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIC50ZXh0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIC50ZXh0IHtcbiAgICB3aWR0aDogbWluKDM0MnB4LCBjYWxjKDM0MiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIC50ZXh0IGgzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNTUlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICBnYXA6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90ZXh0X21hcCAuaW5uZXIgLnRleHQgaDMge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIC50ZXh0IGgzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MyRThGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2xhdGU6IDAgY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIC50ZXh0IGgzOmJlZm9yZSB7XG4gICAgd2lkdGg6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgaGVpZ2h0OiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHRyYW5zbGF0ZTogMCBtaW4oMThweCwgY2FsYygxOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfbWFwIC5pbm5lciAudGV4dCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RleHRfbWFwIC5pbm5lciAudGV4dCBoMzo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIC5tYXAge1xuICAgIHdpZHRoOiBtaW4oNTcwcHgsIGNhbGMoNTcwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90ZXh0X21hcCAuaW5uZXIgLm1hcCAubWFwX3dyYXBfb3V0ZXIge1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb21wb25lbnQudHlwZV90ZXh0X21hcCAuaW5uZXIgLm1hcCAubWFwX3dyYXBfb3V0ZXIuc2hyaW5rIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5jb21wb25lbnQudHlwZV90ZXh0X21hcCAuaW5uZXIgLm1hcCAubWFwX3dyYXBfb3V0ZXIgLm1hcF93cmFwX2lubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfbWFwIC5pbm5lciAubWFwIC5tYXBfd3JhcF9vdXRlciAubWFwX3dyYXBfaW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGV4dF9tYXAgLmlubmVyIC5tYXAgLm1hcF93cmFwX291dGVyIC5tYXBfd3JhcF9pbm5lciBpZnJhbWUge1xuICBhc3BlY3QtcmF0aW86IDU3LzM4O1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RleHRfbWFwIC5pbm5lciAubWFwIC5tYXBfd3JhcF9vdXRlciAubWFwX3dyYXBfaW5uZXIgaWZyYW1lIHtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90ZXh0X21hcC5yZXZlcnNlIC5pbm5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV9tYXAge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9tYXAge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbWFwIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbWFwIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9tYXAgLmlubmVyIC5tYXAge1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5jb21wb25lbnQudHlwZV9tYXAgLmlubmVyIC5tYXAgLm1hcF93cmFwX291dGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX21hcCAuaW5uZXIgLm1hcCAubWFwX3dyYXBfb3V0ZXIge1xuICAgIG1heC13aWR0aDogbWluKDcyMHB4LCBjYWxjKDcyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbWFwIC5pbm5lciAubWFwIC5tYXBfd3JhcF9vdXRlciAubWFwX3dyYXBfaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jb21wb25lbnQudHlwZV9tYXAgLmlubmVyIC5tYXAgLm1hcF93cmFwX291dGVyIC5tYXBfd3JhcF9pbm5lciBpZnJhbWUge1xuICBhc3BlY3QtcmF0aW86IDU3LzM4O1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX21hcCAuaW5uZXIgLm1hcCAubWFwX3dyYXBfb3V0ZXIgLm1hcF93cmFwX2lubmVyIGlmcmFtZSB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpIHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfaW1hZ2VfbXVsdGkge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpLnNldDEgLmlubmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpLnNldDIgLmlubmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gIGdyaWQtZ2FwOiBjYWxjKDMyIC8gMzc1ICogMTAwdncpIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpLnNldDIgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gICAgZ3JpZC1nYXA6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpLnNldDMgLmlubmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gIGdyaWQtZ2FwOiBjYWxjKDMyIC8gMzc1ICogMTAwdncpIGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpLnNldDMgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gICAgZ3JpZC1nYXA6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpLnNldDQgLmlubmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gIGdyaWQtZ2FwOiBjYWxjKDMyIC8gMzc1ICogMTAwdncpIGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpLnNldDQgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gICAgZ3JpZC1nYXA6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ltYWdlX211bHRpIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfaW1hZ2VfbXVsdGkgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuXG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9tb3ZpZV9tdWx0aSB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZS1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkuc2V0MSAuaW5uZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkuc2V0MiAuaW5uZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgZ3JpZC1nYXA6IGNhbGMoMzIgLyAzNzUgKiAxMDB2dykgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkuc2V0MiAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgICBncmlkLWdhcDogbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKSBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkuc2V0MyAuaW5uZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgZ3JpZC1nYXA6IGNhbGMoMzIgLyAzNzUgKiAxMDB2dykgY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkuc2V0MyAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgICBncmlkLWdhcDogbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKSBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkuc2V0NCAuaW5uZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgZ3JpZC1nYXA6IGNhbGMoMzIgLyAzNzUgKiAxMDB2dykgY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkuc2V0NCAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgICBncmlkLWdhcDogbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKSBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9tb3ZpZV9tdWx0aSAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkgLmlubmVyIC5tb3ZpZSAubW92aWVfd3JhcF9vdXRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbXBvbmVudC50eXBlX21vdmllX211bHRpIC5pbm5lciAubW92aWUgLm1vdmllX3dyYXBfb3V0ZXIuc2hyaW5rIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5jb21wb25lbnQudHlwZV9tb3ZpZV9tdWx0aSAuaW5uZXIgLm1vdmllIC5tb3ZpZV93cmFwX291dGVyIC5tb3ZpZV93cmFwX2lubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkgLmlubmVyIC5tb3ZpZSAubW92aWVfd3JhcF9vdXRlciAubW92aWVfd3JhcF9pbm5lciBpZnJhbWUge1xuICBhc3BlY3QtcmF0aW86IDE2Lzk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkgLmlubmVyIC5tb3ZpZSAubW92aWVfd3JhcF9vdXRlciAubW92aWVfd3JhcF9pbm5lciBpZnJhbWUge1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV9wYW5lbCB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24pIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhbmVsIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhbmVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbC5zZXQyIC5pbm5lciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbC5zZXQzIC5pbm5lciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbC5zZXQ0IC5pbm5lciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICBnYXA6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDQwcHgsIGNhbGMoNDAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbC5zZXQ0IC5pbm5lciAudW5pdCAudGl0bGUge1xuICAgIG1hcmdpbi10b3A6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfcGFuZWwuc2V0NCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDEsIGF1dG8pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIge1xuICAgIGdhcDogbWluKDYwcHgsIGNhbGMoNjAgLyAxNDQwICogMTAwdncpKSBtaW4oNjBweCwgY2FsYyg2MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICBncmlkLXJvdzogc3BhbiA0O1xuICBnYXA6IDA7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiB1bnNldDtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5pbWFnZSBhLCAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5pbWFnZSBzcGFuIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgfVxuICAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5pbWFnZSBhOmhvdmVyLCAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5pbWFnZSBzcGFuOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjc7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmltYWdlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAudGl0bGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oNDhweCwgY2FsYyg0OCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC50aXRsZSBoMyB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1sKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAudGl0bGUgaDMge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC50aXRsZSBoMyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xufVxuLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAuZGVzYyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAuZGVzYyB7XG4gICAgbWFyZ2luLXRvcDogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24ge1xuICBtYXJnaW4tdG9wOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAuYnV0dG9uIGEsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJiZWZvcmUgdGV4dCBhZnRlclwiO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZzogY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IGNhbGMoMTQyIC8gMzc1ICogMTAwdncpO1xuICAvKlxuICAmW3RhcmdldD1cIl9ibGFua1wiXSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogdncoNHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBnYXA6IHBjKDRweCk7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgd2lkdGg6IHZ3KDE0cHgpO1xuICAgICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgd2lkdGg6IHBjKDE4cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE4cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAgICovXG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAuYnV0dG9uIGEsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBtaW4td2lkdGg6IG1pbigyMjRweCwgY2FsYygyMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24gYS5yZXZlcnNlLCAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24gc3Bhbi5yZXZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xufVxuLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAuYnV0dG9uIGEucmV2ZXJzZTo6YWZ0ZXIsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuLnJldmVyc2U6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBhLnJldmVyc2U6aG92ZXIsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuLnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBhOjpiZWZvcmUsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuOjpiZWZvcmUge1xuICBncmlkLWFyZWE6IGJlZm9yZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICByb3RhdGU6IHogMTgwZGVnO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBhOjpiZWZvcmUsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuOjpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24gYTo6YWZ0ZXIsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuOjphZnRlciB7XG4gIGp1c3RpZnktc2VsZjogZW5kO1xuICBncmlkLWFyZWE6IGFmdGVyO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBhOjphZnRlciwgLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAuYnV0dG9uIHNwYW46OmFmdGVyIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBhOmhvdmVyLCAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24gc3Bhbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX3BhbmVsIC5pbm5lciAudW5pdCAuYnV0dG9uIGE6aG92ZXI6OmFmdGVyLCAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24gc3Bhbjpob3Zlcjo6YWZ0ZXIge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG4gIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBhOmhvdmVyOjpiZWZvcmUsIC5jb21wb25lbnQudHlwZV9wYW5lbCAuaW5uZXIgLnVuaXQgLmJ1dHRvbiBzcGFuOmhvdmVyOjpiZWZvcmUge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24gYSBzcGFuLCAuY29tcG9uZW50LnR5cGVfcGFuZWwgLmlubmVyIC51bml0IC5idXR0b24gc3BhbiBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24pIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgcGFkZGluZzogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDE2IC8gMzc1ICogMTAwdncpIGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiBtaW4oMzIwcHgsIGNhbGMoMzIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXRvcDogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZzogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKSBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpIG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyLnN0YXRpYyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC5oZWFkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNTUlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICBnYXA6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC5oZWFkaW5nIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXh4eGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdhcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC5oZWFkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MyRThGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2xhdGU6IDAgY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLmhlYWRpbmc6YmVmb3JlIHtcbiAgICB3aWR0aDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICBoZWlnaHQ6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgdHJhbnNsYXRlOiAwIG1pbigxOHB4LCBjYWxjKDE4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAuc3BlYWtlciAudW5pdCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC51bml0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLnVuaXQgKyAudW5pdCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC51bml0ICsgLnVuaXQge1xuICAgIG1hcmdpbi10b3A6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAuc3BlYWtlciAudW5pdCAucGhvdG8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLnVuaXQgLnBob3RvIGltZyB7XG4gIG1heC13aWR0aDogY2FsYygyNDAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC51bml0IC5waG90byBpbWcge1xuICAgIG1heC13aWR0aDogbWluKDI0MHB4LCBjYWxjKDI0MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLnVuaXQgLm5hbWUge1xuICBtYXJnaW4tdG9wOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC51bml0IC5uYW1lIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLnVuaXQgLm5hbWUgZHQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbSkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNzUlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAuc3BlYWtlciAudW5pdCAubmFtZSBkdCB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLnVuaXQgLm5hbWUgZGQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDIwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC5zcGVha2VyIC51bml0IC5uYW1lIGRkIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLW0pICogMXB4KSwgY2FsYyh2YXIoLS1mcy1tKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxMjUlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLnVuaXQgLnByb2ZpbGUge1xuICBtYXJnaW4tdG9wOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAuc3BlYWtlciAudW5pdCAucHJvZmlsZSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXMpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1zKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnNwZWFrZXIgLnVuaXQgLnByb2ZpbGUuZW4ge1xuICBmb250LWZhbWlseTogdmFyKC0tbnVtKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktZGFyayk7XG4gIGxpbmUtaGVpZ2h0OiAxNjYlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAuc3BlYWtlciAudW5pdCAucHJvZmlsZS5lbiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1tKSAqIDFweCksIGNhbGModmFyKC0tZnMtbSkgLyAxNDQwICogMTAwdncpKTtcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC50ZXh0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnRleHQge1xuICAgIHdpZHRoOiBtaW4oNzkycHgsIGNhbGMoNzkyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAuZmxvYXRfaW1hZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAuZmxvYXRfaW1hZ2U6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAuZmxvYXRfaW1hZ2Uge1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnRleHQgLmZsb2F0X2ltYWdlIGZpZ3VyZSB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IGNhbGMoMTYwIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC50ZXh0IC5mbG9hdF9pbWFnZSBmaWd1cmUge1xuICAgIHdpZHRoOiBtaW4oMzIwcHgsIGNhbGMoMzIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctdG9wOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAuZmxvYXRfaW1hZ2UgZmlndXJlIGZpZ2NhcHRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IGNhbGMoNiAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktZGFyayk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eHMpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTY2JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnRleHQgLmZsb2F0X2ltYWdlIGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXhzKSAqIDFweCksIGNhbGModmFyKC0tZnMteHMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAuY29tcG9uZW50IHtcbiAgbWFyZ2luLXRvcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC50ZXh0IC5jb21wb25lbnQge1xuICAgIG1hcmdpbi10b3A6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1ib3R0b206IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAuY29tcG9uZW50IC5jb250YWluZXIsIC5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAuY29tcG9uZW50IC5pbm5lciB7XG4gIHBhZGRpbmc6IHVuc2V0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG59XG4uY29tcG9uZW50LnR5cGVfc3BlYWtlciAuaW5uZXIgLnRleHQgLmNvbXBvbmVudCAuY29udGFpbmVyIC5pbm5lciAudGV4dCwgLmNvbXBvbmVudC50eXBlX3NwZWFrZXIgLmlubmVyIC50ZXh0IC5jb21wb25lbnQgLmlubmVyIC5pbm5lciAudGV4dCB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAudHlwZV90YWJsZSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIC5pbm5lciAudGV4dCAudHlwZV90YWJsZSAuaW5uZXIge1xuICBwYWRkaW5nOiB1bnNldDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jb21wb25lbnQudHlwZV9jb2x1bW4ge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbiAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW4oMzYwcHgsIGNhbGMoMzYwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDU5NHB4LCBjYWxjKDU5NCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDFmcjtcbiAgICBwYWRkaW5nLWlubGluZTogbWluKDEyMHB4LCBjYWxjKDEyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyLnRleHRvbmx5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIGgzIHtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLWwpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTU1JTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgZ2FwOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgaDMge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIGgzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MyRThGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2xhdGU6IDAgY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIGgzOmJlZm9yZSB7XG4gICAgd2lkdGg6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgaGVpZ2h0OiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHRyYW5zbGF0ZTogMCBtaW4oMThweCwgY2FsYygxOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbiAuY29udGFpbmVyIC5pbm5lciBoMyB7XG4gICAgcGFkZGluZy1ib3R0b206IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ3JpZC1jb2x1bW46IDIvMztcbiAgICBncmlkLXJvdzogMS8yO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byB7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIHtcbiAgICBncmlkLWNvbHVtbjogMS8yO1xuICAgIGdyaWQtcm93OiAxLzQ7XG4gICAgcGFkZGluZy1yaWdodDogbWluKDM2cHgsIGNhbGMoMzYgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogdW5zZXQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIC5jaGlsZCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQ6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIC5jaGlsZCAuaW1hZ2Vfc3Age1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQgLmltYWdlX3NwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQgLmltYWdlX3BjIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbiAuY29udGFpbmVyIC5pbm5lciAucGhvdG8gLmNoaWxkIC5pbWFnZV9wYyB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQgaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIC5jaGlsZCBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQgLmNhcHRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtZGFyayk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eHMpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc21hbGwpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIC5jaGlsZCAuY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQgLmNhcHRpb24uc2hyaW5rIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIC5jaGlsZCAuY2FwdGlvbi5sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIC5jaGlsZCAuY2FwdGlvbi5jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQgLmNhcHRpb24ucmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgaDQge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheS1kYXJrKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIGg0IHtcbiAgICBncmlkLWNvbHVtbjogMi8zO1xuICAgIGdyaWQtcm93OiAyLzM7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1ib3R0b206IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnRleHQge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uIC5jb250YWluZXIgLmlubmVyIC50ZXh0IHtcbiAgICBncmlkLWNvbHVtbjogMi8zO1xuICAgIGdyaWQtcm93OiAzLzQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnRleHQgLmJ1dHRvbiAucF9idXR0b24ge1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb2x1bW4gLmNvbnRhaW5lciAuaW5uZXIgLnRleHQgLmJ1dHRvbiAucF9idXR0b24ge1xuICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbi5yZXZlcnNlIC5jb250YWluZXIgLmlubmVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbig1OTRweCwgY2FsYyg1OTQgLyAxNDQwICogMTAwdncpKSBtaW4oMzYwcHgsIGNhbGMoMzYwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbi5yZXZlcnNlIC5jb250YWluZXIgLmlubmVyIGgzIHtcbiAgICBncmlkLWNvbHVtbjogMS8yO1xuICAgIGdyaWQtcm93OiAxLzI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uLnJldmVyc2UgLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIHtcbiAgICBncmlkLWNvbHVtbjogMi8zO1xuICAgIGdyaWQtcm93OiAxLzQ7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uLnJldmVyc2UgLmNvbnRhaW5lciAuaW5uZXIgaDQge1xuICAgIGdyaWQtY29sdW1uOiAxLzI7XG4gICAgZ3JpZC1yb3c6IDIvMztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jb2x1bW4ucmV2ZXJzZSAuY29udGFpbmVyIC5pbm5lciAudGV4dCB7XG4gICAgZ3JpZC1jb2x1bW46IDEvMjtcbiAgICBncmlkLXJvdzogMy80O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbi52ZXJ0aWNhbCAuY29udGFpbmVyIC5pbm5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uLnZlcnRpY2FsIC5jb250YWluZXIgLmlubmVyIC50ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbi52ZXJ0aWNhbCAuY29udGFpbmVyIC5pbm5lciAucGhvdG8ge1xuICAgIHBhZGRpbmc6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSkgMCBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiBtaW4oNjBweCwgY2FsYyg2MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbi52ZXJ0aWNhbCAuY29udGFpbmVyIC5pbm5lciAucGhvdG8gLmNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NvbHVtbi52ZXJ0aWNhbF9yZXZlcnNlIC5jb250YWluZXIgLmlubmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvIGF1dG87XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uLnZlcnRpY2FsX3JldmVyc2UgLmNvbnRhaW5lciAuaW5uZXIgaDMge1xuICBncmlkLXJvdzogMS8yO1xuICBncmlkLWNvbHVtbjogYXV0bztcbn1cbi5jb21wb25lbnQudHlwZV9jb2x1bW4udmVydGljYWxfcmV2ZXJzZSAuY29udGFpbmVyIC5pbm5lciBoNCB7XG4gIGdyaWQtcm93OiAyLzM7XG4gIGdyaWQtY29sdW1uOiBhdXRvO1xufVxuLmNvbXBvbmVudC50eXBlX2NvbHVtbi52ZXJ0aWNhbF9yZXZlcnNlIC5jb250YWluZXIgLmlubmVyIC5waG90byB7XG4gIGdyaWQtcm93OiA0LzU7XG4gIGdyaWQtY29sdW1uOiBhdXRvO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uLnZlcnRpY2FsX3JldmVyc2UgLmNvbnRhaW5lciAuaW5uZXIgLnBob3RvIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS14eGxhcmdlKTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NvbHVtbi52ZXJ0aWNhbF9yZXZlcnNlIC5jb250YWluZXIgLmlubmVyIC5waG90byAuY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY29sdW1uLnZlcnRpY2FsX3JldmVyc2UgLmNvbnRhaW5lciAuaW5uZXIgLnRleHQge1xuICBncmlkLXJvdzogMy80O1xuICBncmlkLWNvbHVtbjogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY29sdW1uLnZlcnRpY2FsX3JldmVyc2UgLmNvbnRhaW5lciAuaW5uZXIgLnRleHQge1xuICAgIG1hcmdpbi1ib3R0b206IG1pbig1NnB4LCBjYWxjKDU2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLmNvbXBvbmVudC50eXBlX3RhYmxlIHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGFibGUge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGU6aGFzKC50eXBlMDEsIC50eXBlMDIsIC50eXBlXzAzLCAudHlwZV8wNiwgLnR5cGVfMDcpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoMjUgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RhYmxlOmhhcygudHlwZTAxLCAudHlwZTAyLCAudHlwZV8wMywgLnR5cGVfMDYsIC50eXBlXzA3KSB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDQ2cHgsIGNhbGMoNDYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzAxIHRhYmxlIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LnR5cGVfMDEgdGFibGUgdGgsIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzAxIHRhYmxlIHRkIHtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiB1bnNldDtcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzAzIHRhYmxlLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wNCB0YWJsZSB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wMyB0YWJsZSB0cjpsYXN0LW9mLXR5cGUgdGgsIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzA0IHRhYmxlIHRyOmxhc3Qtb2YtdHlwZSB0aCB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wMyB0YWJsZSB0ciB0aCwgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LnR5cGVfMDMgdGFibGUgdHIgdGQsIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzA0IHRhYmxlIHRyIHRoLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wNCB0YWJsZSB0ciB0ZCB7XG4gIHBhZGRpbmc6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzAzIHRhYmxlIHRyIHRoLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wMyB0YWJsZSB0ciB0ZCwgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LnR5cGVfMDQgdGFibGUgdHIgdGgsIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzA0IHRhYmxlIHRyIHRkIHtcbiAgICBwYWRkaW5nOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpIG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzAzIHRhYmxlIHRyIHRoLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wNCB0YWJsZSB0ciB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWxpZ2h0KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1saWdodCk7XG4gIHdpZHRoOiAzMCU7XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wNCB0YWJsZSB0ciB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1saWdodCk7XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wNiB0YWJsZSB0cjpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWxpZ2h0KTtcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzA2IHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LnR5cGVfMDYgdGFibGUgdHIgdGgge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LnR5cGVfMDYgdGFibGUgdHIgdGgge1xuICAgIHBhZGRpbmctbGVmdDogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LnR5cGVfMDYgdGFibGUgdHIgdGQge1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LnR5cGVfMDcgdGFibGUgdHI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1saWdodCk7XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQudHlwZV8wNyB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzA3IHRhYmxlIHRyIHRoIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzA3IHRhYmxlIHRyIHRoIHtcbiAgICBwYWRkaW5nLWxlZnQ6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC50eXBlXzA3IHRhYmxlIHRyIHRkIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC5jb21wYWN0IHRhYmxlIHRoLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQuY29tcGFjdCB0YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbWFsbCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LmNvbXBhY3QgdGFibGUgdGgsIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC5jb21wYWN0IHRhYmxlIHRkIHtcbiAgICBwYWRkaW5nOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKSBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldC5maXhlZCB0YWJsZSB7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0LmZpeF9sZWZ0IHRhYmxlIHRoIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgbGVmdDogMDtcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0IHRhYmxlIGNhcHRpb24ge1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtYWxsKTtcbiAgbWFyZ2luLXRvcDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1tKSAqIDFweCksIGNhbGModmFyKC0tZnMtbSkgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tdG9wOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0IHRhYmxlIHRyOmZpcnN0LW9mLXR5cGUgdGgsIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0cjpmaXJzdC1vZi10eXBlIHRkIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0aCwgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0IHRhYmxlIHRkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1tZWRpdW0pO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICBtaW4td2lkdGg6IGNhbGMoMTA4IC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0aCwgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0IHRhYmxlIHRkIHtcbiAgICBtaW4td2lkdGg6IG1pbigxODRweCwgY2FsYygxODQgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGluZS1oZWlnaHQ6IDE3NyU7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0aC5sZWZ0LCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGQubGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGguY2VudGVyLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGQuY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0IHRhYmxlIHRoLnJpZ2h0LCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGQucmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0aC5taW4sIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0ZC5taW4ge1xuICBtaW4td2lkdGg6IGF1dG87XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGggLnBfYnV0dG9uLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGQgLnBfYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGggLnBfYnV0dG9uLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGQgLnBfYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGgge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfc2V0IHRhYmxlIHRoICsgdGQsIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0ZCArIHRkIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDMyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV90YWJsZSAuaW5uZXIgLnRhYmxlX3NldCB0YWJsZSB0aCArIHRkLCAuY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9zZXQgdGFibGUgdGQgKyB0ZCB7XG4gICAgcGFkZGluZy1sZWZ0OiBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9vdmVyZmxvdyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDMwIC8gMzc1ICogMTAwdncpO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfb3ZlcmZsb3cge1xuICAgIHBhZGRpbmctdG9wOiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfdGFibGUgLmlubmVyIC50YWJsZV9vdmVyZmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpIGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3N3aXBlLnN2Zyk7XG4gIHdpZHRoOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoMjIgLyAzNzUgKiAxMDB2dyk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3RhYmxlIC5pbm5lciAudGFibGVfb3ZlcmZsb3c6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSkgYXV0bztcbiAgICB3aWR0aDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBoZWlnaHQ6IG1pbigyMnB4LCBjYWxjKDIyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLmNvbXBvbmVudC50eXBlX2J1dHRvbiB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZSkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2J1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZS1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9idXR0b24gLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9idXR0b24gLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2J1dHRvbiAuaW5uZXIgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmNvbXBvbmVudC50eXBlX2J1dHRvbiAuaW5uZXIgdWwgbGkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCBjYWxjKCgxNiAvIDM3NSAqIDEwMHZ3KSAvIDIpIGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2J1dHRvbiAuaW5uZXIgdWwgbGkge1xuICAgIG1hcmdpbjogMCBjYWxjKG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSkgLyAyKSBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV9hbmNob3Ige1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9hbmNob3Ige1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfYW5jaG9yIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfYW5jaG9yIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9hbmNob3IgLmlubmVyIHVsIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgZ2FwOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9hbmNob3IgLmlubmVyIHVsIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgIGdhcDogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2FuY2hvciAuaW5uZXIgdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2FuY2hvciAuaW5uZXIgdWwgbGkgYSB7XG4gICAgcGFkZGluZzogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDEycHgsIGNhbGMoMTIgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGluZS1oZWlnaHQ6IDEzNSU7XG4gIH1cbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuY29tcG9uZW50LnR5cGVfYW5jaG9yIC5pbm5lciB1bCBsaSBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfYW5jaG9yIC5pbm5lciB1bCBsaSBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbiAgaGVpZ2h0OiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19hbmNob3Iuc3ZnKTtcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfYW5jaG9yIC5pbm5lciB1bCBsaSBhOjphZnRlciB7XG4gICAgd2lkdGg6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgaGVpZ2h0OiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV9udW0ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLW1lZGl1bSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMkYzRjg7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbnVtIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLWxhcmdlKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9udW0ge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bS5zZXQyIC5pbm5lciB7XG4gICAgZ2FwOiA4MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bS5zZXQzIC5pbm5lciB7XG4gICAgZ2FwOiAzNXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bS5zZXQzIC5pbm5lciwgLmNvbXBvbmVudC50eXBlX251bS5zZXQ0IC5pbm5lciB7XG4gICAgZ2FwOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bS5zZXQzIC5pbm5lciAudW5pdCAuY2lyY2xlLCAuY29tcG9uZW50LnR5cGVfbnVtLnNldDQgLmlubmVyIC51bml0IC5jaXJjbGUge1xuICAgIHdpZHRoOiAyMzBweDtcbiAgICBoZWlnaHQ6IDIzMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bS5zZXQzIC5pbm5lciAudW5pdCAuY2lyY2xlIGRsIGR0LCAuY29tcG9uZW50LnR5cGVfbnVtLnNldDQgLmlubmVyIC51bml0IC5jaXJjbGUgZGwgZHQge1xuICAgIHRvcDogNDBweDtcbiAgICBwYWRkaW5nOiAwIDM1cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbnVtLnNldDMgLmlubmVyIC51bml0IC5jaXJjbGUgZGwgZGQsIC5jb21wb25lbnQudHlwZV9udW0uc2V0NCAuaW5uZXIgLnVuaXQgLmNpcmNsZSBkbCBkZCB7XG4gICAgdG9wOiA4MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bS5zZXQzIC5pbm5lciAudW5pdCAuY2lyY2xlIGRsIGRkIHNwYW4sIC5jb21wb25lbnQudHlwZV9udW0uc2V0NCAuaW5uZXIgLnVuaXQgLmNpcmNsZSBkbCBkZCBzcGFuIHtcbiAgICBtYXJnaW46IDAgMCA4cHggNnB4O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbnVtIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbnVtIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbnVtIC5pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDIwcHg7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9udW0gLmlubmVyIC51bml0IHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbnVtIC5pbm5lciAudW5pdCB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9udW0gLmlubmVyIC51bml0OmZpcnN0LW9mLXR5cGUge1xuICBtYXJnaW4tdG9wOiB1bnNldDtcbn1cbi5jb21wb25lbnQudHlwZV9udW0gLmlubmVyIC51bml0IC5jaXJjbGUge1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMzAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmcpO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bSAuaW5uZXIgLnVuaXQgLmNpcmNsZSB7XG4gICAgd2lkdGg6IDMyMHB4O1xuICAgIGhlaWdodDogMzIwcHg7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9udW0gLmlubmVyIC51bml0IC5jaXJjbGUgZGwgZHQge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsaW5lLWhlaWdodDogMS40NDQ0NDQ0NDQ0O1xuICBsZXR0ZXItc3BhY2luZzogMGVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNzBweDtcbiAgcGFkZGluZzogMCAzMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNvbXBvbmVudC50eXBlX251bSAuaW5uZXIgLnVuaXQgLmNpcmNsZSBkbCBkZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZCk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bSAuaW5uZXIgLnVuaXQgLmNpcmNsZSBkbCBkZCB7XG4gICAgdG9wOiAxMjBweDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX251bSAuaW5uZXIgLnVuaXQgLmNpcmNsZSBkbCBkZCBlbSB7XG4gIGZvbnQtc2l6ZTogNzBweDtcbiAgZm9udC1zaXplOiA3cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDBlbTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bSAuaW5uZXIgLnVuaXQgLmNpcmNsZSBkbCBkZCBlbSB7XG4gICAgZm9udC1zaXplOiA4MHB4O1xuICAgIGZvbnQtc2l6ZTogOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsZXR0ZXItc3BhY2luZzogMGVtO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbnVtIC5pbm5lciAudW5pdCAuY2lyY2xlIGRsIGRkIHNwYW4ge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDBlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG59XG4uY29tcG9uZW50LnR5cGVfbnVtIC5pbm5lciAudW5pdCAuZGVzYyB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY5MjMwNzY5MjM7XG4gIGxldHRlci1zcGFjaW5nOiAwZW07XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX251bSAuaW5uZXIgLnVuaXQgLmRlc2Mge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDBlbTtcbiAgfVxufVxuXG4uY29tcG9uZW50LnR5cGVfd3lzaXd5ZyB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24pIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV93eXNpd3lnIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfd3lzaXd5ZyAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX3d5c2l3eWcgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuXG4uY29tcG9uZW50LnR5cGVfY2F0YWxvZyB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24pIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRhbG9nIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRhbG9nIC5pbm5lciAubGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgIGdhcDogbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKSBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi10b3A6IG1pbig0OHB4LCBjYWxjKDQ4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgcGFkZGluZzogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDI4IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRhbG9nIC5pbm5lciAubGlzdCAudW5pdCB7XG4gICAgcGFkZGluZzogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogc3ViZ3JpZDtcbiAgICBncmlkLXJvdzogc3BhbiAyO1xuICAgIGdhcDogbWluKDFweCwgY2FsYygxIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDFweCwgY2FsYygxIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmltYWdlIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBwcmludCBhbmQgKGFueS1ob3ZlcjogaG92ZXIpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5pbWFnZSBhIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgfVxuICAuY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmltYWdlIGE6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5pbWFnZSBpbWcge1xuICBib3JkZXItcmFkaXVzOiB1bnNldDtcbn1cbi5jb21wb25lbnQudHlwZV9jYXRhbG9nIC5pbm5lciAubGlzdCAudW5pdCAubWFpbiAuZGVzYyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmRlc2Mge1xuICAgIG1hcmdpbi10b3A6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9jYXRhbG9nIC5pbm5lciAubGlzdCAudW5pdCAubWFpbiAuZGVzYyAudGl0bGUge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteGwpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTYwJTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmRlc2MgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCBhbmQgKGFueS1ob3ZlcjogaG92ZXIpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC50aXRsZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC50aXRsZTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmRlc2MgLnRpdGxlIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC5zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNiAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktZGFyayk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1tKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDIwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC5zdWJ0aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1tKSAqIDFweCksIGNhbGModmFyKC0tZnMtbSkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC5mb3JtYXQge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LWZhbWlseTogdmFyKC0tbnVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmRlc2MgLmZvcm1hdCB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14cykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXhzKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmRlc2MgLmZvcm1hdCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC5mb3JtYXQgYSB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCBhbmQgKGFueS1ob3ZlcjogaG92ZXIpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC5mb3JtYXQgYSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC5mb3JtYXQgYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmRlc2MgLmZvcm1hdCBhIGltZyB7XG4gIHdpZHRoOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLm1haW4gLmRlc2MgLmZvcm1hdCBhIGltZyB7XG4gICAgd2lkdGg6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2NhdGFsb2cgLmlubmVyIC5saXN0IC51bml0IC5tYWluIC5kZXNjIC5mb3JtYXQgYSBzcGFuIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG4uY29tcG9uZW50LnR5cGVfY2F0YWxvZyAuaW5uZXIgLmxpc3QgLnVuaXQgLnN1bW1hcnkge1xuICBtYXJnaW4tdG9wOiBjYWxjKDYgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14cykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNjYlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9jYXRhbG9nIC5pbm5lciAubGlzdCAudW5pdCAuc3VtbWFyeSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14cykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXhzKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV9mYXEge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9mYXEge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMjQgLyAzNzUgKiAxMDB2dykgY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFyZ2luLXRvcDogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciAudW5pdCB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXRvcDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ZhcSAuaW5uZXIgLnVuaXQgLnEge1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrIGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnIgYXV0bztcbiAgZ2FwOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5xIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGdhcDogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ZhcSAuaW5uZXIgLnVuaXQgLnEuaXMtYWN0aXZlOjphZnRlciB7XG4gIHJvdGF0ZTogeiAxODBkZWc7XG59XG4uY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciAudW5pdCAucTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19ib3R0b20uc3ZnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHdpZHRoOiBjYWxjKDMwIC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IDFsaDtcbiAgdHJhbnNpdGlvbjogcm90YXRlIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciAudW5pdCAucTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciAudW5pdCAucTpiZWZvcmUge1xuICBjb250ZW50OiBcIlFcIjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4eGwpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMWxoO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0cmFuc2xhdGU6IDAgY2FsYygtMiAvIDM3NSAqIDEwMHZ3KTtcbiAgd2lkdGg6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5xOmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgbWF4KC0ycHgsIGNhbGMoLTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ZhcSAuaW5uZXIgLnVuaXQgLmEge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIGdhcDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciAudW5pdCAuYSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5hLmlzLWFjdGl2ZSB7XG4gIGhlaWdodDogYXV0bztcbn1cbi5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiQVwiO1xuICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHh4bCkgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxbGg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICB0cmFuc2xhdGU6IDAgY2FsYygtMSAvIDM3NSAqIDEwMHZ3KTtcbiAgd2lkdGg6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5hOmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgbWF4KC0xcHgsIGNhbGMoLTEgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ZhcSAuaW5uZXIgLnVuaXQgLmEgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIGNhbGMoMTYgLyAzNzUgKiAxMDB2dykgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5hIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luOiAwIGF1dG8gbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKSAhaW1wb3J0YW50O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciAudW5pdCAuYSBpbWcubXQtaW1hZ2UtcmlnaHQge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5hIGltZy5tdC1pbWFnZS1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIDAgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKSBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5hIGltZy5tdC1pbWFnZS1sZWZ0IHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfZmFxIC5pbm5lciAudW5pdCAuYSBpbWcubXQtaW1hZ2UtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKSBtaW4oMzJweCwgY2FsYygzMiAvIDE0NDAgKiAxMDB2dykpIDAgIWltcG9ydGFudDtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2ZhcSAuaW5uZXIgLnVuaXQgLmEgcCB7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9mYXEgLmlubmVyIC51bml0IC5hIHAge1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5jb21wb25lbnQudHlwZV9tZW1iZXIge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9tZW1iZXIge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogbWluKDQ4cHgsIGNhbGMoNDggLyAxNDQwICogMTAwdncpKSBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nOiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hcmdpbi10b3A6IGNhbGMoMjggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX21lbWJlciAuaW5uZXIgLnVuaXQge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgIGdyaWQtcm93OiBzcGFuIDQ7XG4gICAgZ2FwOiBtaW4oMXB4LCBjYWxjKDEgLyAxNDQwICogMTAwdncpKSBtaW4oMXB4LCBjYWxjKDEgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX21lbWJlciAuaW5uZXIgLnVuaXQ6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCAucGhvdG8gaW1nIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCAuaW5mbyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX21lbWJlciAuaW5uZXIgLnVuaXQgLmluZm8ge1xuICAgIG1hcmdpbi10b3A6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9tZW1iZXIgLmlubmVyIC51bml0IC5pbmZvIGgzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLWwpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTEwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCAuaW5mbyBoMyB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14eGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9tZW1iZXIgLmlubmVyIC51bml0IC5pbmZvIGgzIGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtdml2aWQpO1xuICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbXBvbmVudC50eXBlX21lbWJlciAuaW5uZXIgLnVuaXQgLmluZm8gaDMgaSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDFweCwgY2FsYygxIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBsaW5lLWhlaWdodDogMTcwJTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX21lbWJlciAuaW5uZXIgLnVuaXQgLmluZm8gLnBvc2l0aW9uIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4cykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxMjMlO1xuICBtYXJnaW4tdG9wOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9tZW1iZXIgLmlubmVyIC51bml0IC5pbmZvIC5wb3NpdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXMpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1zKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCAuaW5mbyAucHJvZmlsZSB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTMwJTtcbiAgbWFyZ2luLXRvcDogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCAuaW5mbyAucHJvZmlsZSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMXB4LCBjYWxjKDEgLyAxNDQwICogMTAwdncpKTtcbiAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX21lbWJlciAuaW5uZXIgLnVuaXQgLmRlc2Mge1xuICBtYXJnaW4tdG9wOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTIwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCAuZGVzYyB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1tKSAqIDFweCksIGNhbGModmFyKC0tZnMtbSkgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfbWVtYmVyIC5pbm5lciAudW5pdCAuZGVzYyBwIHtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbn1cbi5jb21wb25lbnQudHlwZV9tZW1iZXIgLmlubmVyIC51bml0IC5kZXNjIHA6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbn1cbi5jb21wb25lbnQudHlwZV9tZW1iZXIgLmlubmVyIC51bml0IC5idXR0b24ge1xuICBtYXJnaW4tdG9wOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9tZW1iZXIgLmlubmVyIC51bml0IC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IG1pbigzMnB4LCBjYWxjKDMyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5jb21wb25lbnQudHlwZV9tZW1iZXIgLmlubmVyIC51bml0IC5idXR0b24gYSB7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG5cbi5jb21wb25lbnQudHlwZV9pZnJhbWUge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29tcG9uZW50LnR5cGVfaWZyYW1lIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uY29tcG9uZW50LnR5cGVfaWZyYW1lIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb21wb25lbnQudHlwZV9pZnJhbWUgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLmNvbXBvbmVudC50eXBlX2lmcmFtZSAuaW5uZXIgaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubmF2aWdhdGlvbi5icmVhZGNydW1icywgLmJyZWFkY3J1bWJzLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMsIC5icmVhZGNydW1icy5jb21wb25lbnQudHlwZV9wYWdlbGlzdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogbWluKDEzMHB4LCBjYWxjKDEzMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5icmVhZGNydW1icyAuaW5uZXIsIC5icmVhZGNydW1icy5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMgLmlubmVyLCAuYnJlYWRjcnVtYnMuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmJyZWFkY3J1bWJzIC5pbm5lciwgLmJyZWFkY3J1bWJzLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDEycHgsIGNhbGMoMTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMgLmlubmVyIHVsLCAuYnJlYWRjcnVtYnMuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMgLmlubmVyIHVsIGxpLCAuYnJlYWRjcnVtYnMuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHVsIGxpIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtZGFyayk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmJyZWFkY3J1bWJzIC5pbm5lciB1bCBsaSwgLmJyZWFkY3J1bWJzLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCBsaSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5icmVhZGNydW1icyAuaW5uZXIgdWwgbGk6YWZ0ZXIsIC5icmVhZGNydW1icy5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGk6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IG1pbig2cHgsIGNhbGMoNiAvIDE0NDAgKiAxMDB2dykpO1xuICBoZWlnaHQ6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X2JyZWFkY3J1bWIuc3ZnKTtcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1tZWRpdW0pO1xufVxuLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMgLmlubmVyIHVsIGxpOmxhc3QtY2hpbGQ6YWZ0ZXIsIC5icmVhZGNydW1icy5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4ubmF2aWdhdGlvbi5icmVhZGNydW1icyAuaW5uZXIgdWwgbGkgYSwgLmJyZWFkY3J1bWJzLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCBsaSBhIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtZGFyayk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMgLmlubmVyIHVsIGxpIGE6aG92ZXIsIC5icmVhZGNydW1icy5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgfVxufVxuXG4ubmF2aWdhdGlvbi5wYWdlbmF0ZSwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZSwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oNjRweCwgY2FsYyg2NCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubV9uZXdzbGlzdCArIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciwgLm1fbmV3c2xpc3QgKyAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgcGFkZGluZy10b3A6IHVuc2V0O1xuICBib3JkZXItdG9wOiBub25lO1xufVxuLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIGEsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrIGdyaWQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICBtaW4td2lkdGg6IGNhbGMoMjggLyAzNzUgKiAxMDB2dyk7XG4gIGhlaWdodDogY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW51bSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXN1cmZhY2UpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIGEsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ge1xuICAgIG1pbi13aWR0aDogbWluKDQwcHgsIGNhbGMoNDAgLyAxNDQwICogMTAwdncpKTtcbiAgICBoZWlnaHQ6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgYTpob3ZlciwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBhOmhvdmVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgc3Bhbjpob3ZlciwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhIGltZywgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBhIGltZywgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIHNwYW4gaW1nLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4gaW1nIHtcbiAgd2lkdGg6IGNhbGMoNiAvIDM3NSAqIDEwMHZ3KTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdHJhbnNsYXRlOiAwIGNhbGMoLTEgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIGEgaW1nLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIGEgaW1nLCAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgc3BhbiBpbWcsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3BhbiBpbWcge1xuICAgIHdpZHRoOiBtaW4oOXB4LCBjYWxjKDkgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxufVxuLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIGEuY3VycmVudCwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBhLmN1cnJlbnQsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhLmN1cnJlbnRfcGFnZSwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBhLmN1cnJlbnRfcGFnZSwgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIHNwYW4uY3VycmVudCwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmN1cnJlbnQsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLmN1cnJlbnRfcGFnZSwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmN1cnJlbnRfcGFnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIGEucHJldmlvdXNwb3N0c2xpbmssIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgYS5wcmV2aW91c3Bvc3RzbGluaywgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIGEubmV4dHBvc3RzbGluaywgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBhLm5leHRwb3N0c2xpbmssIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhLmxpbmtfYmVmb3JlLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIGEubGlua19iZWZvcmUsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhLmxpbmtfbmV4dCwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBhLmxpbmtfbmV4dCwgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIHNwYW4ucHJldmlvdXNwb3N0c2xpbmssIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5wcmV2aW91c3Bvc3RzbGluaywgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIHNwYW4ubmV4dHBvc3RzbGluaywgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHRwb3N0c2xpbmssIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLmxpbmtfYmVmb3JlLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ubGlua19iZWZvcmUsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLmxpbmtfbmV4dCwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmxpbmtfbmV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhLnByZXZpb3VzcG9zdHNsaW5rOmhvdmVyLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIGEucHJldmlvdXNwb3N0c2xpbms6aG92ZXIsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBhLm5leHRwb3N0c2xpbms6aG92ZXIsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgYS5uZXh0cG9zdHNsaW5rOmhvdmVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgYS5saW5rX2JlZm9yZTpob3ZlciwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBhLmxpbmtfYmVmb3JlOmhvdmVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgYS5saW5rX25leHQ6aG92ZXIsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgYS5saW5rX25leHQ6aG92ZXIsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLnByZXZpb3VzcG9zdHNsaW5rOmhvdmVyLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ucHJldmlvdXNwb3N0c2xpbms6aG92ZXIsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLm5leHRwb3N0c2xpbms6aG92ZXIsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5uZXh0cG9zdHNsaW5rOmhvdmVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgc3Bhbi5saW5rX2JlZm9yZTpob3ZlciwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmxpbmtfYmVmb3JlOmhvdmVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgc3Bhbi5saW5rX25leHQ6aG92ZXIsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5saW5rX25leHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgfVxufVxuLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIGEucHJldmlvdXNwb3N0c2xpbmsgaW1nLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIGEucHJldmlvdXNwb3N0c2xpbmsgaW1nLCAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgYS5saW5rX2JlZm9yZSBpbWcsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgYS5saW5rX2JlZm9yZSBpbWcsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciBzcGFuLnByZXZpb3VzcG9zdHNsaW5rIGltZywgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXZpb3VzcG9zdHNsaW5rIGltZywgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIHNwYW4ubGlua19iZWZvcmUgaW1nLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ubGlua19iZWZvcmUgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgLndwLXBhZ2VuYXZpLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC53cC1wYWdlbmF2aSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgLndwLXBhZ2VuYXZpIGEsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLndwLXBhZ2VuYXZpIGEsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciAud3AtcGFnZW5hdmkgc3BhbiwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAud3AtcGFnZW5hdmkgc3BhbiB7XG4gIG1hcmdpbjogMCBjYWxjKDQgLyAzNzUgKiAxMDB2dykgY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgLndwLXBhZ2VuYXZpIGEsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLndwLXBhZ2VuYXZpIGEsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlIC5pbm5lciAud3AtcGFnZW5hdmkgc3BhbiwgLnBhZ2VuYXRlLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAud3AtcGFnZW5hdmkgc3BhbiB7XG4gICAgbWFyZ2luOiAwIGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZSAuaW5uZXIgdWwsIC5wYWdlbmF0ZS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ucGFnZW5hdGUgLmlubmVyIHVsLCAucGFnZW5hdGUuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHVsIHtcbiAgICBnYXA6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgcGFkZGluZy1ibG9jazogY2FsYyg1NiAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG4gIGdyaWQtdGVtcGxhdGU6IFwicHJldiBiYWNrIG5leHRcIiBhdXRvLzFmciBhdXRvIDFmcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gICAgZ3JpZC10ZW1wbGF0ZTogXCJwcmV2IGJhY2sgbmV4dFwiIGF1dG8vYXV0byBhdXRvIGF1dG87XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4sIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ubmV4dCBhLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYSwgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLnByZXYgYSwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5wcmV2IGEge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImJlZm9yZSB0ZXh0IGFmdGVyXCI7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogY2FsYygxNDIgLyAzNzUgKiAxMDB2dyk7XG4gIC8qXG4gICZbdGFyZ2V0PVwiX2JsYW5rXCJdIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2dyg0cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGdhcDogcGMoNHB4KTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICB3aWR0aDogdncoMTRweCk7XG4gICAgICBoZWlnaHQ6IHZ3KDE0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogcGMoMThweCk7XG4gICAgICAgIGhlaWdodDogcGMoMThweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xuICBoZWlnaHQ6IGNhbGMoNDAgLyAzNzUgKiAxMDB2dyk7XG4gIG1pbi13aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5uZXh0IGEsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ubmV4dCBhLCAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ucHJldiBhLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXYgYSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLXdpZHRoOiBtaW4oMjI0cHgsIGNhbGMoMjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLm5leHQgYS5yZXZlcnNlLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYS5yZXZlcnNlLCAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ucHJldiBhLnJldmVyc2UsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ucHJldiBhLnJldmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ubmV4dCBhLnJldmVyc2U6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYS5yZXZlcnNlOjphZnRlciwgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLnByZXYgYS5yZXZlcnNlOjphZnRlciwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5wcmV2IGEucmV2ZXJzZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLm5leHQgYS5yZXZlcnNlOmhvdmVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYS5yZXZlcnNlOmhvdmVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ucHJldiBhLnJldmVyc2U6aG92ZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ucHJldiBhLnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5uZXh0IGE6OmJlZm9yZSwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5uZXh0IGE6OmJlZm9yZSwgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLnByZXYgYTo6YmVmb3JlLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXYgYTo6YmVmb3JlIHtcbiAgZ3JpZC1hcmVhOiBiZWZvcmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgcm90YXRlOiB6IDE4MGRlZztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ubmV4dCBhOjpiZWZvcmUsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ubmV4dCBhOjpiZWZvcmUsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmJlZm9yZSwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmJlZm9yZSB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5uZXh0IGE6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYTo6YWZ0ZXIsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXYgYTo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgZ3JpZC1hcmVhOiBhZnRlcjtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ubmV4dCBhOjphZnRlciwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5uZXh0IGE6OmFmdGVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ucHJldiBhOjphZnRlciwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmFmdGVyIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5uZXh0IGE6aG92ZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ubmV4dCBhOmhvdmVyLCAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ucHJldiBhOmhvdmVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXYgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctY29ycG9yYXRlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gIH1cbiAgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLm5leHQgYTpob3Zlcjo6YWZ0ZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ubmV4dCBhOmhvdmVyOjphZnRlciwgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLnByZXYgYTpob3Zlcjo6YWZ0ZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ucHJldiBhOmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbiAgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLm5leHQgYTpob3Zlcjo6YmVmb3JlLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYTpob3Zlcjo6YmVmb3JlLCAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ucHJldiBhOmhvdmVyOjpiZWZvcmUsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ucHJldiBhOmhvdmVyOjpiZWZvcmUge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ubmV4dCBhIHNwYW4sIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ubmV4dCBhIHNwYW4sIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGEgc3BhbiwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5wcmV2IGEgc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5uZXh0IGE6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYTo6YWZ0ZXIsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXYgYTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLm5leHQgYTpob3ZlciwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5uZXh0IGE6aG92ZXIsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGE6aG92ZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ucHJldiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLm5leHQgYSwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5uZXh0IGEsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGEsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4ucHJldiBhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiBtaW4oMTAwcHgsIGNhbGMoMTAwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2LCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXYge1xuICBncmlkLWFyZWE6IHByZXY7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmJlZm9yZSwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5wcmV2IGE6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLnByZXYgYTo6YWZ0ZXIge1xuICB3aWR0aDogY2FsYygxIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5uZXh0LCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQge1xuICBncmlkLWFyZWE6IG5leHQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLm5leHQgYTo6YmVmb3JlLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLm5leHQgYTo6YmVmb3JlIHtcbiAgd2lkdGg6IGNhbGMoMSAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4ubmV4dCBhOjphZnRlciwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5uZXh0IGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xufVxuLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLmJhY2ssIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4uYmFjayB7XG4gIGdyaWQtYXJlYTogYmFjaztcbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGEsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4uYmFjayBhIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJiZWZvcmUgdGV4dCBhZnRlclwiO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZzogY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IGNhbGMoMTQyIC8gMzc1ICogMTAwdncpO1xuICAvKlxuICAmW3RhcmdldD1cIl9ibGFua1wiXSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogdncoNHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBnYXA6IHBjKDRweCk7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHN0YXJ0O1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgd2lkdGg6IHZ3KDE0cHgpO1xuICAgICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgd2lkdGg6IHBjKDE4cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE4cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAgICovXG4gIGhlaWdodDogY2FsYyg0MCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWluLXdpZHRoOiBhdXRvO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGEsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4uYmFjayBhIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBtaW4td2lkdGg6IG1pbigyMjRweCwgY2FsYygyMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4uYmFjayBhLnJldmVyc2UsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4uYmFjayBhLnJldmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4uYmFjayBhLnJldmVyc2U6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmJhY2sgYS5yZXZlcnNlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4uYmFjayBhLnJldmVyc2U6aG92ZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4uYmFjayBhLnJldmVyc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGE6OmJlZm9yZSwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5iYWNrIGE6OmJlZm9yZSB7XG4gIGdyaWQtYXJlYTogYmVmb3JlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIG1hc2stc2l6ZTogYXV0byBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIHJvdGF0ZTogeiAxODBkZWc7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLmJhY2sgYTo6YmVmb3JlLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmJhY2sgYTo6YmVmb3JlIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLmJhY2sgYTo6YWZ0ZXIsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4uYmFjayBhOjphZnRlciB7XG4gIGp1c3RpZnktc2VsZjogZW5kO1xuICBncmlkLWFyZWE6IGFmdGVyO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGFzcGVjdC1yYXRpbzogMS8xO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGE6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmJhY2sgYTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIC5pbm5lciBzcGFuLmJhY2sgYTpob3ZlciwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5iYWNrIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICB9XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGE6aG92ZXI6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmJhY2sgYTpob3Zlcjo6YWZ0ZXIge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG4gIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGE6aG92ZXI6OmJlZm9yZSwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5iYWNrIGE6aG92ZXI6OmJlZm9yZSB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGEgc3BhbiwgLnBhZ2VuYXRlX2RldGFpbC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgc3Bhbi5iYWNrIGEgc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4uYmFjayBhLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmJhY2sgYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4ubmF2aWdhdGlvbi5wYWdlbmF0ZV9kZXRhaWwgLmlubmVyIHNwYW4uYmFjayBhOjpiZWZvcmUsIC5wYWdlbmF0ZV9kZXRhaWwuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHNwYW4uYmFjayBhOjpiZWZvcmUsIC5uYXZpZ2F0aW9uLnBhZ2VuYXRlX2RldGFpbCAuaW5uZXIgc3Bhbi5iYWNrIGE6OmFmdGVyLCAucGFnZW5hdGVfZGV0YWlsLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciBzcGFuLmJhY2sgYTo6YWZ0ZXIge1xuICB3aWR0aDogY2FsYygxIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm5hdmlnYXRpb24ubG9jYWxuYXYsIC5sb2NhbG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xufVxuLm5hdmlnYXRpb24ubG9jYWxuYXY6aGFzKGxpKSwgLmxvY2FsbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0OmhhcyhsaSkge1xuICBwYWRkaW5nOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpIGNhbGMoMzIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubG9jYWxuYXY6aGFzKGxpKSwgLmxvY2FsbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0OmhhcyhsaSkge1xuICAgIHBhZGRpbmc6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXYgLmlubmVyIC5vdmVyZmxvdywgLmxvY2FsbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cge1xuICBvdmVyZmxvdzogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdiAuaW5uZXIgLm92ZXJmbG93LCAubG9jYWxuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZzogdW5zZXQ7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmxvY2FsbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwsIC5sb2NhbG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmxvY2FsbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwsIC5sb2NhbG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmxvY2FsbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGksIC5sb2NhbG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mcy14cyk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG59XG4ubmF2aWdhdGlvbi5sb2NhbG5hdiAuaW5uZXIgLm92ZXJmbG93IHVsIGxpOmxhc3QtY2hpbGQsIC5sb2NhbG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdiAuaW5uZXIgLm92ZXJmbG93IHVsIGxpLCAubG9jYWxuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1tKSAqIDFweCksIGNhbGModmFyKC0tZnMtbSkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaS5hY3RpdmUgYSwgLmxvY2FsbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkuYWN0aXZlIGEsIC5uYXZpZ2F0aW9uLmxvY2FsbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gYSwgLmxvY2FsbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWxpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdiAuaW5uZXIgLm92ZXJmbG93IHVsIGxpIGE6aG92ZXIsIC5sb2NhbG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWxpZ2h0KTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSBhLCAubG9jYWxuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKSwgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICBwYWRkaW5nOiBjYWxjKDYgLyAzNzUgKiAxMDB2dykgY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmxvY2FsbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkgYSwgLmxvY2FsbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkgYSB7XG4gICAgcGFkZGluZzogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDM4cHgsIGNhbGMoMzggLyAxNDQwICogMTAwdncpKTtcbiAgICBtaW4td2lkdGg6IG1pbigyMjBweCwgY2FsYygyMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViLCAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbikgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViLCAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgKiAxcHgpLCBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5hcmNoaXZlbmF2ICsgLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViLCAuYXJjaGl2ZW5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCArIC5uYXZpZ2F0aW9uLmxvY2FsbmF2X3N1YiwgLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiArIC5sb2NhbG5hdl9zdWIuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QsIC5hcmNoaXZlbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0ICsgLmxvY2FsbmF2X3N1Yi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLW1vZHVsZSkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiArIC5uYXZpZ2F0aW9uLmxvY2FsbmF2X3N1YiwgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgKyAubmF2aWdhdGlvbi5sb2NhbG5hdl9zdWIsIC5uYXZpZ2F0aW9uLmFyY2hpdmVuYXYgKyAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0LCAuYXJjaGl2ZW5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCArIC5sb2NhbG5hdl9zdWIuY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1tb2R1bGUtcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tbW9kdWxlLXBjKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5sb2NhbG5hdl9zdWIgLmlubmVyLCAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9zdWIgLmlubmVyLCAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmxvY2FsbmF2X3N1YiAuaW5uZXIgdWwsIC5sb2NhbG5hdl9zdWIuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHVsIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgZ2FwOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygxNSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9zdWIgLmlubmVyIHVsLCAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiB1bnNldDtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViIC5pbm5lciB1bCBsaSwgLmxvY2FsbmF2X3N1Yi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmxvY2FsbmF2X3N1YiAuaW5uZXIgdWwgbGksIC5sb2NhbG5hdl9zdWIuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHVsIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogbWluKDEycHgsIGNhbGMoMTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViIC5pbm5lciB1bCBsaS5hY3RpdmUgYSwgLmxvY2FsbmF2X3N1Yi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkuYWN0aXZlIGEsIC5uYXZpZ2F0aW9uLmxvY2FsbmF2X3N1YiAuaW5uZXIgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gYSwgLmxvY2FsbmF2X3N1Yi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG59XG4ubmF2aWdhdGlvbi5sb2NhbG5hdl9zdWIgLmlubmVyIHVsIGxpIGEsIC5sb2NhbG5hdl9zdWIuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHVsIGxpIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMjAwJTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygyIC8gMzc1ICogMTAwdncpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViIC5pbm5lciB1bCBsaSBhLCAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCBsaSBhIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLW0pICogMXB4KSwgY2FsYyh2YXIoLS1mcy1tKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLXdpZHRoOiBtaW4oMTYwcHgsIGNhbGMoMTYwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViIC5pbm5lciB1bCBsaSBhOmhvdmVyLCAubG9jYWxuYXZfc3ViLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCBsaSBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tLCAubG9jYWxuYXZfYm90dG9tLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbikgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20sIC5sb2NhbG5hdl9ib3R0b20uY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAqIDFweCksIGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20sIC5sb2NhbG5hdl9ib3R0b20uY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4ubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b206bm90KDpoYXMobGkpKSwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdDpub3QoOmhhcyhsaSkpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5uYXZpZ2F0aW9uLmxvY2FsbmF2X2JvdHRvbSAuaW5uZXIsIC5sb2NhbG5hdl9ib3R0b20uY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmc6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dykgY2FsYygxNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDI4IC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tIC5pbm5lciwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIge1xuICAgIHBhZGRpbmc6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDExMHB4LCBjYWxjKDExMCAvIDE0NDAgKiAxMDB2dykpIG1pbig0OHB4LCBjYWxjKDQ4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmxvY2FsbmF2X2JvdHRvbSAuaW5uZXIgLnRpdGxlLCAubG9jYWxuYXZfYm90dG9tLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAudGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICAvKlxuICAuYWxsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMTVweDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE3cHg7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIHBkO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSBwZDtcbiAgICAgICAgYmFja2dyb3VuZDogY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQgdmFyKC0tYXJyb3ctYnV0dG9uKTtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgKi9cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20gLmlubmVyIC50aXRsZSwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLnRpdGxlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tIC5pbm5lciAudGl0bGUgaDIgYSwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLnRpdGxlIGgyIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbSkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tIC5pbm5lciAudGl0bGUgaDIgYSwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLnRpdGxlIGgyIGEge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20gLmlubmVyIC50aXRsZSBoMiBhOjphZnRlciwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLnRpdGxlIGgyIGE6OmFmdGVyIHtcbiAganVzdGlmeS1zZWxmOiBlbmQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIG1hc2stc2l6ZTogYXV0byBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tIC5pbm5lciAudGl0bGUgaDIgYTo6YWZ0ZXIsIC5sb2NhbG5hdl9ib3R0b20uY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC50aXRsZSBoMiBhOjphZnRlciB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20gLmlubmVyIC50aXRsZSBoMiBhOmhvdmVyOjphZnRlciwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLnRpdGxlIGgyIGE6aG92ZXI6OmFmdGVyIHtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tIC5pbm5lciB1bCwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IGNhbGMoMTIgLyAzNzUgKiAxMDB2dykgY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20gLmlubmVyIHVsLCAubG9jYWxuYXZfYm90dG9tLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBnYXA6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDEzcHgsIGNhbGMoMTMgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tIC5pbm5lciB1bCBsaSBhLCAubG9jYWxuYXZfYm90dG9tLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCBsaSBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1tZWRpdW0pO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTYwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogY2FsYyg2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmxvY2FsbmF2X2JvdHRvbSAuaW5uZXIgdWwgbGkgYSwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkgYSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbig2cHgsIGNhbGMoNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubG9jYWxuYXZfYm90dG9tIC5pbm5lciB1bCBsaSBhOjphZnRlciwgLmxvY2FsbmF2X2JvdHRvbS5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkgYTo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20gLmlubmVyIHVsIGxpIGE6OmFmdGVyLCAubG9jYWxuYXZfYm90dG9tLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCBsaSBhOjphZnRlciB7XG4gICAgd2lkdGg6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFzay1zaXplOiBhdXRvIG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAubmF2aWdhdGlvbi5sb2NhbG5hdl9ib3R0b20gLmlubmVyIHVsIGxpIGE6aG92ZXI6OmFmdGVyLCAubG9jYWxuYXZfYm90dG9tLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB1bCBsaSBhOmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiwgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5hcmNoaXZlbmF2LCAuYXJjaGl2ZW5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiAuaW5uZXIsIC5hcmNoaXZlbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5hcmNoaXZlbmF2IC5pbm5lciwgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiAuaW5uZXIgLm92ZXJmbG93LCAuYXJjaGl2ZW5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmc6IDAgMCBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmFyY2hpdmVuYXYgLmlubmVyIC5vdmVyZmxvdywgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcGFkZGluZzogdW5zZXQ7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmFyY2hpdmVuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCwgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5hcmNoaXZlbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwsIC5hcmNoaXZlbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmFyY2hpdmVuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSwgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14cykgLyAzNzUgKiAxMDB2dyk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDYgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5hcmNoaXZlbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGksIC5hcmNoaXZlbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWxlZnQ6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5hcmNoaXZlbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGk6Zmlyc3QtY2hpbGQsIC5hcmNoaXZlbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogdW5zZXQ7XG59XG4ubmF2aWdhdGlvbi5hcmNoaXZlbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkuYWN0aXZlLCAuYXJjaGl2ZW5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpLmFjdGl2ZSwgLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiAuaW5uZXIgLm92ZXJmbG93IHVsIGxpLmN1cnJlbnRfcGFnZV9pdGVtLCAuYXJjaGl2ZW5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgei1pbmRleDogMjtcbn1cbi5uYXZpZ2F0aW9uLmFyY2hpdmVuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaS5hY3RpdmUgYSwgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCBsaS5hY3RpdmUgYSwgLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiAuaW5uZXIgLm92ZXJmbG93IHVsIGxpLmN1cnJlbnRfcGFnZV9pdGVtIGEsIC5hcmNoaXZlbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkuY3VycmVudF9wYWdlX2l0ZW0gYSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xufVxuLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiAuaW5uZXIgLm92ZXJmbG93IHVsIGxpIGEsIC5hcmNoaXZlbmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nOiBjYWxjKDQgLyAzNzUgKiAxMDB2dykgY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW51bSk7XG4gIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIGxpbmUtaGVpZ2h0OiAxODAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzNzUgKiAxMDB2dykgY2FsYygyIC8gMzc1ICogMTAwdncpIDAgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5hcmNoaXZlbmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkgYSwgLmFyY2hpdmVuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSBhIHtcbiAgICBwYWRkaW5nOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKSBtaW4oNjBweCwgY2FsYyg2MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpIG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpIDAgMDtcbiAgfVxufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5uYXZpZ2F0aW9uLmFyY2hpdmVuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSBhOmhvdmVyLCAuYXJjaGl2ZW5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIH1cbn1cblxuLnBOZXdzU2V0IHtcbiAgcGFkZGluZy1ibG9jazogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dykgY2FsYyg0MCAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZTogXCJkYXRlIGNhdFwiIGF1dG8gXCJ0aXRsZSB0aXRsZVwiIGF1dG8vYXV0byAxZnI7XG4gIGNvbHVtbi1nYXA6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgcm93LWdhcDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0VBRUVGNztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wTmV3c1NldCB7XG4gICAgZ3JpZC10ZW1wbGF0ZTogXCJkYXRlIGNhdCB0aXRsZVwiIGF1dG8vYXV0byBhdXRvIDFmcjtcbiAgICBjb2x1bW4tZ2FwOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHJvdy1nYXA6IDA7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDQwcHgsIGNhbGMoNDAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBOZXdzU2V0OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBtYXNrLXNpemU6IGNvbnRhaW47XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgbWFzay1zaXplOiBhdXRvIGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICByaWdodDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zbGF0ZTogMCAtNTAlO1xuICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBOZXdzU2V0OjphZnRlciB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgaGVpZ2h0OiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHJpZ2h0OiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLnBOZXdzU2V0OmhvdmVyOjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbn1cbi5wTmV3c1NldCAuZGF0ZSB7XG4gIGdyaWQtYXJlYTogZGF0ZTtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wTmV3c1NldCAuZGF0ZSB7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gIH1cbn1cbi5wTmV3c1NldCAuZGF0ZSAucE5ld3NEYXRlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLW51bSk7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE0NSU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBOZXdzU2V0IC5kYXRlIC5wTmV3c0RhdGUge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtcykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wTmV3c1NldCAuY2F0IHtcbiAgZ3JpZC1hcmVhOiBjYXQ7XG59XG4ucE5ld3NTZXQgLmNhdCAucE5ld3NDYXRlZ29yeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4cykgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmc6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE0NSU7XG4gIG1pbi13aWR0aDogY2FsYygxMDQgLyAzNzUgKiAxMDB2dyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucE5ld3NTZXQgLmNhdCAucE5ld3NDYXRlZ29yeSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKSBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oMnB4LCBjYWxjKDIgLyAxNDQwICogMTAwdncpKTtcbiAgICBtaW4td2lkdGg6IG1pbigxMTZweCwgY2FsYygxMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBOZXdzU2V0IC50aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZ3JpZC1hcmVhOiB0aXRsZTtcbn1cbi5wTmV3c1NldCAudGl0bGUgLnBOZXdzVGl0bGUge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTY2LjY2NyU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBOZXdzU2V0IC50aXRsZSAucE5ld3NUaXRsZSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBsaW5lLWhlaWdodDogMTc3JTtcbiAgICB0cmFuc2xhdGU6IDAgLTFweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wTmV3c1NldCAudGl0bGUge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24ubmV3c2xpc3QsIC5uZXdzbGlzdC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCB7XG4gIG1hcmdpbi10b3A6IGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24pIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLm5ld3NsaXN0LCAubmV3c2xpc3QuY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IG1pbihjYWxjKHZhcigtLW1hcmdpbi1zZWN0aW9uLXBjKSAqIDFweCksIGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLm5ld3NsaXN0IC5pbm5lciwgLm5ld3NsaXN0LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5uZXdzbGlzdCAuaW5uZXIsIC5uZXdzbGlzdC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4ubmF2aWdhdGlvbi5uZXdzbGlzdCAuaW5uZXIgdWwgbGksIC5uZXdzbGlzdC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkge1xuICBtYXJnaW4tdG9wOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubmV3c2xpc3QgLmlubmVyIHVsIGxpLCAubmV3c2xpc3QuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHVsIGxpIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24ubmV3c2xpc3QgLmlubmVyIHVsIGxpIGEsIC5uZXdzbGlzdC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24ubmV3c2xpc3QgLmlubmVyIHVsIGxpIGEsIC5uZXdzbGlzdC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkgYSB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLm5ld3NsaXN0IC5pbm5lciB1bCBsaSBhIC5jYXQgLnBOZXdzQ2F0ZWdvcnksIC5uZXdzbGlzdC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgdWwgbGkgYSAuY2F0IC5wTmV3c0NhdGVnb3J5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xufVxuXG4ubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IHtcbiAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbikgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QsIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCB7XG4gICAgbWFyZ2luLXRvcDogbWluKGNhbGModmFyKC0tbWFyZ2luLXNlY3Rpb24tcGMpICogMXB4KSwgY2FsYyh2YXIoLS1tYXJnaW4tc2VjdGlvbi1wYykgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciAubGlzdCwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAubGlzdCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXh4bGFyZ2UpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciAubGlzdCwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAubGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0IC51bml0LCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmc6IGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZTogXCJpbWFnZSBkZXNjXCIgYXV0byBcInN1bW1hcnkgc3VtbWFyeVwiIGF1dG8vMWZyIDFmcjtcbiAgZ2FwOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciAubGlzdCAudW5pdCwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAubGlzdCAudW5pdCB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgZ2FwOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmc6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ3JpZC10ZW1wbGF0ZTogXCJpbWFnZSBkZXNjXCIgYXV0byBcInN1bW1hcnkgc3VtbWFyeVwiIGF1dG8vbWluKDI0MHB4LCBjYWxjKDI0MCAvIDE0NDAgKiAxMDB2dykpIDFmcjtcbiAgICBnYXA6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0IC51bml0OmZpcnN0LWNoaWxkLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogdW5zZXQ7XG59XG4ubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmltYWdlLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5pbWFnZSB7XG4gIGdyaWQtYXJlYTogaW1hZ2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5pbWFnZSwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuaW1hZ2Uge1xuICAgIHdpZHRoOiBtaW4oMjQwcHgsIGNhbGMoMjQwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCBhbmQgKGFueS1ob3ZlcjogaG92ZXIpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5pbWFnZSBhLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5pbWFnZSBhIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgfVxuICAubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmltYWdlIGE6aG92ZXIsIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmltYWdlIGE6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5pbWFnZSBhIGltZywgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuaW1hZ2UgYSBpbWcge1xuICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4ubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MsIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2Mge1xuICBncmlkLWFyZWE6IGRlc2M7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5kZXNjLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5kZXNjIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICBmbGV4OiAxO1xuICB9XG59XG4ubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MgLmRhdGUsIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MgLmRhdGUge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LWZhbWlseTogdmFyKC0tbnVtKTtcbiAgbGluZS1oZWlnaHQ6IDE2MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5kZXNjIC5kYXRlLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5kZXNjIC5kYXRlIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXMpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1zKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MgLmNhdCwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuZGVzYyAuY2F0IHtcbiAgbWFyZ2luLXRvcDogY2FsYyg2IC8gMzc1ICogMTAwdncpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuZGVzYyAuY2F0LCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5kZXNjIC5jYXQge1xuICAgIG1hcmdpbi10b3A6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdhcDogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuZGVzYyAuY2F0IGEsIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MgLmNhdCBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHhzKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIHBhZGRpbmc6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDYgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MgLmNhdCBhLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5kZXNjIC5jYXQgYSB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBsaW5lLWhlaWdodDogMjAwJTtcbiAgICBwYWRkaW5nOiBtaW4oMXB4LCBjYWxjKDEgLyAxNDQwICogMTAwdncpKSBtaW4oMTVweCwgY2FsYygxNSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MgLnRpdGxlLCAuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5saXN0IC51bml0IC5kZXNjIC50aXRsZSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNiAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTYwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuZGVzYyAudGl0bGUsIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLmRlc2MgLnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5uYXZpZ2F0aW9uLmFydGljbGVsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuZGVzYyAudGl0bGUgYSwgLmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAubGlzdCAudW5pdCAuZGVzYyAudGl0bGUgYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLnN1bW1hcnksIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLnN1bW1hcnkge1xuICBncmlkLWFyZWE6IHN1bW1hcnk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14cykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItZ3JheS1kYXJrKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLnN1bW1hcnksIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3QgLnVuaXQgLnN1bW1hcnkge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGluZS1oZWlnaHQ6IDE2MCU7XG4gIH1cbn1cblxuLm5hdmlnYXRpb24ubWFpbmNhdG5hdiwgLm1haW5jYXRuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1Yik7XG59XG4ubmF2aWdhdGlvbi5tYWluY2F0bmF2IC5pbm5lciwgLm1haW5jYXRuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZpZ2F0aW9uLm1haW5jYXRuYXYgLmlubmVyLCAubWFpbmNhdG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4ubmF2aWdhdGlvbi5tYWluY2F0bmF2IC5pbm5lciAub3ZlcmZsb3csIC5tYWluY2F0bmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cge1xuICBvdmVyZmxvdzogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAubmF2aWdhdGlvbi5tYWluY2F0bmF2IC5pbm5lciAub3ZlcmZsb3csIC5tYWluY2F0bmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBhZGRpbmc6IHVuc2V0O1xuICB9XG59XG4ubmF2aWdhdGlvbi5tYWluY2F0bmF2IC5pbm5lciAub3ZlcmZsb3cgdWwsIC5tYWluY2F0bmF2LmNvbXBvbmVudC50eXBlX3BhZ2VsaXN0IC5pbm5lciAub3ZlcmZsb3cgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5uYXZpZ2F0aW9uLm1haW5jYXRuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSwgLm1haW5jYXRuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubmF2aWdhdGlvbi5tYWluY2F0bmF2IC5pbm5lciAub3ZlcmZsb3cgdWwgbGkgYSwgLm1haW5jYXRuYXYuY29tcG9uZW50LnR5cGVfcGFnZWxpc3QgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UteGxhcmdlKSB2YXIoLS1zcGFjZS1zbWFsbCk7XG59XG5AbWVkaWEgcHJpbnQgYW5kIChhbnktaG92ZXI6IGhvdmVyKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5uYXZpZ2F0aW9uLm1haW5jYXRuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSBhOmhvdmVyLCAubWFpbmNhdG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpIGE6aG92ZXIge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG4gIC5uYXZpZ2F0aW9uLm1haW5jYXRuYXYgLmlubmVyIC5vdmVyZmxvdyB1bCBsaSBhOmhvdmVyOmhvdmVyLCAubWFpbmNhdG5hdi5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLm92ZXJmbG93IHVsIGxpIGE6aG92ZXI6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogdW5zZXQ7XG59XG4uc2xpY2stbGlzdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiBoYW5kO1xufVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjaywgLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIlwiO1xufVxuLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbn1cblxuW2Rpcj1ydGxdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNsaWNrLXNsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmhlYWRlciArIC5zdGF0aWMuc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0taGVpZ2h0LWhlYWRlcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaGVhZGVyICsgLnN0YXRpYy5zbGlkZXIge1xuICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0taGVpZ2h0LWhlYWRlci1wYykgKyA1M3B4KTtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnVuaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogdmFyKC0taGVpZ2h0LXNsaWRlci10YWJsZXQpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0IHtcbiAgICBoZWlnaHQ6IHZhcigtLWhlaWdodC1zbGlkZXItcGMpO1xuICAgIGFzcGVjdC1yYXRpbzogMi8xO1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAudW5pdCA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQge1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1sYXJnZSkgdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDc1LCA3NSwgNzUsIDAuODUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogdmFyKC0td2lkdGgtc2xpZGVyLXRleHQpO1xuICAgIGxlZnQ6IHZhcigtLXBhZGRpbmctc2xpZGVyLXBjKTtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IGF1dG87XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAudW5pdCAudGV4dC5yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0LnJpZ2h0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiB2YXIoLS1wYWRkaW5nLXNsaWRlci1wYyk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlciAudW5pdCAudGV4dC5yaWdodCAuYnV0dG9uIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQuY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0LmNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zbGlkZXItdGV4dCk7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQuY2VudGVyIC5idXR0b24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQgLnRleHRpbm5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0IGgxIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWhlYWRpbmcpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0IGgxIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14bGFyZ2UpO1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAudW5pdCAudGV4dCBoMSArIHAge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS14c21hbGwpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0IGgxICsgcCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQgcCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQgcCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWVkaXVtKTtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGFyZ2UpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQuYmxhY2sgaDEsIC5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0LmJsYWNrIHAge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQgLmJ1dHRvbiB7XG4gIG1hcmdpbjogdmFyKC0tc3BhY2Utc21hbGwpIDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cbi5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0IC5idXR0b24gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogdmFyKC0tc3BhY2Utc21hbGwpIHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLXhzbWFsbCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnVuaXQgLnRleHQgLmJ1dHRvbiBhIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWVkaXVtKSB2YXIoLS1zcGFjZS14eGxhcmdlKTtcbiAgfVxufVxuQG1lZGlhIHByaW50IGFuZCAoYW55LWhvdmVyOiBob3ZlciksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuc3RhdGljLnNsaWRlciAudW5pdCAudGV4dCAuYnV0dG9uIGEge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0IC50ZXh0IC5idXR0b24gYTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAudW5pdCAuYmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1oZWlnaHQtc2xpZGVyKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlciAudW5pdCAuYmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogdmFyKC0taGVpZ2h0LXNsaWRlci10YWJsZXQpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0IC5iZyB7XG4gICAgaGVpZ2h0OiB2YXIoLS1oZWlnaHQtc2xpZGVyLXBjKTtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQuc2xpY2stYWN0aXZlOjpiZWZvcmUsIC5zdGF0aWMuc2xpZGVyIC51bml0LmlzLWFjdGl2ZS1uZXh0OjpiZWZvcmUge1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAwO1xufVxuLnN0YXRpYy5zbGlkZXIgLnVuaXQgLmJnLnBjIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlciAudW5pdCAuYmcucGMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAudW5pdCAuYmcuc3Age1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlciAudW5pdCAuYmcuc3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlciAudW5pdC53aXRoX2JnIC50ZXh0IHtcbiAgICB3aWR0aDogdmFyKC0td2lkdGgtc2xpZGVyLXRleHQtYm94KTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC51bml0LndpdGhfYmcgLnRleHQgLnRleHRpbm5lciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNzUsIDc1LCA3NSwgMC44NSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UteGxhcmdlKSB2YXIoLS1zcGFjZS14bGFyZ2UpO1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAuc2xpY2stYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiB2YXIoLS1zcGFjZS14bGFyZ2UpO1xuICBsZWZ0OiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB0b3A6IDUwJTtcbiAgICBib3R0b206IGF1dG87XG4gICAgbGVmdDogdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCBhbmQgKGFueS1ob3ZlcjogaG92ZXIpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLnN0YXRpYy5zbGlkZXIgLnNsaWNrLWFycm93IHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgfVxuICAuc3RhdGljLnNsaWRlciAuc2xpY2stYXJyb3c6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXIgLnNsaWNrLWFycm93IGltZyB7XG4gIHdpZHRoOiB2YXIoLS13aWR0aC1zbGlkZXItYXJyb3cpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC5zbGljay1hcnJvdyBpbWcge1xuICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zbGlkZXItYXJyb3ctcGMpO1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiB2YXIoLS1zcGFjZS14bGFyZ2UpO1xuICB9XG59XG4uc3RhdGljLnNsaWRlciAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCBpbWcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cbi5zdGF0aWMuc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgbWFyZ2luOiB2YXIoLS1zcGFjZS1sYXJnZSkgMCB2YXIoLS1zcGFjZS14bGFyZ2UpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uc3RhdGljLnNsaWRlciAuc2xpY2stZG90cyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIHBhZGRpbmc6IHVuc2V0O1xuICBtYXJnaW46IDAgY2FsYygyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyIC5zbGljay1kb3RzIGxpIHtcbiAgICBtYXJnaW46IDAgbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5zdGF0aWMuc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGVmYXVsdCk7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgaGVpZ2h0OiA2cHg7XG4gIHdpZHRoOiA2cHg7XG4gIHBhZGRpbmc6IHVuc2V0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY2lyY2xlKTtcbn1cbi5zdGF0aWMuc2xpZGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA3MDcwO1xufVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiB1bnNldDtcbn1cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLCAuc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2xpY2stdHJhY2s6YmVmb3JlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCJcIjtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuXG5bZGlyPXJ0bF0gLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc2xpY2stc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN0YXRpYy5zbGlkZXJfdHlwZUIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDc0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXJfdHlwZUIge1xuICAgIGhlaWdodDogNjg0cHg7XG4gIH1cbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2Utd2Vha2VyKTtcbiAgd2lkdGg6IDQwJTtcbiAgaGVpZ2h0OiAyMjBweDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyX3R5cGVCOmJlZm9yZSB7XG4gICAgd2lkdGg6IDM2JTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICBoZWlnaHQ6IDQ3NHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDY4NHB4O1xuICB9XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQgLnRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNjJweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0IC50ZXh0IHtcbiAgICBib3R0b206IDE4MnB4O1xuICAgIGxlZnQ6IDklO1xuICB9XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAudGV4dCAudGV4dGlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAudGV4dCBoMSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnJhbmQpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbWFsbCkgdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWhlYWRpbmcpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sYXJnZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLXNsb3cpIHZhcigtLWJlemllcikgMC4ycywgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLXNsb3cpIHZhcigtLWJlemllcikgMC4ycztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAudGV4dCBoMSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWVkaXVtKSB2YXIoLS1zcGFjZS14eHhsYXJnZSk7XG4gICAgbWFyZ2luLWxlZnQ6IDcwcHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHh4bGFyZ2UpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIH1cbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0IC50ZXh0IGgxOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS13ZWFrZXIpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93KSB2YXIoLS1iZXppZXIpIDAuOHM7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQgLnRleHQgcCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJyYW5kKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2UteHNtYWxsKSB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaGVhZGluZyk7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLXNsb3cpIHZhcigtLWJlemllcikgMC40cywgb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLXNsb3cpIHZhcigtLWJlemllcikgMC40cztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAudGV4dCBwIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbWFsbCkgdmFyKC0tc3BhY2UteHh4bGFyZ2UpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1lZGl1bSk7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAudGV4dCBwOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS13ZWFrZXIpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93KSB2YXIoLS1iZXppZXIpIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQgLnRleHQgLmJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQgLnRleHQgLmJ1dHRvbiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXdlYWspO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhzbWFsbCkgdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiAxMzVweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdykgdmFyKC0tYmV6aWVyKSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLXNsb3cpO1xufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQgLnRleHQgLmJ1dHRvbiBhOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS13ZWFrZXIpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93KSB2YXIoLS1iZXppZXIpIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0IC50ZXh0IC5idXR0b24gYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDIzNXB4O1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1lZGl1bSkgdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZWRpdW0pO1xuICB9XG4gIC5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0IC50ZXh0IC5idXR0b24gYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kKTtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQgLmJnIHtcbiAgd2lkdGg6IDg3JTtcbiAgaGVpZ2h0OiA0MzNweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kZWVwKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAuYmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA4MSU7XG4gICAgaGVpZ2h0OiA1NDhweDtcbiAgfVxufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQuc2xpY2stYWN0aXZlOjpiZWZvcmUsIC5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0LmlzLWFjdGl2ZS1uZXh0OjpiZWZvcmUge1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAwO1xufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQgLmJnLnBjIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAuYmcucGMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAuYmcuc3Age1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdCAuYmcuc3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0LnNsaWNrLW5vdy5zbGljay1hY3RpdmUgLnRleHQgLnRleHRpbm5lciBoMSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0LnNsaWNrLW5vdy5zbGljay1hY3RpdmUgLnRleHQgLnRleHRpbm5lciBoMTpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0LnNsaWNrLW5vdy5zbGljay1hY3RpdmUgLnRleHQgLnRleHRpbm5lciBwIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICBvcGFjaXR5OiAxO1xufVxuLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnVuaXQuc2xpY2stbm93LnNsaWNrLWFjdGl2ZSAudGV4dCAudGV4dGlubmVyIHA6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAudW5pdC5zbGljay1ub3cuc2xpY2stYWN0aXZlIC50ZXh0IC50ZXh0aW5uZXIgLmJ1dHRvbiBhIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIC51bml0LnNsaWNrLW5vdy5zbGljay1hY3RpdmUgLnRleHQgLnRleHRpbm5lciAuYnV0dG9uIGE6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAuc2xpY2stYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAwO1xuICByaWdodDogNDZweDtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmc6IDdweCAxOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnNsaWNrLWFycm93IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGJvdHRvbTogOTdweDtcbiAgfVxufVxuQG1lZGlhIHByaW50IGFuZCAoYW55LWhvdmVyOiBob3ZlciksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAoYW55LWhvdmVyOiBob3Zlcikge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAuc2xpY2stYXJyb3cge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICB9XG4gIC5zdGF0aWMuc2xpZGVyX3R5cGVCIC5zbGljay1hcnJvdzpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAuc2xpY2stYXJyb3cgaW1nIHtcbiAgd2lkdGg6IDEwcHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG59XG4uc3RhdGljLnNsaWRlcl90eXBlQiAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCBpbWcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbn1cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIC5zbGljay1kb3RzIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuc2xpZGVyX3R5cGVCIC5zbGljay1kb3RzIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiA5N3B4O1xuICAgIHJpZ2h0OiAxMDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnNsaWNrLWRvdHMgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiB1bnNldDtcbiAgICBtYXJnaW46IDAgY2FsYygyIC8gMzc1ICogMTAwdncpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAuc2xpY2stZG90cyBsaSB7XG4gICAgbWFyZ2luOiAwIG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5zbGlkZXJfdHlwZUIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZGVmYXVsdCk7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogM3B4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzLWNpcmNsZSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLnNsaWRlcl90eXBlQiAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA3MDcwO1xuICB9XG59XG5cbi5zdGF0aWMuaWNvbl9udW0ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLW1lZGl1bSk7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaWNvbl9udW0ge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbGFyZ2UpO1xuICB9XG59XG4uc3RhdGljLmljb25fbnVtIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmljb25fbnVtIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmljb25fbnVtIC5pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IDQlO1xuICB9XG59XG4uc3RhdGljLmljb25fbnVtIC5pbm5lciAudW5pdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbWFsbCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgIGZsZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgfVxufVxuLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQ6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQgaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1tZWRpdW0pO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLXNtYWxsKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmljb25fbnVtIC5pbm5lciAudW5pdCBoMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGFyZ2UpO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICB9XG59XG4uc3RhdGljLmljb25fbnVtIC5pbm5lciAudW5pdCAuaWNvbiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxhcmdlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmljb25fbnVtIC5pbm5lciAudW5pdCAuaWNvbiAuaW1hZ2Uge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbi5zdGF0aWMuaWNvbl9udW0gLmlubmVyIC51bml0IC5pY29uIC5pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IDE1MHB4O1xuICBtYXgtaGVpZ2h0OiAxNTBweDtcbn1cbi5zdGF0aWMuaWNvbl9udW0gLmlubmVyIC51bml0IC5pY29uIC5kYXRhIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmljb25fbnVtIC5pbm5lciAudW5pdCAuaWNvbiAuZGF0YSB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQgLmljb24gLmRhdGEgZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kKTtcbiAgZm9udC1zaXplOiA3cmVtO1xuICBtYXJnaW46IDAgdmFyKC0tc3BhY2UteHhzbWFsbCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQgLmljb24gLmRhdGEgZW0ge1xuICAgIGZvbnQtc2l6ZTogNnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaWNvbl9udW0gLmlubmVyIC51bml0IC5pY29uIC5kYXRhIGVtIHtcbiAgICBmb250LXNpemU6IDcuNHJlbTtcbiAgfVxufVxuLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQgLmljb24gLmRhdGEgc3BhbiB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxhcmdlKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaGVhZGluZyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQgLmljb24gLmRhdGEgc3BhbiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGxhcmdlKTtcbiAgfVxufVxuLnN0YXRpYy5pY29uX251bSAuaW5uZXIgLnVuaXQgLm5vdGUge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14c21hbGwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmljb25fbnVtIC5pbm5lciAudW5pdCAubm90ZSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5zdGF0aWMuaW1hZ2VfbGluayB7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbWVkaXVtKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLXNwYWNlLWxhcmdlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmltYWdlX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbGFyZ2UpO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG4uc3RhdGljLmltYWdlX2xpbmsgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4uc3RhdGljLmltYWdlX2xpbmsgLmlubmVyIC51bml0IHtcbiAgYmFja2dyb3VuZC1zaXplOiA5MCUgYXV0bztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDE1MHB4IDAgMCA0NXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQge1xuICAgIGJhY2tncm91bmQtc2l6ZTogNjklIGF1dG87XG4gICAgcGFkZGluZzogMCAwIDAgNjElO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAzNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQge1xuICAgIG1pbi1oZWlnaHQ6IDUwNXB4O1xuICB9XG59XG4uc3RhdGljLmltYWdlX2xpbmsgLmlubmVyIC51bml0IC5ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZyk7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY29sb3ItZGVlcCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSh2YXIoLS1zcGFjZS1sYXJnZSkpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLXNwYWNlLWxhcmdlKSAwIHZhcigtLXNwYWNlLXh4c21hbGwpIHZhcigtLXNwYWNlLWxhcmdlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmltYWdlX2xpbmsgLmlubmVyIC51bml0IC5ib3gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAzODBweDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS14bGFyZ2UpIHZhcigtLXNwYWNlLXNtYWxsKSB2YXIoLS1zcGFjZS1zbWFsbCkgdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgfVxufVxuLnN0YXRpYy5pbWFnZV9saW5rIC5pbm5lciAudW5pdCAuYm94OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1kZWVwKTtcbn1cbi5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCBoMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxhcmdlKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWhlYWRpbmcpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCBoMyB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGxhcmdlKTtcbiAgfVxufVxuLnN0YXRpYy5pbWFnZV9saW5rIC5pbm5lciAudW5pdCAuYm94IHAge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14c21hbGwpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc21hbGwpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCBwIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbiAgfVxufVxuLnN0YXRpYy5pbWFnZV9saW5rIC5pbm5lciAudW5pdCAuYm94IHVsIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbn1cbi5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCB1bCBsaSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS14c21hbGwpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCB1bCBsaSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc21hbGwpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbiAgfVxufVxuLnN0YXRpYy5pbWFnZV9saW5rIC5pbm5lciAudW5pdCAuYm94IHVsIGxpIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgfVxuICAuc3RhdGljLmltYWdlX2xpbmsgLmlubmVyIC51bml0IC5ib3ggdWwgbGkgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4uc3RhdGljLmltYWdlX2xpbmsgLmlubmVyIC51bml0IC5ib3ggdWwgbGkgYTpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsZWZ0OiAwO1xuICB0b3A6IDdweDtcbiAgYmFja2dyb3VuZDogY2VudGVyL2NvbnRhaW4gbm8tcmVwZWF0IHZhcigtLWFycm93LXJpZ2h0KTtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5pbWFnZV9saW5rIC5pbm5lciAudW5pdCAuYm94IHVsIGxpIGE6YmVmb3JlIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgdG9wOiA1cHg7XG4gIH1cbn1cbi5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCAubGluayB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaW1hZ2VfbGluayAuaW5uZXIgLnVuaXQgLmJveCAubGluayB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICB9XG59XG4uc3RhdGljLmltYWdlX2xpbmsgLmlubmVyIC51bml0IC5ib3ggLmxpbmsgYSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnN0YXRpYy5oZWFkaW5nX2xpbmsge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLW1lZGl1bSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5oZWFkaW5nX2xpbmsge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbGFyZ2UpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5oZWFkaW5nX2xpbmsuc2V0MiAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgICBncmlkLWdhcDogdmFyKC0tZ2FwLTJjb2wtY29sKSB2YXIoLS1nYXAtMmNvbC1yb3cpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5oZWFkaW5nX2xpbmsuc2V0MiAuaW5uZXIgLnVuaXQge1xuICAgIGZsZXg6IDE7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHN1YmdyaWQ7XG4gICAgZ3JpZC1yb3c6IHNwYW4gNDtcbiAgICBnYXA6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmhlYWRpbmdfbGluay5zZXQyIC5pbm5lciAudW5pdCB1bCB7XG4gICAgY29sdW1uLWNvdW50OiAxO1xuICB9XG59XG4uc3RhdGljLmhlYWRpbmdfbGluayAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5oZWFkaW5nX2xpbmsgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLnN0YXRpYy5oZWFkaW5nX2xpbmsgLmlubmVyIC51bml0ICsgLnVuaXQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLW1lZGl1bSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5oZWFkaW5nX2xpbmsgLmlubmVyIC51bml0ICsgLnVuaXQge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG59XG4uc3RhdGljLmhlYWRpbmdfbGluayAuaW5uZXIgLnVuaXQgaDMge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sYXJnZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1oZWFkaW5nKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmhlYWRpbmdfbGluayAuaW5uZXIgLnVuaXQgaDMge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsYXJnZSk7XG4gIH1cbn1cbi5zdGF0aWMuaGVhZGluZ19saW5rIC5pbm5lciAudW5pdCBwIHtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHNtYWxsKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5oZWFkaW5nX2xpbmsgLmlubmVyIC51bml0IHAge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG4gIH1cbn1cbi5zdGF0aWMuaGVhZGluZ19saW5rIC5pbm5lciAudW5pdCB1bCB7XG4gIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgcGFkZGluZzogdmFyKC0tc3BhY2Utc21hbGwpIDAgdmFyKC0tc3BhY2UtbGFyZ2UpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaGVhZGluZ19saW5rIC5pbm5lciAudW5pdCB1bCB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbGFyZ2UpIDAgdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgY29sdW1uLXJ1bGU6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgIGNvbHVtbi1nYXA6IDclO1xuICB9XG59XG4uc3RhdGljLmhlYWRpbmdfbGluayAuaW5uZXIgLnVuaXQgdWwgbGkge1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14c21hbGwpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1zbWFsbCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zdGF0aWMuaGVhZGluZ19saW5rIC5pbm5lciAudW5pdCB1bCBsaSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc21hbGwpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbiAgfVxufVxuLnN0YXRpYy5oZWFkaW5nX2xpbmsgLmlubmVyIC51bml0IHVsIGxpIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnN0YXRpYy5oZWFkaW5nX2xpbmsgLmlubmVyIC51bml0IHVsIGxpIGEge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICB9XG4gIC5zdGF0aWMuaGVhZGluZ19saW5rIC5pbm5lciAudW5pdCB1bCBsaSBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbi5zdGF0aWMuaGVhZGluZ19saW5rIC5pbm5lciAudW5pdCB1bCBsaSBhOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHRvcDogN3B4O1xuICBiYWNrZ3JvdW5kOiBjZW50ZXIvY29udGFpbiBuby1yZXBlYXQgdmFyKC0tYXJyb3ctcmlnaHQpO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmhlYWRpbmdfbGluayAuaW5uZXIgLnVuaXQgdWwgbGkgYTpiZWZvcmUge1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICB0b3A6IDVweDtcbiAgfVxufVxuLnN0YXRpYy5oZWFkaW5nX2xpbmsgLmlubmVyIC51bml0IC5saW5rIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc3RhdGljLmhlYWRpbmdfbGluayAuaW5uZXIgLnVuaXQgLmxpbmsge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXhsYXJnZSk7XG4gIH1cbn1cbi5zdGF0aWMuaGVhZGluZ19saW5rIC5pbm5lciAudW5pdCAubGluayBhIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udG9wcGFnZSAjaGVhZGVyRGVmYXVsdDpub3QoLmlzLWFjdGl2ZSkge1xuICB0cmFuc2xhdGU6IDAgLTExMCU7XG59XG4udG9wcGFnZS5pcy1zY3JvbGwgI2hlYWRlckRlZmF1bHQge1xuICB0cmFuc2xhdGU6IDAgMDtcbn1cbi50b3BwYWdlLmlzLXNjcm9sbCAjaGVhZGVyVG9wIHtcbiAgdHJhbnNsYXRlOiAwIC0yMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3BwYWdlLmlzLXNjcm9sbCAjaGVhZGVyVG9wIHtcbiAgICB0cmFuc2xhdGU6IDAgbWF4KC0zMDBweCwgY2FsYygtMzAwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi50b3BwYWdlLmlzLXNjcm9sbC5pcy1kb3duICNoZWFkZXJEZWZhdWx0IHtcbiAgdHJhbnNsYXRlOiAwIC0xMjAlO1xufVxuLnRvcHBhZ2UuZml4ZWQ6aGFzKCNoZWFkZXJEZWZhdWx0LmlzLWFjdGl2ZSkgI2hlYWRlclRvcCB7XG4gIHRyYW5zbGF0ZTogMCAtMTUwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wcGFnZS5maXhlZDpoYXMoI2hlYWRlckRlZmF1bHQuaXMtYWN0aXZlKSAjaGVhZGVyVG9wIHtcbiAgICB0cmFuc2xhdGU6IDAgbWF4KC05MnB4LCBjYWxjKC05MiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyMzgsIDI0MCwgMjQ1LCAwLjQpO1xufVxuLnRvcHBhZ2UgI2hlYWRlclRvcCAuaW5uZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLnRvcHBhZ2UgI2hlYWRlclRvcCAuaW5uZXIgI2xvZ28ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAjbG9nbyB7XG4gICAgdG9wOiBtaW4oNDZweCwgY2FsYyg0NiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAjbG9nbyBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gIHBhZGRpbmc6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dykgY2FsYygxOSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAjbG9nbyBhIHtcbiAgICBwYWRkaW5nOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpIG1pbigzMXB4LCBjYWxjKDMxIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyICNsb2dvIGEgaW1nIHtcbiAgd2lkdGg6IGNhbGMoNzMgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcHBhZ2UgI2hlYWRlclRvcCAuaW5uZXIgI2xvZ28gYSBpbWcge1xuICAgIHdpZHRoOiBtaW4oMTIwcHgsIGNhbGMoMTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5sYW5nUEMgdWwgbGkge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5sYW5nUEMgdWwgbGkgYSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgfVxuICAudG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAubGFuZ1BDIHVsIGxpIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5LWxpZ2h0KSAhaW1wb3J0YW50O1xuICB9XG4gIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5sYW5nUEMgdWwgbGkgYVt0YXJnZXQ9X2JsYW5rXTpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXktbGlnaHQpO1xuICB9XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAuZ25hdlBDIHVsIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAuZ25hdlBDIHVsIGxpIGEge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5nbmF2UEMgdWwgbGkgYSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgfVxuICAudG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAuZ25hdlBDIHVsIGxpIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5LWxpZ2h0KSAhaW1wb3J0YW50O1xuICB9XG4gIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5nbmF2UEMgdWwgbGkgYVt0YXJnZXQ9X2JsYW5rXTpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXktbGlnaHQpO1xuICB9XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAuY29udGFjdCBhIHNwYW4ge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5jb250YWN0IGEgc3BhbiB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgfVxuICAudG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAuY29udGFjdCBhIHNwYW46aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5LWxpZ2h0KSAhaW1wb3J0YW50O1xuICB9XG4gIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5jb250YWN0IGEgc3Bhblt0YXJnZXQ9X2JsYW5rXTpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyYXktbGlnaHQpO1xuICB9XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAubWVudUJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbiAgd2lkdGg6IGNhbGMoNDggLyAzNzUgKiAxMDB2dyk7XG4gIGhlaWdodDogY2FsYyg0OCAvIDM3NSAqIDEwMHZ3KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxMDAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5tZW51QnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAubWVudUJ1dHRvbiBzcGFuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuLnRvcHBhZ2UgI2hlYWRlclRvcCAuaW5uZXIgLm1lbnVCdXR0b24uaXMtYWN0aXZlIHNwYW4ubWlkZGxlLCAudG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAubWVudUJ1dHRvbi5pcy1hY3RpdmUgc3Bhbi5iYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG59XG4udG9wcGFnZSAjaGVhZGVyVG9wIC5pbm5lciAubWVudUJ1dHRvbi5pcy1hY3RpdmUgc3Bhbi50b3AsIC50b3BwYWdlICNoZWFkZXJUb3AgLmlubmVyIC5tZW51QnV0dG9uLmlzLWFjdGl2ZSBzcGFuLmJvdHRvbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4jdG9wU2NlbmUwMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI3NjZW5lMDFCYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB6LWluZGV4OiA5OTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3NjZW5lMDFCYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogbWluKDkzcHgsIGNhbGMoOTMgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3NjZW5lMDFCYXIgLmJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDNweDtcbiAgb3BhY2l0eTogMC40O1xuICBoZWlnaHQ6IDEwMCU7XG59XG4jc2NlbmUwMUJhciAuYmFyLmxlZnQge1xuICBsZWZ0OiBtaW4oMTIwcHgsIGNhbGMoMTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG59XG4jc2NlbmUwMUJhciAuYmFyLmxlZnQ6OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBzY3JvbGxfYXJyb3dfbGVmdCA1cyBlYXNlIGluZmluaXRlIG5vcm1hbDtcbn1cbiNzY2VuZTAxQmFyIC5iYXIucmlnaHQge1xuICByaWdodDogbWluKDEyMHB4LCBjYWxjKDEyMCAvIDE0NDAgKiAxMDB2dykpO1xufVxuI3NjZW5lMDFCYXIgLmJhci5yaWdodDo6YWZ0ZXIge1xuICBhbmltYXRpb246IHNjcm9sbF9hcnJvd19yaWdodCA1cyBlYXNlIGluZmluaXRlIG5vcm1hbCAyLjVzO1xufVxuI3NjZW5lMDFCYXIgLmJhcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgb3BhY2l0eTogMC40O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDFweDtcbn1cbiNzY2VuZTAxQmFyIC5iYXI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogM3B4O1xuICBoZWlnaHQ6IG1pbigyNDBweCwgY2FsYygyNDAgLyAxNDQwICogMTAwdncpKTtcbiAgbGVmdDogMDtcbn1cbkBrZXlmcmFtZXMgc2Nyb2xsX2Fycm93X2xlZnQge1xuICAwJSB7XG4gICAgYm90dG9tOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBib3R0b206IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBzY3JvbGxfYXJyb3dfcmlnaHQge1xuICAwJSB7XG4gICAgYm90dG9tOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBib3R0b206IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uY2lyY2xlT2JqZWN0IHtcbiAgd2lkdGg6IGNhbGMoMzU3IC8gMzc1ICogMTAwdncpO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiBjYWxjKDEwMCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNsYXRlOiBjYWxjKDEwMCAvIDM3NSAqIDEwMHZ3KSAwO1xuICB6LWluZGV4OiAxMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNpcmNsZU9iamVjdCB7XG4gICAgd2lkdGg6IG1pbig1NDlweCwgY2FsYyg1NDkgLyAxNDQwICogMTAwdncpKTtcbiAgICB0b3A6IG1pbigyMTBweCwgY2FsYygyMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IG1pbigyMDBweCwgY2FsYygyMDAgLyAxNDQwICogMTAwdncpKSAwO1xuICB9XG59XG4uY2lyY2xlT2JqZWN0LnJldmVyc2Uge1xuICBvcGFjaXR5OiAwLjQ7XG59XG4uY2lyY2xlT2JqZWN0LnJldmVyc2UgLm91dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2NpcmNsZV9vdXRfcmV2ZXJzZS5wbmcpO1xufVxuLmNpcmNsZU9iamVjdC5yZXZlcnNlIC5taWRkbGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9jaXJjbGVfbWlkZGxlX3JldmVyc2UucG5nKTtcbn1cbi5jaXJjbGVPYmplY3QucmV2ZXJzZSAuaW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9jaXJjbGVfaW5fcmV2ZXJzZS5wbmcpO1xufVxuLmNpcmNsZU9iamVjdCAub3V0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY2lyY2xlX291dC5wbmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYW5pbWF0aW9uOiBjaXJjbGVfb3V0IDU2cyBsaW5lYXIgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIGNpcmNsZV9vdXQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLmNpcmNsZU9iamVjdCAubWlkZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY2lyY2xlX21pZGRsZS5wbmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5jaXJjbGVPYmplY3QgLmluIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY2lyY2xlX2luLnBuZyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBhbmltYXRpb246IGNpcmNsZV9pbiAzMHMgbGluZWFyIGluZmluaXRlO1xufVxuQGtleWZyYW1lcyBjaXJjbGVfaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gIH1cbn1cblxuI3RvcFNsaWRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiN0b3BTbGlkZXIgLmNpcmNsZU9iamVjdCB7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IGNhbGMoMTAwIC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2xhdGU6IGNhbGMoMTAwIC8gMzc1ICogMTAwdncpIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNsaWRlciAuY2lyY2xlT2JqZWN0IHtcbiAgICB0b3A6IG1pbigyMTBweCwgY2FsYygyMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IG1pbigyMDBweCwgY2FsYygyMDAgLyAxNDQwICogMTAwdncpKSAwO1xuICB9XG59XG4jdG9wU2xpZGVyIC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IDEwMHN2aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wU2xpZGVyIC5zd2lwZXItc2xpZGUge1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbiN0b3BTbGlkZXIgLnN3aXBlci1zbGlkZSAuY292ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEuNnMgZWFzZS1vdXQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuI3RvcFNsaWRlciAuc3dpcGVyLXNsaWRlIC50ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLWlubGluZTogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY2xpcC1wYXRoOiBpbnNldCgwIDEwMCUgMCAwKTtcbiAgdHJhbnNpdGlvbjogY2xpcC1wYXRoIDFzIHZhcigtLWJlemllcikgMC40cztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wU2xpZGVyIC5zd2lwZXItc2xpZGUgLnRleHQge1xuICAgIGJvdHRvbTogbWluKDkwcHgsIGNhbGMoOTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB3aWR0aDogbWluKGNhbGMoMTEyMHB4ICogMS4zMzMzMzMpLCBjYWxjKDExMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgfVxufVxuI3RvcFNsaWRlciAuc3dpcGVyLXNsaWRlIC50ZXh0IGgyIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4eHhsKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gIGJvcmRlci1ib3R0b206IGNhbGMoMyAvIDM3NSAqIDEwMHZ3KSBzb2xpZCB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNsaWRlciAuc3dpcGVyLXNsaWRlIC50ZXh0IGgyIHtcbiAgICBmb250LXNpemU6IG1pbig0OHB4LCBjYWxjKDQ4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogbWluKDNweCwgY2FsYygzIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1ib3R0b206IG1pbig2cHgsIGNhbGMoNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wU2xpZGVyIC5zd2lwZXItc2xpZGUgLnRleHQgcCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDI4IC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAyMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BTbGlkZXIgLnN3aXBlci1zbGlkZSAudGV4dCBwIHtcbiAgICBmb250LXNpemU6IG1pbigxOHB4LCBjYWxjKDE4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy10b3A6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BTbGlkZXIgLnN3aXBlci1zbGlkZSAuYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHNjYWxlOiAxLjE7XG4gIHRyYW5zaXRpb246IHNjYWxlIDhzIGVhc2Utb3V0O1xuICB6LWluZGV4OiAwO1xufVxuI3RvcFNsaWRlciAuc3dpcGVyLXNsaWRlIC5iZy5wYyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNsaWRlciAuc3dpcGVyLXNsaWRlIC5iZy5wYyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wU2xpZGVyIC5zd2lwZXItc2xpZGUgLmJnLnNwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4jdG9wU2xpZGVyIC5zd2lwZXItc2xpZGUuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuY292ZXIge1xuICBvcGFjaXR5OiAwO1xufVxuI3RvcFNsaWRlciAuc3dpcGVyLXNsaWRlLnN3aXBlci1zbGlkZS1hY3RpdmUgLnRleHQge1xuICBjbGlwLXBhdGg6IGluc2V0KDAgMCAwIDApO1xufVxuI3RvcFNsaWRlciAuc3dpcGVyLXNsaWRlLnN3aXBlci1zbGlkZS1hY3RpdmUgLmJnIHtcbiAgc2NhbGU6IDE7XG59XG5cbiN0b3BJbmRpY2F0b3Ige1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogY2FsYygxMDAgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDQyIC8gMzc1ICogMTAwdncpO1xuICB6LWluZGV4OiA5OTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wSW5kaWNhdG9yIHtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDE1dmg7XG4gIH1cbn1cbiN0b3BJbmRpY2F0b3IgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wSW5kaWNhdG9yIHVsIHtcbiAgICB3aWR0aDogbWluKGNhbGMoMTEyMHB4ICogMS4zMzMzMzMpLCBjYWxjKDExMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBnYXA6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHRyYW5zbGF0ZTogbWluKDVweCwgY2FsYyg1IC8gMTQ0MCAqIDEwMHZ3KSkgMDtcbiAgfVxufVxuI3RvcEluZGljYXRvciB1bCBsaSB7XG4gIHdpZHRoOiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wSW5kaWNhdG9yIHVsIGxpIHtcbiAgICB3aWR0aDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBoZWlnaHQ6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BJbmRpY2F0b3IgdWwgbGk6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDUgLyAzNzUgKiAxMDB2dyk7XG4gIGhlaWdodDogY2FsYyg1IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3gtc2hhZG93OiAwIDIuMDM2cHggMi4wMzZweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2xhdGU6IC01MCUgLTUwJTtcbiAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcEluZGljYXRvciB1bCBsaTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3gtc2hhZG93OiAwIDRweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIH1cbn1cbiN0b3BJbmRpY2F0b3IgdWwgbGkuaXMtYWN0aXZlOjphZnRlciB7XG4gIHdpZHRoOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIGhlaWdodDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBib3JkZXI6IDAuNXB4IHNvbGlkICNDMkU4RkY7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIHotaW5kZXg6IDI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wSW5kaWNhdG9yIHVsIGxpLmlzLWFjdGl2ZTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgfVxufVxuI3RvcEluZGljYXRvciB1bCBsaS5pcy1hY3RpdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg5IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOSAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0MyRThGRjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAwIHJnYigyNTUsIDI1NSwgMjU1KTtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRyYW5zbGF0ZTogLTUwJSAtNTAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BJbmRpY2F0b3IgdWwgbGkuaXMtYWN0aXZlOjpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTdweCwgY2FsYygxNyAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDE3cHgsIGNhbGMoMTcgLyAxNDQwICogMTAwdncpKTtcbiAgICBmaWx0ZXI6IGJsdXIoNnB4KTtcbiAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgfVxufVxuXG4udG9wQWJvdXRCRyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3RvcF9hYm91dF9iZy53ZWJwKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3BBYm91dEJHIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfYWJvdXRfYmdfcGMud2VicCk7XG4gIH1cbn1cblxuI3RvcEFib3V0IHtcbiAgcGFkZGluZy1ibG9jazogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDYwIC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIHZhcigtLWJlemllcik7XG59XG4jdG9wQWJvdXQuaXMtaGlkZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcEFib3V0IHtcbiAgICB3aWR0aDogbWluKGNhbGMoMTEyMHB4ICogMS4zMzMzMzMpLCBjYWxjKDExMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2MHB4LCBjYWxjKDE2MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQWJvdXQgLmltYWdlcyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNDAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcEFib3V0IC5pbWFnZXMge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyg2MDBweCAqIDEuMzMzMzMzKSwgY2FsYyg2MDAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcEFib3V0IC5pbWFnZXMgLnNwIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcEFib3V0IC5pbWFnZXMgLnNwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4jdG9wQWJvdXQgLmltYWdlcyAuc3AgaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBhbmltYXRpb246IGluZmluaXR5LXNjcm9sbC1sZWZ0IDMwcyBpbmZpbml0ZSBsaW5lYXIgMC41cyBib3RoO1xuICBoZWlnaHQ6IGNhbGMoMjEyIC8gMzc1ICogMTAwdncpO1xufVxuQGtleWZyYW1lcyBpbmZpbml0eS1zY3JvbGwtbGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgfVxufVxuI3RvcEFib3V0IC5pbWFnZXMgLnBjIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wQWJvdXQgLmltYWdlcyAucGMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4jdG9wQWJvdXQgLmltYWdlcyAucGMgbGkge1xuICBtYXJnaW4tdG9wOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xufVxuI3RvcEFib3V0IC5pbWFnZXMgLnBjIGxpOm50aC1jaGlsZCgxKSB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuI3RvcEFib3V0IC5pbWFnZXMgLnBjIGxpOm50aC1jaGlsZCgyKSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuI3RvcEFib3V0IC5pbWFnZXMgLnBjIGxpOm50aC1jaGlsZCgyKSBpbWcge1xuICB3aWR0aDogbWluKDI5MHB4LCBjYWxjKDI5MCAvIDE0NDAgKiAxMDB2dykpO1xufVxuI3RvcEFib3V0IC5pbWFnZXMgLnBjIGxpOm50aC1jaGlsZCgzKSB7XG4gIG1hcmdpbi1sZWZ0OiBtaW4oOTJweCwgY2FsYyg5MiAvIDE0NDAgKiAxMDB2dykpO1xufVxuI3RvcEFib3V0IC5pbWFnZXMgLnBjIGxpOm50aC1jaGlsZCgzKSBpbWcge1xuICB3aWR0aDogbWluKDQ3MHB4LCBjYWxjKDQ3MCAvIDE0NDAgKiAxMDB2dykpO1xufVxuI3RvcEFib3V0IC5pbWFnZXMgLnBjIGxpOm50aC1jaGlsZCg0KSBpbWcge1xuICB3aWR0aDogbWluKDMyMHB4LCBjYWxjKDMyMCAvIDE0NDAgKiAxMDB2dykpO1xufVxuXG4jdG9wQnVzaW5lc3Mge1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDgwIC8gMzc1ICogMTAwdncpIGNhbGMoMTMwIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyB2YXIoLS1iZXppZXIpO1xufVxuI3RvcEJ1c2luZXNzLmlzLWhpZGUge1xuICBvcGFjaXR5OiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDEyMHB4LCBjYWxjKDEyMCAvIDE0NDAgKiAxMDB2dykpIG1pbigyODBweCwgY2FsYygyODAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIge1xuICAgIHdpZHRoOiBtaW4oY2FsYygxMTIwcHggKiAxLjMzMzMzMyksIGNhbGMoMTEyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IG1pbig0MHB4LCBjYWxjKDQwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BCdXNpbmVzcyAuaW5uZXIgLnRvcFRleHQgLmNpcmNsZU9iamVjdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcEJ1c2luZXNzIC5pbm5lciAudG9wVGV4dCAuY2lyY2xlT2JqZWN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBtaW4oMXB4LCBjYWxjKDEgLyAxNDQwICogMTAwdncpKTtcbiAgICBsZWZ0OiBtYXgoLTUwMHB4LCBjYWxjKC01MDAgLyAxNDQwICogMTAwdncpKTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG4jdG9wQnVzaW5lc3MgLmlubmVyIC5saW5rcyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNDAgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctaW5saW5lOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIHtcbiAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKDYwMHB4ICogMS4zMzMzMzMpLCBjYWxjKDYwMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQnVzaW5lc3MgLmlubmVyIC5saW5rcyAudW5pdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQnVzaW5lc3MgLmlubmVyIC5saW5rcyAudW5pdDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0OmhvdmVyIC5pbWFnZSBpbWcge1xuICAgIHNjYWxlOiAxO1xuICB9XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0OmhvdmVyIC50ZXh0OjphZnRlciB7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gIH1cbn1cbiN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC5pbWFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDQgLyAzNzUgKiAxMDB2dykgMCAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC5pbWFnZSB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSkgMCAwO1xuICB9XG59XG4jdG9wQnVzaW5lc3MgLmlubmVyIC5saW5rcyAudW5pdCAuaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGFzcGVjdC1yYXRpbzogMy8yO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC5pbWFnZSBpbWcge1xuICAgIHRyYW5zaXRpb246IHNjYWxlIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgc2NhbGU6IDEuMDU7XG4gIH1cbn1cbiN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC50ZXh0IHtcbiAgcGFkZGluZzogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDM0IC8gMzc1ICogMTAwdncpIGNhbGMoMTAgLyAzNzUgKiAxMDB2dykgY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC50ZXh0IHtcbiAgICBwYWRkaW5nOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpIG1pbig0NnB4LCBjYWxjKDQ2IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKSBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQnVzaW5lc3MgLmlubmVyIC5saW5rcyAudW5pdCAudGV4dDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgaGVpZ2h0OiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gIG1hc2stc2l6ZTogYXV0byBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgcmlnaHQ6IGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG4gIHRvcDogNTAlO1xuICB0cmFuc2xhdGU6IDAgLTUwJTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC50ZXh0OjphZnRlciB7XG4gICAgd2lkdGg6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgaGVpZ2h0OiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHJpZ2h0OiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hc2stc2l6ZTogYXV0byBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQnVzaW5lc3MgLmlubmVyIC5saW5rcyAudW5pdCAudGV4dCAuY2F0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wQnVzaW5lc3MgLmlubmVyIC5saW5rcyAudW5pdCAudGV4dCAuY2F0IHtcbiAgICBnYXA6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWJvdHRvbTogbWluKDEycHgsIGNhbGMoMTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcEJ1c2luZXNzIC5pbm5lciAubGlua3MgLnVuaXQgLnRleHQgLmNhdCBsaSB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eHMpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTQ1JTtcbiAgcGFkZGluZzogY2FsYyg0IC8gMzc1ICogMTAwdncpIGNhbGMoNiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC50ZXh0IC5jYXQgbGkge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtcykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZzogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcEJ1c2luZXNzIC5pbm5lciAubGlua3MgLnVuaXQgLnRleHQgaDIge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNjYlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BCdXNpbmVzcyAuaW5uZXIgLmxpbmtzIC51bml0IC50ZXh0IGgyIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbiN0b3BQcm9kdWN0cyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoLTcwIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDgwIC8gMzc1ICogMTAwdncpIGNhbGMoOTUgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRUYwRjU7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCAtOHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjEpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDE4MHB4LCBjYWxjKDE4MCAvIDE0NDAgKiAxMDB2dykpIG1pbigxNjBweCwgY2FsYygxNjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tdG9wOiBtaW4oLTE2NnB4LCBjYWxjKC0xNjYgLyAxNDQwICogMTAwdncpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfcHJvZHVjdHNfYmcucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzOjpiZWZvcmUsICN0b3BQcm9kdWN0czo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MUFCRTA7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogbWluKDEyMXB4LCBjYWxjKDEyMSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzOjphZnRlciB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogbWluKDEyMXB4LCBjYWxjKDEyMSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzIC5oZWFkIHtcbiAgICB3aWR0aDogbWluKGNhbGMoMTEyMHB4ICogMS4zMzMzMzMpLCBjYWxjKDExMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLmhlYWQgLnRvcFRleHQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1kYXJrKTtcbn1cbiN0b3BQcm9kdWN0cyAuaGVhZCAuaW1hZ2VzIHtcbiAgbWFyZ2luLXRvcDogY2FsYyg0MCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzIC5oZWFkIC5pbWFnZXMge1xuICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGMoNjAwcHggKiAxLjMzMzMzMyksIGNhbGMoNjAwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BQcm9kdWN0cyAuZWxldmF0b3Ige1xuICBtYXJnaW4tdG9wOiBjYWxjKDExMCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfZWxldmF0b3JfYmcud2VicCk7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byBjYWxjKDE4OCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygtMjAgLyAzNzUgKiAxMDB2dykgdG9wO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAuZWxldmF0b3Ige1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzIC5lbGV2YXRvciB7XG4gICAgd2lkdGg6IG1pbigxMTIwcHgsIGNhbGMoMTEyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi10b3A6IG1pbigxMjBweCwgY2FsYygxMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nLXRvcDogbWluKDcwcHgsIGNhbGMoNzAgLyAxNDQwICogMTAwdncpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IG1pbig1NDNweCwgY2FsYyg1NDMgLyAxNDQwICogMTAwdncpKSBhdXRvO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IG1pbig1NnB4LCBjYWxjKDU2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICBtaW4taGVpZ2h0OiBtaW4oNTIwcHgsIGNhbGMoNTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BQcm9kdWN0cyAuZWxldmF0b3IgLnRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgZm9udC1zaXplOiBjYWxjKDQwIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTIwJTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wUHJvZHVjdHMgLmVsZXZhdG9yIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiBtaW4oNjRweCwgY2FsYyg2NCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICB9XG4gICN0b3BQcm9kdWN0cyAuZWxldmF0b3IgLnRpdGxlIGJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLmVsZXZhdG9yIC50ZXh0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAuZWxldmF0b3IgLnRleHQge1xuICAgIG1hcmdpbi10b3A6IG1pbig2MHB4LCBjYWxjKDYwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogbWluKDUyMHB4LCBjYWxjKDUyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLmVsZXZhdG9yIC50ZXh0IGgzIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4bCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAuZWxldmF0b3IgLnRleHQgaDMge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHh4eGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14eHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxuICAjdG9wUHJvZHVjdHMgLmVsZXZhdG9yIC50ZXh0IGgzIGJyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLmVsZXZhdG9yIC50ZXh0IHAge1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAuZWxldmF0b3IgLnRleHQgcCB7XG4gICAgbWFyZ2luLXRvcDogbWluKDM2cHgsIGNhbGMoMzYgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNzclO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLmVsZXZhdG9yIC50ZXh0IC5idXR0b24ge1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAuZWxldmF0b3IgLnRleHQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDM2cHgsIGNhbGMoMzYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcFByb2R1Y3RzIC5lbGV2YXRvciAudGV4dCAuYnV0dG9uIC5wX2J1dHRvbiB7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG4jdG9wUHJvZHVjdHMgLm90aGVyIHtcbiAgbWFyZ2luLXRvcDogY2FsYyg0OCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAub3RoZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzIC5vdGhlciB7XG4gICAgbWFyZ2luLXRvcDogbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKTtcbiAgICB3aWR0aDogbWluKDExMjBweCwgY2FsYygxMTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BQcm9kdWN0cyAub3RoZXIgLnRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgZm9udC1zaXplOiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzIC5vdGhlciAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLm90aGVyIC5saXN0IHtcbiAgbWFyZ2luLXRvcDogY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wUHJvZHVjdHMgLm90aGVyIC5saXN0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLm90aGVyIC5saXN0IC51bml0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZTogXCJ0aXRsZSBpbWFnZVwiIGF1dG8gXCJidXR0b24gYnV0dG9uXCIgYXV0by8xZnIgY2FsYygyMDAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzIC5vdGhlciAubGlzdCAudW5pdCB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZzogbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKSBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpIG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdyaWQtdGVtcGxhdGU6IFwidGl0bGVcIiBhdXRvIFwiaW1hZ2VcIiBhdXRvIFwiYnV0dG9uXCIgYXV0by8xZnI7XG4gIH1cbn1cbiN0b3BQcm9kdWN0cyAub3RoZXIgLmxpc3QgLnVuaXQgaDMge1xuICBmb250LXNpemU6IGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLWwpIC8gMzc1ICogMTAwdncpO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGdyaWQtYXJlYTogdGl0bGU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFByb2R1Y3RzIC5vdGhlciAubGlzdCAudW5pdCBoMyB7XG4gICAgZm9udC1zaXplOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLm90aGVyIC5saXN0IC51bml0IC5pbWFnZSB7XG4gIGdyaWQtYXJlYTogaW1hZ2U7XG59XG4jdG9wUHJvZHVjdHMgLm90aGVyIC5saXN0IC51bml0IC5pbWFnZSBpbWcge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAub3RoZXIgLmxpc3QgLnVuaXQgLmltYWdlIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIH1cbn1cbiN0b3BQcm9kdWN0cyAub3RoZXIgLmxpc3QgLnVuaXQgLmJ1dHRvbiB7XG4gIGdyaWQtYXJlYTogYnV0dG9uO1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQcm9kdWN0cyAub3RoZXIgLmxpc3QgLnVuaXQgLmJ1dHRvbiB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKSAwO1xuICB9XG59XG4jdG9wUHJvZHVjdHMgLm90aGVyIC5saXN0IC51bml0IC5idXR0b24gLnBfYnV0dG9uIHtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cblxuLmVsZXZhdG9yLXNlYXJjaCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNDggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmVsZXZhdG9yLXNlYXJjaCB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5lbGV2YXRvci1zZWFyY2ggLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lbGV2YXRvci1zZWFyY2ggLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lbGV2YXRvci1zZWFyY2ggLmlubmVyIHtcbiAgICB3aWR0aDogbWluKDExMjBweCwgY2FsYygxMTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5lbGV2YXRvci1zZWFyY2ggLmlubmVyIC5wcm9kdWN0X3NlYXJjaCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWlubGluZTogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZWxldmF0b3Itc2VhcmNoIC5pbm5lciAucHJvZHVjdF9zZWFyY2gge1xuICAgIHBhZGRpbmctdG9wOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctaW5saW5lOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uZWxldmF0b3Itc2VhcmNoIC5pbm5lciAucHJvZHVjdF9zZWFyY2ggLnJhZGlvLWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogdW5zZXQ7XG59XG5cbi50b3BUZXh0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWlubGluZTogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wVGV4dCB7XG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAyMnZoO1xuICAgIGZsZXg6IDE7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3BUZXh0LnN0YXRpYyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuLnRvcFRleHQgaDEge1xuICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICBmb250LXNpemU6IGNhbGMoNDAgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcFRleHQgaDEge1xuICAgIGZvbnQtc2l6ZTogbWluKDcycHgsIGNhbGMoNzIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnRvcFRleHQgaDE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2ljb25fZG93bi5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgbWFyZ2luLXRvcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wVGV4dCBoMTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICB9XG59XG4udG9wVGV4dCBoMiB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1sKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wVGV4dCBoMiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDM2cHgsIGNhbGMoMzYgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnRvcFRleHQgLmRlc2Mge1xuICBtYXJnaW4tdG9wOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRvcFRleHQgLmRlc2Mge1xuICAgIG1hcmdpbi10b3A6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnRvcFRleHQgLmRlc2MgcCB7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3BUZXh0IC5kZXNjIHAge1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4udG9wVGV4dCAuZGVzYyBwOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogdW5zZXQ7XG59XG4udG9wVGV4dCAuZGVzYyBwIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4udG9wVGV4dCAuYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50b3BUZXh0IC5idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi50b3BUZXh0IC5idXR0b24gLnBfYnV0dG9uIHtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAudG9wVGV4dCAuYnV0dG9uIC5wX2J1dHRvbiB7XG4gICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gIH1cbn1cblxuI3RvcENvbXBhbnkge1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfY29tcGFueV9iZy5qcGcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcENvbXBhbnkge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigxMjRweCwgY2FsYygxMjQgLyAxNDQwICogMTAwdncpKSBtaW4oMTQwcHgsIGNhbGMoMTQwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BDb21wYW55IC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wQ29tcGFueSAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcENvbXBhbnkgLmlubmVyIHtcbiAgICB3aWR0aDogbWluKGNhbGMoMTEyMHB4ICogMS4zMzMzMzMpLCBjYWxjKDExMjAgLyAxNDQwICogMTAwdncpKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogbWluKDQwcHgsIGNhbGMoNDAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcENvbXBhbnkgLmlubmVyIC5saW5rcyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcENvbXBhbnkgLmlubmVyIC5saW5rcyB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKDYwMHB4ICogMS4zMzMzMzMpLCBjYWxjKDYwMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQ29tcGFueSAuaW5uZXIgLmxpbmtzIC5pbWFnZSBpbWcge1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcENvbXBhbnkgLmlubmVyIC5saW5rcyAuaW1hZ2UgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oY2FsYyg0cHggKiAxLjMzMzMzMyksIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQ29tcGFueSAuaW5uZXIgLmxpbmtzIHVsIGxpIHtcbiAgbWFyZ2luLXRvcDogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wQ29tcGFueSAuaW5uZXIgLmxpbmtzIHVsIGxpIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wQ29tcGFueSAuaW5uZXIgLmxpbmtzIHVsIGxpIGEge1xuICBkaXNwbGF5OiBibG9jayBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmc6IGNhbGMoMTggLyAzNzUgKiAxMDB2dykgY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygyIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTcwJTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJnLWJnLXdoaXRlKTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BDb21wYW55IC5pbm5lciAubGlua3MgdWwgbGkgYSB7XG4gICAgcGFkZGluZzogbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKSBtaW4oNDhweCwgY2FsYyg0OCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgI3RvcENvbXBhbnkgLmlubmVyIC5saW5rcyB1bCBsaSBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xuICB9XG4gICN0b3BDb21wYW55IC5pbm5lciAubGlua3MgdWwgbGkgYTpob3Zlcjo6YWZ0ZXIge1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICB9XG59XG4jdG9wQ29tcGFueSAuaW5uZXIgLmxpbmtzIHVsIGxpIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDE0IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BDb21wYW55IC5pbm5lciAubGlua3MgdWwgbGkgYTo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMTRweCwgY2FsYygxNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuXG4jdG9wUGFydG5lcnMge1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDcyIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wUGFydG5lcnMge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbig4MHB4LCBjYWxjKDgwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDEwMHB4LCBjYWxjKDEwMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUGFydG5lcnMgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQYXJ0bmVycyAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFBhcnRuZXJzIC5pbm5lciB7XG4gICAgd2lkdGg6IG1pbigxMDAwcHgsIGNhbGMoMTAwMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUGFydG5lcnMgLmlubmVyIGgxIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteGwpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTQwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wUGFydG5lcnMgLmlubmVyIGgxIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXh4eGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUGFydG5lcnMgLmlubmVyIHVsIHtcbiAgbWFyZ2luLXRvcDogY2FsYyg1NiAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgZ2FwOiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BQYXJ0bmVycyAuaW5uZXIgdWwge1xuICAgIG1hcmdpbi10b3A6IG1pbig3MHB4LCBjYWxjKDcwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogbWluKDE1MHB4LCBjYWxjKDE1MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wUGFydG5lcnMgLmlubmVyIHVsIGxpIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI3RvcFBhcnRuZXJzIC5pbm5lciB1bCBsaSBpbWcge1xuICB3aWR0aDogY2FsYygxNjAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFBhcnRuZXJzIC5pbm5lciB1bCBsaSBpbWcge1xuICAgIHdpZHRoOiBtaW4oMjM3cHgsIGNhbGMoMjM3IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuI3RvcFNwb25zb3JzIHtcbiAgcGFkZGluZy1ibG9jazogY2FsYyg0OCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wU3BvbnNvcnMge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbig4NHB4LCBjYWxjKDg0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDk2cHgsIGNhbGMoOTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcFNwb25zb3JzIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wU3BvbnNvcnMgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNDggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCB7XG4gICAgbWFyZ2luLXRvcDogbWluKDgycHgsIGNhbGMoODIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCBoMSAuZW4ge1xuICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICBmb250LXNpemU6IGNhbGMoNDAgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BTcG9uc29ycyAuaW5uZXIgLnVuaXQgaDEgLmVuIHtcbiAgICBmb250LXNpemU6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCBoMSAuamEge1xuICBtYXJnaW4tdG9wOiBjYWxjKDI4IC8gMzc1ICogMTAwdncpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLW0pIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTc1JTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gMWZyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCBoMSAuamEge1xuICAgIG1hcmdpbi10b3A6IG1pbigzOHB4LCBjYWxjKDM4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14bCkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCBoMSAuamE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmfiiJJsaWdodGJsdWUpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCBoMSAuamE6OmJlZm9yZSB7XG4gICAgd2lkdGg6IG1pbigxM3B4LCBjYWxjKDEzIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgaGVpZ2h0OiBtaW4oMTNweCwgY2FsYygxMyAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wU3BvbnNvcnMgLmlubmVyIC51bml0IGgxIC5qYTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbn1cbiN0b3BTcG9uc29ycyAuaW5uZXIgLnVuaXQgLmJsb2NrIHtcbiAgbWFyZ2luLXRvcDogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wU3BvbnNvcnMgLmlubmVyIC51bml0IC5ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogbWluKDMwcHgsIGNhbGMoMzAgLyAxNDQwICogMTAwdncpKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGU6IFwibGVhZCBpbWFnZVwiIGF1dG8gXCJ0ZXh0IGltYWdlXCIgMWZyLzFmciBtaW4oMzkycHgsIGNhbGMoMzkyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiAwIG1pbig0OHB4LCBjYWxjKDQ4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiN0b3BTcG9uc29ycyAuaW5uZXIgLnVuaXQgLmJsb2NrIC5sZWFkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbSkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNzUlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBoZWlnaHQ6IGNhbGMoMTI4IC8gMzc1ICogMTAwdncpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCAuYmxvY2sgLmxlYWQge1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctaW5saW5lOiBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDE1MnB4LCBjYWxjKDE1MiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdyaWQtYXJlYTogbGVhZDtcbiAgfVxufVxuI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCAuYmxvY2sgLnRleHQge1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTcwJTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BTcG9uc29ycyAuaW5uZXIgLnVuaXQgLmJsb2NrIC50ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICB9XG59XG4jdG9wU3BvbnNvcnMgLmlubmVyIC51bml0IC5ibG9jayAuaW1hZ2Uge1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICBtaW4taGVpZ2h0OiBjYWxjKDE1OCAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcFNwb25zb3JzIC5pbm5lciAudW5pdCAuYmxvY2sgLmltYWdlIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBoZWlnaHQ6IG1pbigzOTJweCwgY2FsYygzOTIgLyAxNDQwICogMTAwdncpKTtcbiAgICBtaW4taGVpZ2h0OiB1bnNldDtcbiAgICBwYWRkaW5nOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdyaWQtYXJlYTogaW1hZ2U7XG4gIH1cbn1cbiN0b3BTcG9uc29ycyAuaW5uZXIgLnVuaXQgLmJsb2NrIC5pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IGNhbGMoMjkyIC8gMzc1ICogMTAwdncpO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDIwNyAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wU3BvbnNvcnMgLmlubmVyIC51bml0IC5ibG9jayAuaW1hZ2UgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG1pbigzNDRweCwgY2FsYygzNDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXgtaGVpZ2h0OiBtaW4oMzQ0cHgsIGNhbGMoMzQ0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuI3RvcFJlY3J1aXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfcmVjcnVpdC5qcGcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoNjQgLyAzNzUgKiAxMDB2dykgY2FsYygxMTggLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctaW5saW5lOiBjYWxjKDI2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BSZWNydWl0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfcmVjcnVpdF9wYy5qcGcpO1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigxMjhweCwgY2FsYygxMjggLyAxNDQwICogMTAwdncpKSAwO1xuICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgfVxufVxuI3RvcFJlY3J1aXQgLmlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYyg0OCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wUmVjcnVpdCAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZTogXCIuIHRleHQgdGV4dFwiIGF1dG8vMWZyIG1pbig4MHB4LCBjYWxjKDgwIC8gMTQ0MCAqIDEwMHZ3KSkgMWZyO1xuICAgIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbiAgfVxufVxuI3RvcFJlY3J1aXQgLmlubmVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoNDAgLyAzNzUgKiAxMDB2dyk7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICB6LWluZGV4OiAxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BSZWNydWl0IC5pbm5lcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG4jdG9wUmVjcnVpdCAuaW5uZXIgLnRvcFRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmctaW5saW5lOiBjYWxjKDMwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BSZWNydWl0IC5pbm5lciAudG9wVGV4dCB7XG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICAgIHBhZGRpbmctaW5saW5lOiBtaW4oODdweCwgY2FsYyg4NyAvIDE0NDAgKiAxMDB2dykpIDA7XG4gICAgcGFkZGluZy1ib3R0b206IG1pbig2MHB4LCBjYWxjKDYwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgdG9wOiB1bnNldDtcbiAgfVxuICAjdG9wUmVjcnVpdCAuaW5uZXIgLnRvcFRleHQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gICAgdG9wOiBtaW4oNDBweCwgY2FsYyg0MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgI3RvcFJlY3J1aXQgLmlubmVyIC50b3BUZXh0ID4gKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cbiN0b3BSZWNydWl0IC5pbm5lciAudG9wVGV4dCAucGMge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BSZWNydWl0IC5pbm5lciAudG9wVGV4dCAucGMge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BSZWNydWl0IC5pbm5lciAudG9wVGV4dCAuZGVzYyB7XG4gICAgbWFyZ2luLXRvcDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BSZWNydWl0IC5pbm5lciAudG9wVGV4dCAuYnV0dG9uIC5wX2J1dHRvbiB7XG4gICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gIH1cbn1cblxuI3RvcE5ld3Mge1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDM2IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wTmV3cyB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDk2cHgsIGNhbGMoOTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuI3RvcE5ld3MgKyBmb290ZXIge1xuICBtYXJnaW4tdG9wOiB1bnNldDtcbn1cbiN0b3BOZXdzIC5pbm5lciB7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAjdG9wTmV3cyAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcE5ld3MgLmlubmVyIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGU6IFwidGV4dCBsaXN0XCIgYXV0by8xZnIgbWluKDg3MHB4LCBjYWxjKDg3MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4jdG9wTmV3cyAuaW5uZXIgLnRvcFRleHQge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BOZXdzIC5pbm5lciAudG9wVGV4dCB7XG4gICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3RvcE5ld3MgLmlubmVyIC50b3BUZXh0IGgxIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BOZXdzIC5pbm5lciAudG9wVGV4dCAuYnV0dG9uIC5wX2J1dHRvbiB7XG4gICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gIH1cbn1cbiN0b3BOZXdzIC5pbm5lciB1bCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRUFFRUY3O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICN0b3BOZXdzIC5pbm5lciB1bCB7XG4gICAgZ3JpZC1hcmVhOiBsaXN0O1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG59XG5cbi5jYXRMZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoNTYgLyAzNzUgKiAxMDB2dykgY2FsYygxNjIgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2NhdGxlYWRfYmcuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjYWxjKDQ0OCAvIDM3NSAqIDEwMHZ3KSBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2FsYygtMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jYXRMZWFkOjpiZWZvcmUsIC5jYXRMZWFkOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpIDIwJSwgdHJhbnNwYXJlbnQpO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG4gIHotaW5kZXg6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhdExlYWQ6OmJlZm9yZSwgLmNhdExlYWQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2xhdGU6IG1heCgtNjAwcHgsIGNhbGMoLTYwMCAvIDE0NDAgKiAxMDB2dykpIDA7XG4gIH1cbn1cbi5jYXRMZWFkOjphZnRlciB7XG4gIGxlZnQ6IHVuc2V0O1xuICByaWdodDogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2F0TGVhZDo6YWZ0ZXIge1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgdHJhbnNsYXRlOiBtaW4oNjAwcHgsIGNhbGMoNjAwIC8gMTQ0MCAqIDEwMHZ3KSkgMDtcbiAgfVxufVxuLmFib3V0Qm9yZGVyQkcgLmNhdExlYWQge1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygyNjIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0Qm9yZGVyQkcgLmNhdExlYWQge1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMzY3cHgsIGNhbGMoMzY3IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2F0TGVhZCB7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDEwMHB4LCBjYWxjKDEwMCAvIDE0NDAgKiAxMDB2dykpIG1pbigzNjdweCwgY2FsYygzNjcgLyAxNDQwICogMTAwdncpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IG1pbigxNTA4cHgsIGNhbGMoMTUwOCAvIDE0NDAgKiAxMDB2dykpIGF1dG87XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIG1heCgtMTUzcHgsIGNhbGMoLTE1MyAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQ0MHB4KSB7XG4gIC5jYXRMZWFkIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDExMCUgYXV0bztcbiAgfVxufVxuLmNhdExlYWQ6OmJlZm9yZSwgLmNhdExlYWQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG59XG4uY2F0TGVhZCAuaW5uZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBwYWRkaW5nLWlubGluZTogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2F0TGVhZCAuaW5uZXIge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhdExlYWQgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLmNhdExlYWQgLmlubmVyIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteGwpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMjQwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2F0TGVhZCAuaW5uZXIgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IG1pbig4MnB4LCBjYWxjKDgyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICB9XG59XG4uY2F0TGVhZCAuaW5uZXIgcCB7XG4gIHBhZGRpbmctYm90dG9tOiAyZW07XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1tKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2F0TGVhZCAuaW5uZXIgcCB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNhdExlYWQgKyAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtMjE0IC8gMzc1ICogMTAwdncpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNhdExlYWQgKyAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIHtcbiAgICBtYXJnaW4tdG9wOiBtYXgoLTI0NXB4LCBjYWxjKC0yNDUgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmNhdExlYWQgKyAuY29tcG9uZW50LnR5cGVfaW1hZ2VfbXVsdGkge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0xMTUgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY2F0TGVhZCArIC5jb21wb25lbnQudHlwZV9pbWFnZV9tdWx0aSB7XG4gICAgbWFyZ2luLXRvcDogbWF4KC0yNzBweCwgY2FsYygtMjcwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLmFib3V0Qm9yZGVyQkcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xufVxuLmFib3V0Qm9yZGVyQkc6OmJlZm9yZSwgLmFib3V0Qm9yZGVyQkc6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWNvbG9yLWJyYW5kLWNvcnBvcmF0ZSkgMjAlLCB0cmFuc3BhcmVudCk7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbiAgei1pbmRleDogMTtcbiAgY29udGVudDogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRCb3JkZXJCRzo6YmVmb3JlLCAuYWJvdXRCb3JkZXJCRzo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zbGF0ZTogbWF4KC02MDBweCwgY2FsYygtNjAwIC8gMTQ0MCAqIDEwMHZ3KSkgMDtcbiAgfVxufVxuLmFib3V0Qm9yZGVyQkc6OmFmdGVyIHtcbiAgbGVmdDogdW5zZXQ7XG4gIHJpZ2h0OiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dEJvcmRlckJHOjphZnRlciB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBsZWZ0OiB1bnNldDtcbiAgICB0cmFuc2xhdGU6IG1pbig2MDBweCwgY2FsYyg2MDAgLyAxNDQwICogMTAwdncpKSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0Qm9yZGVyQkcge1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oODhweCwgY2FsYyg4OCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5hYm91dEhlYWRlciB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNTUgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0SGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMTAwcHgsIGNhbGMoMTAwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5hYm91dEhlYWRlciAuaW5uZXIgaDIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eGwpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMjE4JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRIZWFkZXIgLmlubmVyIGgyIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXh4eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4eGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gIH1cbn1cblxuLmFib3V0UmVhc29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmFib3V0UmVhc29uOjpiZWZvcmUsIC5hYm91dFJlYXNvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKSAyMCUsIHRyYW5zcGFyZW50KTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICB6LWluZGV4OiAxO1xuICBjb250ZW50OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbjo6YmVmb3JlLCAuYWJvdXRSZWFzb246OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2xhdGU6IG1heCgtNjAwcHgsIGNhbGMoLTYwMCAvIDE0NDAgKiAxMDB2dykpIDA7XG4gIH1cbn1cbi5hYm91dFJlYXNvbjo6YWZ0ZXIge1xuICBsZWZ0OiB1bnNldDtcbiAgcmlnaHQ6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0UmVhc29uOjphZnRlciB7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBsZWZ0OiB1bnNldDtcbiAgICB0cmFuc2xhdGU6IG1pbig2MDBweCwgY2FsYyg2MDAgLyAxNDQwICogMTAwdncpKSAwO1xuICB9XG59XG5cbi5hYm91dFJlYXNvbkhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nLWJsb2NrOiBjYWxjKDQ4IC8gMzc1ICogMTAwdncpIGNhbGMoOTAgLyAzNzUgKiAxMDB2dyk7XG59XG4uYWJvdXRSZWFzb25IZWFkZXI6OmJlZm9yZSwgLmFib3V0UmVhc29uSGVhZGVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpIDIwJSwgdHJhbnNwYXJlbnQpO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG4gIHotaW5kZXg6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0UmVhc29uSGVhZGVyOjpiZWZvcmUsIC5hYm91dFJlYXNvbkhlYWRlcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zbGF0ZTogbWF4KC02MDBweCwgY2FsYygtNjAwIC8gMTQ0MCAqIDEwMHZ3KSkgMDtcbiAgfVxufVxuLmFib3V0UmVhc29uSGVhZGVyOjphZnRlciB7XG4gIGxlZnQ6IHVuc2V0O1xuICByaWdodDogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25IZWFkZXI6OmFmdGVyIHtcbiAgICByaWdodDogNTAlO1xuICAgIGxlZnQ6IHVuc2V0O1xuICAgIHRyYW5zbGF0ZTogbWluKDYwMHB4LCBjYWxjKDYwMCAvIDE0NDAgKiAxMDB2dykpIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25IZWFkZXIge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigxNDdweCwgY2FsYygxNDcgLyAxNDQwICogMTAwdncpKSBtaW4oMjQ2cHgsIGNhbGMoMjQ2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5hYm91dFJlYXNvbkhlYWRlcjo6YmVmb3JlLCAuYWJvdXRSZWFzb25IZWFkZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbn1cbi5hYm91dFJlYXNvbkhlYWRlci5hYm91dF8wMSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2Fib3V0XzAxX2JnLndlYnApO1xufVxuLmFib3V0UmVhc29uSGVhZGVyLmFib3V0XzAyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYWJvdXRfMDJfYmcud2VicCk7XG59XG4uYWJvdXRSZWFzb25IZWFkZXIuYWJvdXRfMDMge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9hYm91dF8wM19iZy53ZWJwKTtcbn1cbi5hYm91dFJlYXNvbkhlYWRlciAuY2lyY2xlT2JqZWN0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25IZWFkZXIgLmNpcmNsZU9iamVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiBtaW4oMTdweCwgY2FsYygxNyAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHdpZHRoOiBtaW4oNTQ2cHgsIGNhbGMoNTQ2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zbGF0ZTogbWluKDMyN3B4LCBjYWxjKDMyNyAvIDE0NDAgKiAxMDB2dykpIDA7XG4gIH1cbn1cbi5hYm91dFJlYXNvbkhlYWRlciAuaW5uZXIge1xuICBwYWRkaW5nLWlubGluZTogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25IZWFkZXIgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYyh2YXIoLS1wYWRkaW5nLXNwKSAvIDM3NSAqIDEwMHZ3KTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0UmVhc29uSGVhZGVyIC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbi5hYm91dFJlYXNvbkhlYWRlciAuaW5uZXIgZGwge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbkhlYWRlciAuaW5uZXIgZGwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IG1pbig5NHB4LCBjYWxjKDk0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IG1pbig4NXB4LCBjYWxjKDg1IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5hYm91dFJlYXNvbkhlYWRlciAuaW5uZXIgZGwgZHQge1xuICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHh4eHh4bCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25IZWFkZXIgLmlubmVyIGRsIGR0IHtcbiAgICBmb250LXNpemU6IG1pbigxODBweCwgY2FsYygxODAgLyAxNDQwICogMTAwdncpKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiBtaW4oOTlweCwgY2FsYyg5OSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uYWJvdXRSZWFzb25IZWFkZXIgLmlubmVyIGRsIGR0OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgd2lkdGg6IGNhbGMoNDkgLyAzNzUgKiAxMDB2dyk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbkhlYWRlciAuaW5uZXIgZGwgZHQ6OmFmdGVyIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICB3aWR0aDogbWluKDJweCwgY2FsYygyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgaGVpZ2h0OiBtaW4oMTg3cHgsIGNhbGMoMTg3IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5hYm91dFJlYXNvbkhlYWRlciAuaW5uZXIgZGwgZGQge1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteGwpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTgwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25IZWFkZXIgLmlubmVyIGRsIGRkIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICBmb250LXNpemU6IG1pbig1NnB4LCBjYWxjKDU2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gIH1cbn1cblxuLmFib3V0UmVhc29uQm9keSB7XG4gIG1hcmdpbi10b3A6IGNhbGMoLTUwIC8gMzc1ICogMTAwdncpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDgwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbkJvZHkge1xuICAgIG1hcmdpbi10b3A6IG1heCgtMTMwcHgsIGNhbGMoLTEzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMTMzcHgsIGNhbGMoMTMzIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5hYm91dFJlYXNvbkJvZHkgLmlubmVyIHtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLXBhZGRpbmctc3ApIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbkJvZHkgLmlubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHVuc2V0O1xuICAgIHBhZGRpbmctcmlnaHQ6IHVuc2V0O1xuICAgIHdpZHRoOiBtaW4oY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpICogMXB4KSwgY2FsYyh2YXIoLS13aWR0aC1jb250YWluZXIpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuLmFib3V0UmVhc29uQm9keSAuaW5uZXIgLnRleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgcGFkZGluZzogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDE4IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbkJvZHkgLmlubmVyIC50ZXh0IHtcbiAgICBwYWRkaW5nOiBtaW4oNjVweCwgY2FsYyg2NSAvIDE0NDAgKiAxMDB2dykpIG1pbigxMjZweCwgY2FsYygxMjYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmFib3V0UmVhc29uQm9keSAuaW5uZXIgLnRleHQgaDIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1sKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIGdhcDogY2FsYygxMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25Cb2R5IC5pbm5lciAudGV4dCBoMiB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5hYm91dFJlYXNvbkJvZHkgLmlubmVyIC50ZXh0IGgyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0MyRThGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB0cmFuc2xhdGU6IDAgY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25Cb2R5IC5pbm5lciAudGV4dCBoMjpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oMTBweCwgY2FsYygxMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IDAgbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmFib3V0UmVhc29uQm9keSAuaW5uZXIgLnRleHQgcCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0UmVhc29uQm9keSAuaW5uZXIgLnRleHQgcCB7XG4gICAgbWFyZ2luLXRvcDogbWluKDMycHgsIGNhbGMoMzIgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uYWJvdXRSZWFzb25Cb2R5IC5pbm5lciAudGV4dCBwICsgaDIge1xuICBtYXJnaW4tdG9wOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbkJvZHkgLmlubmVyIC50ZXh0IHAgKyBoMiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDU0cHgsIGNhbGMoNTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLmFib3V0UmVhc29uQm9keSAuaW5uZXIgLmltYWdlcyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gIGdhcDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYWJvdXRSZWFzb25Cb2R5IC5pbm5lciAuaW1hZ2VzIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oNDJweCwgY2FsYyg0MiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgZ2FwOiBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uYWJvdXRSZWFzb25Cb2R5IC5pbm5lciAuaW1hZ2VzIGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTc1JTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hYm91dFJlYXNvbkJvZHkgLmlubmVyIC5pbWFnZXMgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLmFib3V0UmVsYXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmctYmxvY2s6IGNhbGMoNTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFib3V0UmVsYXRlIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBtaW4oMTEwcHgsIGNhbGMoMTEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5hYm91dFJlbGF0ZSA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiB1bnNldDtcbn1cbi5hYm91dFJlbGF0ZSArIC5uYXZpZ2F0aW9uLmJyZWFkY3J1bWJzLCAuYWJvdXRSZWxhdGUgKyAuYnJlYWRjcnVtYnMuY29tcG9uZW50LnR5cGVfcGFnZWxpc3Qge1xuICBtYXJnaW4tdG9wOiB1bnNldDtcbn1cblxuLnBoaWxvc29waHlUb3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgcGFkZGluZy1ibG9jazogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlUb3Age1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigxMjBweCwgY2FsYygxMjAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBoaWxvc29waHlUb3AgLmNpcmNsZU9iamVjdCB7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMDtcbiAgd2lkdGg6IGNhbGMoMjY4IC8gMzc1ICogMTAwdncpO1xuICB0cmFuc2xhdGU6IGNhbGMoNzMgLyAzNzUgKiAxMDB2dykgMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGhpbG9zb3BoeVRvcCAuY2lyY2xlT2JqZWN0IHtcbiAgICB3aWR0aDogbWluKDU0OXB4LCBjYWxjKDU0OSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHRyYW5zbGF0ZTogbWluKDE1MHB4LCBjYWxjKDE1MCAvIDE0NDAgKiAxMDB2dykpIDA7XG4gIH1cbn1cbi5waGlsb3NvcGh5VG9wIC5jb21wb25lbnQudHlwZV9oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogdW5zZXQ7XG59XG4ucGhpbG9zb3BoeVRvcCAucGhpbG9zb3BoeVRvcFRleHQge1xuICBtYXJnaW4tdG9wOiBjYWxjKDcyIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGhpbG9zb3BoeVRvcCAucGhpbG9zb3BoeVRvcFRleHQge1xuICAgIHBhZGRpbmctbGVmdDogdW5zZXQ7XG4gICAgcGFkZGluZy1yaWdodDogdW5zZXQ7XG4gICAgd2lkdGg6IG1pbihjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgKiAxcHgpLCBjYWxjKHZhcigtLXdpZHRoLWNvbnRhaW5lcikgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlUb3AgLnBoaWxvc29waHlUb3BUZXh0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oOTBweCwgY2FsYyg5MCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucGhpbG9zb3BoeVRvcCAucGhpbG9zb3BoeVRvcFRleHQgaDMgaW1nIHtcbiAgd2lkdGg6IGNhbGMoMjQwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5waGlsb3NvcGh5VG9wIC5waGlsb3NvcGh5VG9wVGV4dCBoMyBpbWcge1xuICAgIHdpZHRoOiBtaW4oMzc0cHgsIGNhbGMoMzc0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5waGlsb3NvcGh5VG9wIC5waGlsb3NvcGh5VG9wVGV4dCBoNCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNjQgLyAzNzUgKiAxMDB2dyk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14bCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxODAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5waGlsb3NvcGh5VG9wIC5waGlsb3NvcGh5VG9wVGV4dCBoNCB7XG4gICAgbWFyZ2luLXRvcDogbWluKDc0cHgsIGNhbGMoNzQgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXh4eGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGxpbmUtaGVpZ2h0OiAxMzAlO1xuICB9XG59XG4ucGhpbG9zb3BoeVRvcCAucGhpbG9zb3BoeVRvcFRleHQgcCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE3NSU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlUb3AgLnBoaWxvc29waHlUb3BUZXh0IHAge1xuICAgIG1hcmdpbi10b3A6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBoaWxvc29waHlUb3AgLnBoaWxvc29waHlUb3BUZXh0IC5sb2dvIHtcbiAgbWFyZ2luLXRvcDogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGhpbG9zb3BoeVRvcCAucGhpbG9zb3BoeVRvcFRleHQgLmxvZ28ge1xuICAgIG1hcmdpbi10b3A6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5waGlsb3NvcGh5VG9wIC5waGlsb3NvcGh5VG9wVGV4dCAubG9nbyBpbWcge1xuICB3aWR0aDogY2FsYygxODAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlUb3AgLnBoaWxvc29waHlUb3BUZXh0IC5sb2dvIGltZyB7XG4gICAgd2lkdGg6IG1pbigzNTJweCwgY2FsYygzNTIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuXG4ucGhpbG9zb3BoeU1pZGRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoNDggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlNaWRkbGUge1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMTIwcHgsIGNhbGMoMTIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5waGlsb3NvcGh5TWlkZGxlIC5jaXJjbGVPYmplY3Qge1xuICB0b3A6IGNhbGMoMTcyIC8gMzc1ICogMTAwdncpO1xuICB6LWluZGV4OiAwO1xuICB3aWR0aDogY2FsYygyNjggLyAzNzUgKiAxMDB2dyk7XG4gIHRyYW5zbGF0ZTogY2FsYygtNzUgLyAzNzUgKiAxMDB2dykgMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlNaWRkbGUgLmNpcmNsZU9iamVjdCB7XG4gICAgdG9wOiBtaW4oMjI0cHgsIGNhbGMoMjI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgd2lkdGg6IG1pbig1NDlweCwgY2FsYyg1NDkgLyAxNDQwICogMTAwdncpKTtcbiAgICB0cmFuc2xhdGU6IG1heCgtMTUycHgsIGNhbGMoLTE1MiAvIDE0NDAgKiAxMDB2dykpIDA7XG4gIH1cbn1cbi5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGhpbG9zb3BoeU1pZGRsZSAucGhpbG9zb3BoeU1pZGRsZVRleHQge1xuICAgIG1hcmdpbi10b3A6IG1pbig2NHB4LCBjYWxjKDY0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCAuaW5uZXIge1xuICBwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tcGFkZGluZy1zcCkgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogbWluKGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAqIDFweCksIGNhbGModmFyKC0td2lkdGgtY29udGFpbmVyKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucGhpbG9zb3BoeU1pZGRsZSAucGhpbG9zb3BoeU1pZGRsZVRleHQgLmlubmVyIC5sZWFkIHtcbiAgICBwYWRkaW5nLWlubGluZTogbWluKDEyMHB4LCBjYWxjKDEyMCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucGhpbG9zb3BoeU1pZGRsZSAucGhpbG9zb3BoeU1pZGRsZVRleHQgLmlubmVyIC5sZWFkIGgzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNTUlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICBnYXA6IGNhbGMoMTAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAubGVhZCBoMyB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHh4bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCAuaW5uZXIgLmxlYWQgaDM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIGhlaWdodDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQzJFOEZGO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRyYW5zbGF0ZTogMCBjYWxjKDExIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCAuaW5uZXIgLmxlYWQgaDM6YmVmb3JlIHtcbiAgICB3aWR0aDogbWluKDEwcHgsIGNhbGMoMTAgLyAxNDQwICogMTAwdncpKTtcbiAgICBoZWlnaHQ6IG1pbigxMHB4LCBjYWxjKDEwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgdHJhbnNsYXRlOiAwIG1pbigxOHB4LCBjYWxjKDE4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCAuaW5uZXIgLmxlYWQgcCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gIHBhZGRpbmctaW5saW5lOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCAuaW5uZXIgLmxlYWQgcCB7XG4gICAgbWFyZ2luLXRvcDogbWluKDM2cHgsIGNhbGMoMzYgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgfVxufVxuLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAuZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAuZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAuZGV0YWlscyAudW5pdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nOiBjYWxjKDI4IC8gMzc1ICogMTAwdncpIGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCAuaW5uZXIgLmRldGFpbHMgLnVuaXQge1xuICAgIHBhZGRpbmc6IG1pbig1NnB4LCBjYWxjKDU2IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDEwOHB4LCBjYWxjKDEwOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi10b3A6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWluLWhlaWdodDogbWluKDIyOHB4LCBjYWxjKDIyOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAuZGV0YWlscyAudW5pdDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAuZGV0YWlscyAudW5pdCBoNCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1tKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE1MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAuZGV0YWlscyAudW5pdCBoNCB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14eGwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5waGlsb3NvcGh5TWlkZGxlIC5waGlsb3NvcGh5TWlkZGxlVGV4dCAuaW5uZXIgLmRldGFpbHMgLnVuaXQgcCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE3NSU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlNaWRkbGUgLnBoaWxvc29waHlNaWRkbGVUZXh0IC5pbm5lciAuZGV0YWlscyAudW5pdCBwIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLnBoaWxvc29waHlCb3R0b20ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgcGFkZGluZy1ibG9jazogY2FsYygzNiAvIDM3NSAqIDEwMHZ3KSBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnBoaWxvc29waHlCb3R0b20ge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbigxMjBweCwgY2FsYygxMjAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnBoaWxvc29waHlCb3R0b20gLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyB7XG4gIG1hcmdpbi10b3A6IHVuc2V0O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3RzLXNlYXJjaC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oNTZweCwgY2FsYyg1NiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiBtaW4oMTIwMHB4LCBjYWxjKDEyMDAgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG4ucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXI6aGFzKC5wcm9kdWN0LWRldGFpbC1oZXJvKSAucHJvZHVjdC1zZWFyY2gtbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXI6aGFzKC5wcm9kdWN0LWRldGFpbC1oZXJvKSAucHJvZHVjdC1zZWFyY2gtbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLnByb2R1Y3RzLXNlYXJjaC13cmFwcGVyIC50aXAge1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogY2FsYygzOCAvIDM3NSAqIDEwMHZ3KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpLCB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXIgLnRpcCB7XG4gICAgYm90dG9tOiBtaW4oNDhweCwgY2FsYyg0OCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXIgLnRpcDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMHB4O1xuICBoZWlnaHQ6IDBweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiBjYWxjKDcgLyAzNzUgKiAxMDB2dykgY2FsYyg0IC8gMzc1ICogMTAwdncpIDAgY2FsYyg0IC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggM3B4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTYpKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXIgLnRpcDo6YWZ0ZXIge1xuICAgIGJvcmRlci13aWR0aDogbWluKDdweCwgY2FsYyg3IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSkgMCBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3RzLXNlYXJjaC13cmFwcGVyIC50aXAuaXMtc2hvdyB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKC01IC8gMzc1ICogMTAwdncpKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXIgLnRpcC5pcy1zaG93IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkobWF4KC01cHgsIGNhbGMoLTUgLyAxNDQwICogMTAwdncpKSk7XG4gIH1cbn1cbi5wcm9kdWN0cy1zZWFyY2gtd3JhcHBlciAudGlwIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14eHMpIC8gMzc1ICogMTAwdncpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgcGFkZGluZzogY2FsYyg0IC8gMzc1ICogMTAwdncpIGNhbGMoMTIgLyAzNzUgKiAxMDB2dykgY2FsYyg1IC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAzcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNikpO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKDIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3RzLXNlYXJjaC13cmFwcGVyIC50aXAgc3BhbiB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDJweCwgY2FsYygyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZzogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDEycHgsIGNhbGMoMTIgLyAxNDQwICogMTAwdncpKSBtaW4oNXB4LCBjYWxjKDUgLyAxNDQwICogMTAwdncpKTtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXMpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1zKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXIgLmFkZC10by1jb250YWN0IHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygyIC8gMzc1ICogMTAwdncpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy14cykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDYgLyAzNzUgKiAxMDB2dykgY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoNiAvIDM3NSAqIDEwMHZ3KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0cy1zZWFyY2gtd3JhcHBlciAuYWRkLXRvLWNvbnRhY3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbigycHgsIGNhbGMoMiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZzogbWluKDEzcHgsIGNhbGMoMTMgLyAxNDQwICogMTAwdncpKSBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKSBtaW4oMTNweCwgY2FsYygxMyAvIDE0NDAgKiAxMDB2dykpIG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0cy1zZWFyY2gtd3JhcHBlciAuYWRkLXRvLWNvbnRhY3Q6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDE4IC8gMzc1ICogMTAwdncpO1xuICBoZWlnaHQ6IGNhbGMoMTggLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybChcIi9pbWFnZXMvaWNvbl9wbHVzLnN2Z1wiKTtcbiAgbWFzay1zaXplOiBjb250YWluO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIGFuaW1hdGlvbjogcm90YXRlIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3RzLXNlYXJjaC13cmFwcGVyIC5hZGQtdG8tY29udGFjdDo6YWZ0ZXIge1xuICAgIHdpZHRoOiBtaW4oMThweCwgY2FsYygxOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGhlaWdodDogbWluKDE4cHgsIGNhbGMoMTggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3RzLXNlYXJjaC13cmFwcGVyIC5hZGQtdG8tY29udGFjdC5pcy1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG59XG4ucHJvZHVjdHMtc2VhcmNoLXdyYXBwZXIgLmFkZC10by1jb250YWN0LmlzLXNlbGVjdGVkOjphZnRlciB7XG4gIHJvdGF0ZTogeiA0NWRlZztcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ucHJvZHVjdC1zZWFyY2gtbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBwYWRkaW5nOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpIGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLW5hdiB7XG4gICAgcGFkZGluZzogdW5zZXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IG1pbigxMzJweCwgY2FsYygxMzIgLyAxNDQwICogMTAwdncpKTtcbiAgICB3aWR0aDogbWluKDI4OHB4LCBjYWxjKDI4OCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtbmF2IC5zZWFyY2gtYm94IC5zZWFyY2gtYm94LWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICBwYWRkaW5nOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpIGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDQgLyAzNzUgKiAxMDB2dykgMCAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTY2LjY2NyU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLW5hdiAuc2VhcmNoLWJveCAuc2VhcmNoLWJveC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpIG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1tKSAqIDFweCksIGNhbGModmFyKC0tZnMtbSkgLyAxNDQwICogMTAwdncpKTtcbiAgICBib3JkZXItcmFkaXVzOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKSBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKSAwIDA7XG4gIH1cbn1cbi5wcm9kdWN0LXNlYXJjaC1uYXYgLnNlYXJjaC1ib3ggLnNlYXJjaC1ib3gtYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nOiBjYWxjKDEyIC8gMzc1ICogMTAwdncpO1xuICBib3JkZXItcmFkaXVzOiAwIDAgY2FsYyg0IC8gMzc1ICogMTAwdncpIGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1zZWFyY2gtbmF2IC5zZWFyY2gtYm94IC5zZWFyY2gtYm94LWJvZHkge1xuICAgIHBhZGRpbmc6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpIG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtbmF2IC5zZWFyY2gtYm94IC5zZWFyY2gtYm94LWJvZHkgLnNlYXJjaC1pbnB1dCB7XG4gIHBhZGRpbmc6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLW5hdiAuc2VhcmNoLWJveCAuc2VhcmNoLWJveC1ib2R5IC5zZWFyY2gtaW5wdXQge1xuICAgIHBhZGRpbmc6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdhcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLW5hdiAuc2VhcmNoLWJveCAuc2VhcmNoLWJveC1ib2R5IC5zZWFyY2gtaW5wdXQgaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTcwJTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktZGFyayk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLW5hdiAuc2VhcmNoLWJveCAuc2VhcmNoLWJveC1ib2R5IC5zZWFyY2gtaW5wdXQgaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0LXNlYXJjaC1uYXYgLnNlYXJjaC1ib3ggLnNlYXJjaC1ib3gtYm9keSAuc2VhcmNoLWlucHV0IC5zZWFyY2gtYnRuIHtcbiAgd2lkdGg6IGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLW5hdiAuc2VhcmNoLWJveCAuc2VhcmNoLWJveC1ib2R5IC5zZWFyY2gtaW5wdXQgLnNlYXJjaC1idG4ge1xuICAgIHdpZHRoOiBtaW4oMjRweCwgY2FsYygyNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtbmF2IC5jYXRlZ29yeS1uYXYge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1uYXYgLmNhdGVnb3J5LW5hdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5wcm9kdWN0LXNlYXJjaC1uYXYgLmNhdGVnb3J5LW5hdiAuY2F0ZWdvcnktbmF2LWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICBwYWRkaW5nOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpIGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDQgLyAzNzUgKiAxMDB2dykgMCAwO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTY2LjY2NyU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLW5hdiAuY2F0ZWdvcnktbmF2IC5jYXRlZ29yeS1uYXYtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiBtaW4oOHB4LCBjYWxjKDggLyAxNDQwICogMTAwdncpKSBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSkgMCAwO1xuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtbmF2IC5jYXRlZ29yeS1uYXYgLmNhdGVnb3J5LW5hdi1saXN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBjYWxjKDQgLyAzNzUgKiAxMDB2dykgY2FsYyg0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1uYXYgLmNhdGVnb3J5LW5hdiAuY2F0ZWdvcnktbmF2LWxpc3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKSBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLW5hdiAuY2F0ZWdvcnktbmF2IC5jYXRlZ29yeS1uYXYtbGlzdCAuY2F0ZWdvcnktbmF2LWl0ZW0ge1xuICBwYWRkaW5nLWlubGluZTogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbn1cbi5wcm9kdWN0LXNlYXJjaC1uYXYgLmNhdGVnb3J5LW5hdiAuY2F0ZWdvcnktbmF2LWxpc3QgLmNhdGVnb3J5LW5hdi1pdGVtOmxhc3QtY2hpbGQgYSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG4ucHJvZHVjdC1zZWFyY2gtbmF2IC5jYXRlZ29yeS1uYXYgLmNhdGVnb3J5LW5hdi1saXN0IC5jYXRlZ29yeS1uYXYtaXRlbSBhIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1tZWRpdW0pO1xuICBnYXA6IGNhbGMoOCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1ibG9jazogY2FsYygxNiAvIDM3NSAqIDEwMHZ3KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLW0pIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMTUwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1zZWFyY2gtbmF2IC5jYXRlZ29yeS1uYXYgLmNhdGVnb3J5LW5hdi1saXN0IC5jYXRlZ29yeS1uYXYtaXRlbSBhIHtcbiAgICBnYXA6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLW5hdiAuY2F0ZWdvcnktbmF2IC5jYXRlZ29yeS1uYXYtbGlzdCAuY2F0ZWdvcnktbmF2LWl0ZW0gYTo6YWZ0ZXIge1xuICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hc2stc2l6ZTogY29udGFpbjtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBtYXNrLXNpemU6IGF1dG8gY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1uYXYgLmNhdGVnb3J5LW5hdiAuY2F0ZWdvcnktbmF2LWxpc3QgLmNhdGVnb3J5LW5hdi1pdGVtIGE6OmFmdGVyIHtcbiAgICB3aWR0aDogbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgICBtYXNrLXNpemU6IGF1dG8gbWluKDE0cHgsIGNhbGMoMTQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1uYXYgLmNhdGVnb3J5LW5hdiAuY2F0ZWdvcnktbmF2LWxpc3QgLmNhdGVnb3J5LW5hdi1pdGVtIGE6aG92ZXI6OmFmdGVyIHtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLW5hdiAuYnV0dG9ucyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLW5hdiAuYnV0dG9ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLW5hdiAuYnV0dG9ucyAucF9idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1ib2R5IHtcbiAgICB3aWR0aDogbWluKDg5NnB4LCBjYWxjKDg5NiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5wcm9kdWN0LWRldGFpbC1oZXJvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmc6IGNhbGMoMjggLyAzNzUgKiAxMDB2dykgY2FsYygyMCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDQ4IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LWRldGFpbC1oZXJvIHtcbiAgICBwYWRkaW5nOiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW4oMzk2cHgsIGNhbGMoMzk2IC8gMTQ0MCAqIDEwMHZ3KSkgMWZyO1xuICAgIGdhcDogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gIH1cbn1cblxuI3Byb2R1Y3QtZGV0YWlsLW1haW4tc3dpcGVyIC5wcm9kdWN0LWRldGFpbC1tYWluIGltZyB7XG4gIGFzcGVjdC1yYXRpbzogNC8zO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNwcm9kdWN0LWRldGFpbC10aHVtYi1zd2lwZXIge1xuICBtYXJnaW4tdG9wOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICNwcm9kdWN0LWRldGFpbC10aHVtYi1zd2lwZXIge1xuICAgIG1hcmdpbi10b3A6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiNwcm9kdWN0LWRldGFpbC10aHVtYi1zd2lwZXIgLnN3aXBlci13cmFwcGVyIHtcbiAgZ2FwOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3Byb2R1Y3QtZGV0YWlsLXRodW1iLXN3aXBlciAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGdhcDogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbiNwcm9kdWN0LWRldGFpbC10aHVtYi1zd2lwZXIgLnN3aXBlci13cmFwcGVyIC5zd2lwZXItc2xpZGUge1xuICB3aWR0aDogY2FsYygxMDkgLyAzNzUgKiAxMDB2dykgIWltcG9ydGFudDtcbiAgYXNwZWN0LXJhdGlvOiA0LzM7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgI3Byb2R1Y3QtZGV0YWlsLXRodW1iLXN3aXBlciAuc3dpcGVyLXdyYXBwZXIgLnN3aXBlci1zbGlkZSB7XG4gICAgd2lkdGg6IG1pbigxMjlweCwgY2FsYygxMjkgLyAxNDQwICogMTAwdncpKSAhaW1wb3J0YW50O1xuICB9XG59XG4jcHJvZHVjdC1kZXRhaWwtdGh1bWItc3dpcGVyIC5zd2lwZXItd3JhcHBlciAuc3dpcGVyLXNsaWRlIGltZyB7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYXNwZWN0LXJhdGlvOiA0LzM7XG59XG5cbi5wcm9kdWN0LWRldGFpbC1pbmZvIHtcbiAgbWFyZ2luLXRvcDogY2FsYygyNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1kZXRhaWwtaW5mbyB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1tb2RlbCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1udW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNzEuNDI5JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1kZXRhaWwtaW5mbyAucHJvZHVjdC1kZXRhaWwtbW9kZWwge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gIH1cbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1uYW1lIHtcbiAgbWFyZ2luOiBjYWxjKDQgLyAzNzUgKiAxMDB2dykgMCAwO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbCkgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxMzMlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gIHdvcmQtYnJlYWs6IGF1dG8tcGhyYXNlO1xuICBib3JkZXItYm90dG9tOiBjYWxjKDMgLyAzNzUgKiAxMDB2dykgc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygyMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1kZXRhaWwtaW5mbyAucHJvZHVjdC1kZXRhaWwtbmFtZSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy14eHh4bCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXh4eHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMzBweCwgY2FsYygzMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IG1pbigzcHgsIGNhbGMoMyAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdC1kZXRhaWwtaW5mbyAucHJvZHVjdC1kZXRhaWwtc3BlY3Mge1xuICBtYXJnaW4tdG9wOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtcykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzEuNDI5JTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1kZXRhaWwtaW5mbyAucHJvZHVjdC1kZXRhaWwtc3BlY3Mge1xuICAgIG1hcmdpbi10b3A6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBsaW5lLWhlaWdodDogMTU1LjU1NiU7XG4gIH1cbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1hZGQtY29udGFjdCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMzYgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1kZXRhaWwtaW5mbyAucHJvZHVjdC1kZXRhaWwtYWRkLWNvbnRhY3Qge1xuICAgIG1hcmdpbi10b3A6IG1pbig0OHB4LCBjYWxjKDQ4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1hZGQtY29udGFjdCAudGlwIHtcbiAgYm90dG9tOiBjYWxjKDQwIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1hZGQtY29udGFjdCAudGlwIHtcbiAgICBib3R0b206IG1pbig1OHB4LCBjYWxjKDU4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1hZGQtY29udGFjdCAuYWRkLXRvLWNvbnRhY3Qge1xuICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB3aWR0aDogY2FsYygyMDAgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1ibG9jazogY2FsYygxMSAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYyg4IC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3QtZGV0YWlsLWluZm8gLnByb2R1Y3QtZGV0YWlsLWFkZC1jb250YWN0IC5hZGQtdG8tY29udGFjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1sKSAqIDFweCksIGNhbGModmFyKC0tZnMtbCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nLWJsb2NrOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIHBhZGRpbmctcmlnaHQ6IG1pbigxNHB4LCBjYWxjKDE0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1hZGQtY29udGFjdCAuYWRkLXRvLWNvbnRhY3Q6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1hZGQtY29udGFjdCAuYWRkLXRvLWNvbnRhY3QuaXMtc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xufVxuLnByb2R1Y3QtZGV0YWlsLWluZm8gLnByb2R1Y3QtZGV0YWlsLWFkZC1jb250YWN0IC5hZGQtdG8tY29udGFjdC5pcy1zZWxlY3RlZDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG59XG4ucHJvZHVjdC1kZXRhaWwtaW5mbyAucHJvZHVjdC1kZXRhaWwtZG93bmxvYWQtY2F0YWxvZyB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3QtZGV0YWlsLWluZm8gLnByb2R1Y3QtZGV0YWlsLWRvd25sb2FkLWNhdGFsb2cge1xuICAgIG1hcmdpbi10b3A6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0LWRldGFpbC1pbmZvIC5wcm9kdWN0LWRldGFpbC1kb3dubG9hZC1jYXRhbG9nIC5wX2J1dHRvbiB7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIHdpZHRoOiBjYWxjKDIwMCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1kZXRhaWwtaW5mbyAucHJvZHVjdC1kZXRhaWwtZG93bmxvYWQtY2F0YWxvZyAucF9idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wcm9kdWN0X3NlYXJjaCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nOiBjYWxjKDI4IC8gMzc1ICogMTAwdncpIGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Rfc2VhcmNoIHtcbiAgICBwYWRkaW5nOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpIG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSkgbWluKDI4cHgsIGNhbGMoMjggLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3Rfc2VhcmNoIC5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0X3NlYXJjaCAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLnByb2R1Y3Rfc2VhcmNoIC5pcy1oaWRkZW4gKyBwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdF9zZWFyY2ggLmlzLWhpZGRlbiArIHAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zZWFyY2gtc2VjdGlvbiAuc2VjdGlvbi10aXRsZSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIGdhcDogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLW0pIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMTc1JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VhcmNoLXNlY3Rpb24gLnNlY3Rpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteGwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy14bCkgLyAxNDQwICogMTAwdncpKTtcbiAgICBnYXA6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5zZWFyY2gtc2VjdGlvbiAuc2VjdGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDQgLyAzNzUgKiAxMDB2dyk7XG4gIGhlaWdodDogY2FsYygyOCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC1zZWN0aW9uIC5zZWN0aW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHdpZHRoOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKTtcbiAgICBoZWlnaHQ6IG1pbigzNnB4LCBjYWxjKDM2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5zZWFyY2gtc2VjdGlvbiAucmFkaW8tZ3JvdXAge1xuICBtYXJnaW4tdG9wOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWFyY2gtc2VjdGlvbiAucmFkaW8tZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IG1pbigyNHB4LCBjYWxjKDI0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiBtaW4oMjBweCwgY2FsYygyMCAvIDE0NDAgKiAxMDB2dykpIG1pbigyMHB4LCBjYWxjKDIwIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5zZWFyY2gtc2VjdGlvbiAucmFkaW8tZ3JvdXAgLnJhZGlvLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VhcmNoLXNlY3Rpb24gLnJhZGlvLWdyb3VwIC5yYWRpby1pdGVtIHtcbiAgICBnYXA6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uc2VhcmNoLXNlY3Rpb24gLnJhZGlvLWdyb3VwIC5yYWRpby1pdGVtIGlucHV0IHtcbiAgbWFyZ2luOiB1bnNldDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VhcmNoLXNlY3Rpb24gLnJhZGlvLWdyb3VwIC5yYWRpby1pdGVtIGlucHV0IHtcbiAgICB0cmFuc2xhdGU6IDAgbWluKDFweCwgY2FsYygxIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5zZWFyY2gtc2VjdGlvbiAucmFkaW8tZ3JvdXAgLnJhZGlvLWl0ZW0gLnJhZGlvLWxhYmVsIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXhzKSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VhcmNoLXNlY3Rpb24gLnJhZGlvLWdyb3VwIC5yYWRpby1pdGVtIC5yYWRpby1sYWJlbCB7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1tKSAqIDFweCksIGNhbGModmFyKC0tZnMtbSkgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuXG4ucmVmaW5lLXNlY3Rpb24ge1xuICBtYXJnaW4tdG9wOiBjYWxjKDE2IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnJlZmluZS1zZWN0aW9uLmlzLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC40O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLXRvZ2dsZSAucmVmaW5lLXRvZ2dsZS1idG4ge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygyIC8gMzc1ICogMTAwdncpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbWVkaXVtKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiBjYWxjKDEwIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMjMzLjMzMyU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtdG9nZ2xlIC5yZWZpbmUtdG9nZ2xlLWJ0biB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDJweCwgY2FsYygyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZ2FwOiB1bnNldDtcbiAgICBwYWRkaW5nOiBtaW4oNnB4LCBjYWxjKDYgLyAxNDQwICogMTAwdncpKSBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpIG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLXRvZ2dsZSAucmVmaW5lLXRvZ2dsZS1idG4uaXMtZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLXRvZ2dsZSAucmVmaW5lLXRvZ2dsZS1idG4uaXMtZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLXRvZ2dsZSAucmVmaW5lLXRvZ2dsZS1idG4uaXMtb3Blbjo6YWZ0ZXIge1xuICByb3RhdGU6IHogMjcwZGVnO1xufVxuLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtdG9nZ2xlIC5yZWZpbmUtdG9nZ2xlLWJ0bjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGNhbGMoMTQgLyAzNzUgKiAxMDB2dyk7XG4gIGhlaWdodDogY2FsYygxNCAvIDM3NSAqIDEwMHZ3KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9hcnJvd19yaWdodC5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICByb3RhdGU6IHogOTBkZWc7XG4gIHRyYW5zaXRpb246IHJvdGF0ZSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLXRvZ2dsZSAucmVmaW5lLXRvZ2dsZS1idG46OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IG1pbigxNnB4LCBjYWxjKDE2IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IC5maWx0ZXItcm93IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWluKDE1NnB4LCBjYWxjKDE1NiAvIDE0NDAgKiAxMDB2dykpIDFmcjtcbiAgICBnYXA6IG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgbWFyZ2luLXRvcDogbWluKDE2cHgsIGNhbGMoMTYgLyAxNDQwICogMTAwdncpKTtcbiAgfVxuICAucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IC5maWx0ZXItcm93OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgfVxufVxuLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuZmlsdGVyLWxhYmVsIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygyIC8gMzc1ICogMTAwdncpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4cykgLyAzNzUgKiAxMDB2dyk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAyMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLWNvbnRlbnQgLmZpbHRlci1yb3cgLmZpbHRlci1sYWJlbCB7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDJweCwgY2FsYygyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgZm9udC1zaXplOiBtaW4oY2FsYyh2YXIoLS1mcy1zKSAqIDFweCksIGNhbGModmFyKC0tZnMtcykgLyAxNDQwICogMTAwdncpKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbi5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLWNvbnRlbnQgLmZpbHRlci1yb3cgLmNoZWNrYm94LWdyb3VwIHtcbiAgcGFkZGluZy1ibG9jazogY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuY2hlY2tib3gtZ3JvdXAge1xuICAgIHBhZGRpbmctYmxvY2s6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IC5maWx0ZXItcm93IC5jaGVja2JveC1ncm91cDpub3QoLmdyaWQtbGluZSkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogY2FsYyg4IC8gMzc1ICogMTAwdncpIGNhbGMoMTIgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuY2hlY2tib3gtZ3JvdXA6bm90KC5ncmlkLWxpbmUpIHtcbiAgICBnYXA6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpIG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLWNvbnRlbnQgLmZpbHRlci1yb3cgLmNoZWNrYm94LWdyb3VwLmdyaWQtbGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiBjYWxjKDggLyAzNzUgKiAxMDB2dykgY2FsYyg4IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLWNvbnRlbnQgLmZpbHRlci1yb3cgLmNoZWNrYm94LWdyb3VwLmdyaWQtbGluZSB7XG4gICAgZ2FwOiBtaW4oNHB4LCBjYWxjKDQgLyAxNDQwICogMTAwdncpKSBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IC5maWx0ZXItcm93IC5jaGVja2JveC1ncm91cC5ncmlkLWxpbmUgLmNoZWNrYm94LWl0ZW0gaW5wdXQge1xuICB0cmFuc2xhdGU6IDAgY2FsYygxIC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLWNvbnRlbnQgLmZpbHRlci1yb3cgLmNoZWNrYm94LWdyb3VwLmdyaWQtbGluZSAuY2hlY2tib3gtaXRlbSBpbnB1dCB7XG4gICAgdHJhbnNsYXRlOiAwIG1pbigxcHgsIGNhbGMoMSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IC5maWx0ZXItcm93IC5jaGVja2JveC1ncm91cC5ncmlkLWxpbmUgLmNoZWNrYm94LWl0ZW0gLmNoZWNrYm94LWxhYmVsIHtcbiAgbWluLXdpZHRoOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiAucmVmaW5lLWNvbnRlbnQgLmZpbHRlci1yb3cgLmNoZWNrYm94LWdyb3VwLmdyaWQtbGluZSAuY2hlY2tib3gtaXRlbSAuY2hlY2tib3gtbGFiZWwge1xuICAgIG1pbi13aWR0aDogbWluKDQycHgsIGNhbGMoNDIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuY2hlY2tib3gtZ3JvdXAgLmNoZWNrYm94LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IC5maWx0ZXItcm93IC5jaGVja2JveC1ncm91cCAuY2hlY2tib3gtaXRlbSB7XG4gICAgZ2FwOiBtaW4oMnB4LCBjYWxjKDIgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuY2hlY2tib3gtZ3JvdXAgLmNoZWNrYm94LWl0ZW06aGFzKGlucHV0OmRpc2FibGVkKSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucmVmaW5lLXNlY3Rpb24gLnJlZmluZS1jb250ZW50IC5maWx0ZXItcm93IC5jaGVja2JveC1ncm91cCAuY2hlY2tib3gtaXRlbSBpbnB1dCB7XG4gIG1hcmdpbjogdW5zZXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuY2hlY2tib3gtZ3JvdXAgLmNoZWNrYm94LWl0ZW0gaW5wdXQge1xuICAgIHRyYW5zbGF0ZTogMCBtaW4oMXB4LCBjYWxjKDEgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuY2hlY2tib3gtZ3JvdXAgLmNoZWNrYm94LWl0ZW0gLmNoZWNrYm94LWxhYmVsIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4cykgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnJlZmluZS1zZWN0aW9uIC5yZWZpbmUtY29udGVudCAuZmlsdGVyLXJvdyAuY2hlY2tib3gtZ3JvdXAgLmNoZWNrYm94LWl0ZW0gLmNoZWNrYm94LWxhYmVsIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLXMpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1zKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucmVmaW5lLXNlY3Rpb24gLm5vdGUtdGV4dCB7XG4gIG1hcmdpbi10b3A6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXh4cykgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5yZWZpbmUtc2VjdGlvbiAubm90ZS10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMTZweCwgY2FsYygxNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtcykgKiAxcHgpLCBjYWxjKHZhcigtLWZzLXMpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLnNlYXJjaC1idXR0b24td3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IGNhbGMoMTYgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnNlYXJjaC1idXR0b24td3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogbWluKDIwcHgsIGNhbGMoMjAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnNlYXJjaC1idXR0b24td3JhcHBlciAuc2VhcmNoLWJ1dHRvbiB7XG4gIHdpZHRoOiBjYWxjKDE0MiAvIDM3NSAqIDEwMHZ3KTtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNlYXJjaC1idXR0b24td3JhcHBlciAuc2VhcmNoLWJ1dHRvbi5pcy1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2VhcmNoLWJ1dHRvbi13cmFwcGVyIC5zZWFyY2gtYnV0dG9uIHtcbiAgICB3aWR0aDogbWluKDE3MnB4LCBjYWxjKDE3MiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5cbi5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLmhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiBjYWxjKDI0IC8gMzc1ICogMTAwdncpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBtYXJnaW4taW5saW5lOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBwYWRkaW5nLWJvdHRvbTogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgYm9yZGVyLWJvdHRvbTogY2FsYygzIC8gMzc1ICogMTAwdncpIHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMtbCkgLyAzNzUgKiAxMDB2dyk7XG4gIGxpbmUtaGVpZ2h0OiAxNTUlO1xuICB3b3JkLWJyZWFrOiBhdXRvLXBocmFzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5oZWFkaW5nIHtcbiAgICBtYXJnaW4tdG9wOiBtaW4oODBweCwgY2FsYyg4MCAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IG1pbigzcHgsIGNhbGMoMyAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMteHhsKSAqIDFweCksIGNhbGModmFyKC0tZnMteHhsKSAvIDE0NDAgKiAxMDB2dykpO1xuICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICAgIHBhZGRpbmctYm90dG9tOiBtaW4oMTJweCwgY2FsYygxMiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5mZWF0dXJlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygxMiAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMjAgLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAuZmVhdHVyZSB7XG4gICAgbWFyZ2luLXRvcDogbWluKDI0cHgsIGNhbGMoMjQgLyAxNDQwICogMTAwdncpKTtcbiAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gIH1cbn1cbi5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLmJhY2stYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogY2FsYyg1NiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5iYWNrLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogbWluKDkwcHgsIGNhbGMoOTAgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAuYmFjay1idXR0b24gLnBfYnV0dG9uIHtcbiAgbWFyZ2luLWlubGluZTogYXV0bztcbn1cbi5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCB7XG4gIHBhZGRpbmctaW5saW5lOiBjYWxjKDIwIC8gMzc1ICogMTAwdncpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDM2IC8gMzc1ICogMTAwdncpO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICBnYXA6IGNhbGMoMjggLyAzNzUgKiAxMDB2dykgY2FsYygxNSAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5wcm9kdWN0LWxpc3Qge1xuICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICBtYXJnaW4tdG9wOiBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgZ2FwOiBtaW4oMjhweCwgY2FsYygyOCAvIDE0NDAgKiAxMDB2dykpIG1pbig2cHgsIGNhbGMoNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5wcm9kdWN0LWxpc3Q6aGFzKC5wcm9kdWN0LW5vbmUpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5wcm9kdWN0LWxpc3Q6aGFzKC5wcm9kdWN0LW5vbmUpIC5wcm9kdWN0LW5vbmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZzLXMpIC8gMzc1ICogMTAwdncpO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgcGFkZGluZy1ibG9jazogY2FsYygzMiAvIDM3NSAqIDEwMHZ3KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5wcm9kdWN0LWxpc3Q6aGFzKC5wcm9kdWN0LW5vbmUpIC5wcm9kdWN0LW5vbmUge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbCkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLWwpIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgYm9yZGVyLXJhZGl1czogbWluKDRweCwgY2FsYyg0IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gICAgcGFkZGluZy1ibG9jazogbWluKDY0cHgsIGNhbGMoNjQgLyAxNDQwICogMTAwdncpKTtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtaXRlbTpoYXMoLmFkZC10by1jb250YWN0KSB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogc3ViZ3JpZDtcbiAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgZ2FwOiBjYWxjKDggLyAzNzUgKiAxMDB2dyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWl0ZW06aGFzKC5hZGQtdG8tY29udGFjdCkge1xuICAgIGdhcDogbWluKDhweCwgY2FsYyg4IC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWxpbmsge1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG5AbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtbGluazpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICB9XG4gIC5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWxpbms6aG92ZXIgLnByb2R1Y3QtaW1hZ2UgaW1nIHtcbiAgICBzY2FsZTogMTtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtbGluayAucHJvZHVjdC1pbWFnZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoNCAvIDM3NSAqIDEwMHZ3KSBjYWxjKDQgLyAzNzUgKiAxMDB2dykgMCAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWxpbmsgLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpIG1pbig0cHgsIGNhbGMoNCAvIDE0NDAgKiAxMDB2dykpIDAgMDtcbiAgfVxufVxuLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtbGluayAucHJvZHVjdC1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGFzcGVjdC1yYXRpbzogNC8zO1xuICB0cmFuc2l0aW9uOiBzY2FsZSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICBzY2FsZTogMS4wNTtcbn1cbi5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWxpbmsgLnByb2R1Y3QtdGl0bGUge1xuICBwYWRkaW5nOiBjYWxjKDYgLyAzNzUgKiAxMDB2dykgY2FsYyg4IC8gMzc1ICogMTAwdncpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWxpbmsgLnByb2R1Y3QtdGl0bGUge1xuICAgIHBhZGRpbmc6IG1pbig4cHgsIGNhbGMoOCAvIDE0NDAgKiAxMDB2dykpIG1pbigxMnB4LCBjYWxjKDEyIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cbi5wcm9kdWN0LXNlYXJjaC1yZXN1bHQgLnByb2R1Y3QtbGlzdCAucHJvZHVjdC1pdGVtIC5wcm9kdWN0LWxpbmsgLnByb2R1Y3QtdGl0bGUgLnByb2R1Y3QtbmFtZSB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mcy1zKSAvIDM3NSAqIDEwMHZ3KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE1NyU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtbGluayAucHJvZHVjdC10aXRsZSAucHJvZHVjdC1uYW1lIHtcbiAgICBmb250LXNpemU6IG1pbihjYWxjKHZhcigtLWZzLWwpICogMXB4KSwgY2FsYyh2YXIoLS1mcy1sKSAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtcmVzdWx0IC5wcm9kdWN0LWxpc3QgLnByb2R1Y3QtaXRlbSAucHJvZHVjdC1saW5rIC5wcm9kdWN0LXRpdGxlIC5wcm9kdWN0LW51bWJlciB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1udW0pO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tZnMteHMpIC8gMzc1ICogMTAwdncpO1xuICBsaW5lLWhlaWdodDogMTgzLjMzMyU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCAucHJvZHVjdC1saXN0IC5wcm9kdWN0LWl0ZW0gLnByb2R1Y3QtbGluayAucHJvZHVjdC10aXRsZSAucHJvZHVjdC1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogbWluKGNhbGModmFyKC0tZnMtbSkgKiAxcHgpLCBjYWxjKHZhcigtLWZzLW0pIC8gMTQ0MCAqIDEwMHZ3KSk7XG4gIH1cbn1cblxuLmZsb2F0QnV0dG9uIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBwYWRkaW5nOiBjYWxjKDM2IC8gMzc1ICogMTAwdncpIGNhbGMoMjQgLyAzNzUgKiAxMDB2dyk7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5O1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2xhdGUgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgdHJhbnNsYXRlOiAwIDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmZsb2F0QnV0dG9uIHtcbiAgICBwYWRkaW5nOiBtaW4oMzZweCwgY2FsYygzNiAvIDE0NDAgKiAxMDB2dykpO1xuICB9XG59XG4uZmxvYXRCdXR0b24uaXMtc2hvdyB7XG4gIHRyYW5zbGF0ZTogMCAwO1xufVxuLmZsb2F0QnV0dG9uIC5wX2J1dHRvbiB7XG4gIG1hcmdpbi1pbmxpbmU6IGF1dG87XG59XG5cbi8qKlxuICogU3dpcGVyIDExLjEuMTRcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjQgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogU2VwdGVtYmVyIDEyLCAyMDI0XG4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICBzcmM6IHVybChcImRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCBkMDlHUmdBQkFBQUFBQVpnQUJBQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdSbFJOQUFBR1JBQUFBQm9BQUFBY2k2cUhrVWRFUlVZQUFBV2dBQUFBSXdBQUFDUUFZQUJYUjFCUFV3QUFCaFFBQUFBdUFBQUFOdUFZNyt4SFUxVkNBQUFGeEFBQUFGQUFBQUJtMmZQY3pVOVRMeklBQUFIY0FBQUFTZ0FBQUdCUDlWNVJZMjFoY0FBQUFrUUFBQUNJQUFBQll0NkYwY0JqZG5RZ0FBQUN6QUFBQUFRQUFBQUVBQkVCUkdkaGMzQUFBQVdZQUFBQUNBQUFBQWovL3dBRFoyeDVaZ0FBQXl3QUFBRE1BQUFEMk1IdHJ5Vm9aV0ZrQUFBQmJBQUFBREFBQUFBMkUyK2VvV2hvWldFQUFBR2NBQUFBSHdBQUFDUUM5Z0R6YUcxMGVBQUFBaWdBQUFBWkFBQUFyZ0prQUJGc2IyTmhBQUFDMEFBQUFGb0FBQUJhRlFBVUdHMWhlSEFBQUFHOEFBQUFId0FBQUNBQWNBQkFibUZ0WlFBQUEvZ0FBQUU1QUFBQ1h2RmRCd2x3YjNOMEFBQUZOQUFBQUdJQUFBQ0U1czc0aFhqYVkyQmtZR0FBWXBmNUh1L2orVzIrTW5Bek1ZREF6YVg2UWpENi80Ly9CeGo1R0E4QXVSd01ZR2tBUHl3TDEzamFZMkJrWUdBODhQOEFneDRqKy84ZlFEWWZBMUFFQldnREFJQjJCT29BZU5wallHUmdZTkJoNEdkZ1lnQUJFTW5JQUJKellOQURDUUFBQ1dnQXNRQjQybU5nWWZ6Q09JR0JsWUdCMFljeGpZR0J3UjFLZjJXUVpHaGhZR0JpWUdWbWdBRkdCaVFRa09hYXd0REFvTUJReFhqZy93RUdQY1lEREE0d05VQTJDQ2d3c0FBQU80RUw2Z0FBZU5wajJNMGd5QUFDcXhnR05XQmtaMkQ0L3dNQSt4a0RkZ0FBQUhqYVkyQmdZR2FBWUJrR1JnWVFpQUh5R01GOEZnWUhJTTNEd01IQUJHUXJNT2d5V0RMRU0xVDkvdzhVQmZFTWdMekUvLy8vUC81Ly9mL1YveHYrcjRlYUFBZU1iQXh3SVVZbUlNSEVnS1lBWWpVY3NEQXdzTEt4YzNCeWNmUHc4akVRQS9nWkJBU0ZoRVZFeGNRbEpLV2taV1RsNUJVVWxaUlZWTlhVTlRRWkJnTUFBTVIrRStnQUVRRkVBQUFBS2dBcUFDb0FOQUErQUVnQVVnQmNBR1lBY0FCNkFJUUFqZ0NZQUtJQXJBQzJBTUFBeWdEVUFONEE2QUR5QVB3QkJnRVFBUm9CSkFFdUFUZ0JRZ0ZNQVZZQllBRnFBWFFCZmdHSUFaSUJuQUdtQWJJQnpnSHNBQUI0MnUyTk1RNkNVQXlHVzU2OHg5QW5lWVlnbTRNSmJoS0ZhRXhJT0FWWDhBcGV3U3Q0QmljNEFmZUFpZDNWT0JpeER4ZlBZRXphNU8rWGZpMDRZQURnZ2lVSVVMQ3VFSks4VmhPNGJTdnBkbmt0SEk1UUNZdGRpMnNsOFpuWGFIbHFVck5LemRLY1Q4Y2pscStyd1pTdklWY3pOaWV6c2ZuUC91em5tZlBGQk5PRE0ySzdNVFE0NVlFQVpxR1A4MUFtR0djRjNpUHFPb3AwcjFTUFRhVGJWa2ZVZTRIWGo5N3dZRSt5TndXWXh3V3U0djF1Z1dIZ28zUzFYZFpFVnFXTTdFVDBjZm5MR3hXZmtnUjQybzJQdldyRE1CU0ZqL0lITGFGMHpLalJnZGlWTXdTY05SQW9XVW9INzhZMmljQi95SVkwOUFuNkFIMkJkdS9VQit5eG9wWXNoUWlFdm52dTBkVVJnRHQ4UWVDOFBEdzdGcGppM2ZFQTR6L1BFSjZZT0I1aEtoNGRqM0V2WGh4UHFIL1NLVVkzcko3c3JaNEZabmgxUE1BdFBod1A2ZmwyUE1KTVBEZ2VRNHJZOFlUNkd6YW8wZUFFQTQwOUR1Z2dtVG5Gbk9jU0NpRWlMTWd4Q2lUSTZDcTVEWlVkM1FtcDEwdk8wTGFMVGQyY2pONGZPdW1sYzdsVVliU1FjWkZrdXRSRzdnNkpLWkt5MFJtZExZNjgwQ0RuRUorVU1rcEZGZTFSTjdueGRWcFhyQzRhVHRuYXVyT25ZZXJjWmcyWVZtTE4vZC9nY3pmRWltckUvZnMvYk91cTI5Wm1uOHRsb09SYVhnWmdHYTc4eU85L2NuWG0yQnBhR3ZxMjVEdjlTNEU5KzVTSWM5UHF1cEpLaFlGU1NsNDcrUWNyMW1ZTkFBQUFlTnB0dzBjS3drQUFBTURaSkE4UTdPVUp2a0xzUGZaNnpGVkVSUHk4cUhoMllFUiszaS9CUDgzdklCTEx5U3NvS2ltcnFLcXBhMmhwNitqcTZSc1lHaG1ibUpxWlN5MHNyYXh0Yk8zc0hSeWRuRU1VNHVSNnl4N0pKWHZlUDdXckR5Y0FBQUFBQUFILy93QUNlTnBqWUdSZ1lPQUJZaGtnWmdKQ1pnWk5Ca1lHTFFadElKc0ZMTVlBQUF3M0FMZ0FlTm9saXpFS2dEQVFCQ2NoUmJDMnNGRVIwWUQ2cVZRaUJDdi9IOWV6R0k2WjVYQkF3OENCSy9tNWlRUVZhdVZiWExuT3JNWnYyb0xkS0ZhOFBqdXJ1MmhKekdhYm1PU0x6Tk16dnV0cEIzTjQybU5nWkdCZzRHS1FZekJoWU14SkxNbGo0R0JnQVlvdy9QL1BBSkpoTE02c1NvV0tmV0NBQXdEQWpnYlJBQUI0Mm1OZ1lHQmtBSUliQ1pvNUlQcm1VbjBoR0EwQU84RUZUUUFBXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG46cm9vdCB7XG4gIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiMwMDdhZmY7XG59XG5cbjpob3N0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgei1pbmRleDogMTtcbn1cblxuLnN3aXBlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uc3dpcGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IHZhcigtLXN3aXBlci13cmFwcGVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uLCBpbml0aWFsKTtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLCAuc3dpcGVyLWlvcyAuc3dpcGVyLXNsaWRlLCAuc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5zd2lwZXItdmVydGljYWwge1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zd2lwZXItYXV0b2hlaWdodCwgLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXIge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG59XG5cbi5zd2lwZXItYmFja2ZhY2UtaGlkZGVuIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlciB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLnN3aXBlci0zZCB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdywgLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cblxuLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbn1cblxuLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydCBzdGFydDtcbn1cblxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xufVxuXG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xufVxuXG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiBub25lO1xufVxuXG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgc2Nyb2xsLXNuYXAtYWxpZ246IG5vbmU7XG59XG5cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBmbGV4LXNocmluazogMDtcbiAgb3JkZXI6IDk5OTk7XG59XG5cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXIgY2VudGVyO1xuICBzY3JvbGwtc25hcC1zdG9wOiBhbHdheXM7XG59XG5cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbn1cblxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG59XG5cbi5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbn1cblxuLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAxcHg7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3csIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLCAuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsIC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MgLnN3aXBlci1zbGlkZS12aXNpYmxlIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIsIC5zd2lwZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6I2ZmZjtcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlci1ibGFjayB7XG4gIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjojMDAwO1xufVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4uc3dpcGVyLXZpcnR1YWwgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG5cbi5zd2lwZXItdmlydHVhbC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIHdpZHRoOiB2YXIoLS1zd2lwZXItdmlydHVhbC1zaXplKTtcbn1cblxuLnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWwgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXZpcnR1YWwtc2l6ZSk7XG59XG5cbjpyb290IHtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOjQ0cHg7XG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCwgNTAlKTtcbiAgd2lkdGg6IGNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyA0NCAqIDI3KTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgbWFyZ2luLXRvcDogY2FsYygwcHggLSB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDIpO1xuICB6LWluZGV4OiAxMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkLCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24taGlkZGVuLCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkIC5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHN2ZywgLnN3aXBlci1idXR0b24tcHJldiBzdmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG5cbi5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQgc3ZnLCAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHN2ZyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsIC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICByaWdodDogYXV0bztcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dCwgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDEwcHgpO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dDphZnRlciwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gIGZvbnQtZmFtaWx5OiBzd2lwZXItaWNvbnM7XG4gIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXZhcmlhbnQ6IGluaXRpYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLCAuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyIHtcbiAgY29udGVudDogXCJwcmV2XCI7XG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICByaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCAxMHB4KTtcbiAgbGVmdDogYXV0bztcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dDphZnRlciwgLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gIGNvbnRlbnQ6IFwibmV4dFwiO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogMC4zcyBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCA+IC5zd2lwZXItcGFnaW5hdGlvbiwgLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwgLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSwgLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgYm90dG9tOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b20sIDhweCk7XG4gIHRvcDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wLCBhdXRvKTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCA4cHgpKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cywgNTAlKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCAjMDAwKTtcbiAgb3BhY2l0eTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksIDAuMik7XG59XG5cbmJ1dHRvbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQ6b25seS1jaGlsZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodCwgOHB4KTtcbiAgbGVmdDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tbGVmdCwgYXV0byk7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwLCA2cHgpIDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogOHB4O1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0cmFuc2l0aW9uOiAwLjJzIHRyYW5zZm9ybSwgMC4ycyB0b3A7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsIC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogMCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXAsIDRweCk7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYywgLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsIC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2l0aW9uOiAwLjJzIHRyYW5zZm9ybSwgMC4ycyBsZWZ0O1xufVxuXG4uc3dpcGVyLWhvcml6b250YWwuc3dpcGVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zaXRpb246IDAuMnMgdHJhbnNmb3JtLCAwLjJzIHJpZ2h0O1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICBjb2xvcjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24tY29sb3IsIGluaGVyaXQpO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjI1KSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG5cbi5zd2lwZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbn1cblxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLCAuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsIC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSwgNHB4KTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN3aXBlci1zY3JvbGxiYXIge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvcmRlci1yYWRpdXMsIDEwcHgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjEpKTtcbn1cblxuLnN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWQgPiAuc3dpcGVyLXNjcm9sbGJhciwgLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIsIC5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItaG9yaXpvbnRhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKTtcbiAgYm90dG9tOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvdHRvbSwgNHB4KTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXRvcCwgYXV0byk7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2l6ZSwgNHB4KTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDIgKiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpKTtcbn1cblxuLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci12ZXJ0aWNhbCwgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWxlZnQsIGF1dG8pO1xuICByaWdodDogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1yaWdodCwgNHB4KTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwgMSUpO1xuICB6LWluZGV4OiA1MDtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2l6ZSwgNHB4KTtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyICogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsIDElKSk7XG59XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1zY3JvbGxiYXItZHJhZy1iZy1jb2xvciwgcmdiYSgwLCAwLCAwLCAwLjUpKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3JkZXItcmFkaXVzLCAxMHB4KTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbn1cblxuLnN3aXBlci1zY3JvbGxiYXItbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzLCAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gaW1nLCAuc3dpcGVyLXpvb20tY29udGFpbmVyID4gc3ZnIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uc3dpcGVyLXNsaWRlLXpvb21lZCB7XG4gIGN1cnNvcjogbW92ZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4uc3dpcGVyIC5zd2lwZXItbm90aWZpY2F0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTAwMDtcbn1cblxuLnN3aXBlci1mcmVlLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uc3dpcGVyLWdyaWQgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5zd2lwZXItZ3JpZC1jb2x1bW4gPiAuc3dpcGVyLXdyYXBwZXIge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5zd2lwZXItZmFkZS5zd2lwZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG5cbi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4uc3dpcGVyLnN3aXBlci1jdWJlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zd2lwZXItY3ViZS5zd2lwZXItcnRsIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG59XG5cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtcHJldiB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uc3dpcGVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDAuNjtcbiAgei1pbmRleDogMDtcbn1cblxuLnN3aXBlci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbn1cblxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sIC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwgLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc3dpcGVyLnN3aXBlci1mbGlwIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG59XG5cbi5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlLCAuc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cblxuLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sIC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwgLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc3dpcGVyLWNyZWF0aXZlIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHksIGhlaWdodDtcbn1cblxuLnN3aXBlci5zd2lwZXItY2FyZHMge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnN3aXBlci1jYXJkcyAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn0iLCJodG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsIHByZSwgYSwgYWJiciwgYWNyb255bSwgYWRkcmVzcywgYmlnLCBjaXRlLCBjb2RlLCBkZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsIHNtYWxsLCBzdHJpa2UsIHN0cm9uZywgc3ViLCBzdXAsIHR0LCB2YXIsIGIsIHUsIGksIGNlbnRlciwgZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSwgZmllbGRzZXQsIGZvcm0sIGxhYmVsLCBsZWdlbmQsIHRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLCBhcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCwgZmlndXJlLCBmaWdjYXB0aW9uLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIG91dHB1dCwgcnVieSwgc2VjdGlvbiwgc3VtbWFyeSwgdGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiB1bnNldDtcbiAgYm9yZGVyOiAwO1xuICBmb250OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMTtcbn1cbm9sLCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuY2FwdGlvbiwgdGgsIHRkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbnEsIGJsb2NrcXVvdGUge1xuICBxdW90ZXM6IG5vbmU7XG59XG5xOmJlZm9yZSwgcTphZnRlciwgYmxvY2txdW90ZTpiZWZvcmUsIGJsb2NrcXVvdGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBjb250ZW50OiBub25lO1xufVxuYSBpbWcge1xuICBib3JkZXI6IG5vbmU7XG59XG5hcnRpY2xlLCBhc2lkZSwgZGV0YWlscywgZmlnY2FwdGlvbiwgZmlndXJlLCBmb290ZXIsIGhlYWRlciwgaGdyb3VwLCBtZW51LCBuYXYsIHNlY3Rpb24sIHN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcInJlc2V0XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuXG5cbiRyZXNwb25zaXZlLWRlYnVnLW1vZGU6IGZhbHNlO1xuXG4qIHtcbiAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4qOmJlZm9yZSxcbio6YWZ0ZXIge1xuICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbio6Zm9jdXMge1xub3V0bGluZTogbm9uZTtcbn1cbmh0bWwge1xuICBmb250LXNpemU6IDYyLjUlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIC8vc2Nyb2xsLXBhZGRpbmctdG9wOiBjYWxjKHZ3KC0taGVpZ2h0LWhlYWRlcikgKyAzMHB4KTtcbiAgQGluY2x1ZGUgbXF7XG4gICAgLy9zY3JvbGwtcGFkZGluZy10b3A6IGNhbGModncoLS1oZWlnaHQtaGVhZGVyLXBjKSArIDM1cHgpO1xuICB9XG59XG5ib2R5IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtZGFyayk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWxpZ2h0KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWdvdGhpYyk7XG4gIGZvbnQtb3B0aWNhbC1zaXppbmc6IGF1dG87XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ub3JtYWwpO1xuICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IHZhcigtLWZvbnQtZmVhdHVyZS1zZXR0aW5ncyk7XG4gIHRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAmLmZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogLTE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKSAuMXMsIHotaW5kZXggMHMgdmFyKC0tYmV6aWVyKTtcbiAgICB9XG4gIH1cbiAgQGlmICRyZXNwb25zaXZlLWRlYnVnLW1vZGUge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ21pbic7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgei1pbmRleDogMTAwMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDRweDtcbiAgICAgIEBpbmNsdWRlIG1xKHNwKSB7XG4gICAgICAgIGNvbnRlbnQ6ICdzcCc7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtcShzcGwpIHtcbiAgICAgICAgY29udGVudDogJ3NwIGxhbmRzY2FwZSc7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtcSh0Yikge1xuICAgICAgICBjb250ZW50OiAndGFibGV0JztcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgY29udGVudDogJ3RhYmxldCBsYW5kc2NhcGUnO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbXEocGMpIHtcbiAgICAgICAgY29udGVudDogJ3BjJztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5yZWQge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1lcnJvcik7XG59XG5zdHJvbmcge1xuICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmlucHV0LHNlbGVjdCx0ZXh0YXJlYSxsYWJlbCxhIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbmEge1xuICBjb2xvcjogY3VycmVudENvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgJltocmVmXj1cInRlbDpcIl0ge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cbmFiYnIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiBub25lXG59XG5zdXAsXG5zdWIge1xuICBoZWlnaHQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG59XG5zdXAge1xuICBib3R0b206IC43NWV4O1xufVxuc3ViIHtcbiAgdG9wOiAuNWV4O1xufVxuaW1nIHtcbiAgLy8gd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgLy8gd2lkdGg6IGF1dG87XG4gIH1cbn1cbi5oaWRkZW4tc3Age1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgZGlzcGxheTogdW5zZXQ7XG4gIH1cbn1cbi5oaWRkZW4tcGN7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGlkZGVuLW92ZXItdGJsIHtcbiAgQGluY2x1ZGUgbXEodGJsKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmhpZGRlbi1vdmVyLXRiIHtcbiAgQGluY2x1ZGUgbXEodGIpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGlkZGVuLW92ZXItc3Age1xuICBAaW5jbHVkZSBtcShzcCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5hbmNob3JtIC5hbmNob3JfaGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OmJsb2NrO1xuICB2aXNpYmlsaXR5OmhpZGRlbjtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBtcSB7XG4gICAgdG9wOiBwY21heCgtNDlweCk7XG4gIH1cbn1cbi5zdmdfZGVmIHtcbiAgdmlzaWJpbGl0eTpoaWRkZW47XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG59XG4ucF9idXR0b246bm90KC5jdikge1xuICBAaW5jbHVkZSBidXR0b247XG59XG4ucF9idXR0b24uY3Yge1xuICBAaW5jbHVkZSBidXR0b24oYXBwbHkpO1xufVxuYm9keTpub3QoLnRvcHBhZ2UpIHtcbiAgbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IHZ3KC0taGVpZ2h0LWhlYWRlcik7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgcGFkZGluZy10b3A6IHBjKC0taGVpZ2h0LWhlYWRlci1wYyk7XG4gICAgfVxuICB9XG59XG5cbiN3cmFwcGVyIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWFkZXIgKyAmIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyh2YXIoLS1oZWlnaHQtaGVhZGVyKSArIDMwcHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWhlaWdodC1oZWFkZXItcGMpICsgMzVweCk7XG4gICAgfVxuICB9XG4gIC50b3BwYWdlICYge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG4gIC5zaW5rICYge1xuICAgIG9wYWNpdHk6IC41O1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG4gIC5jb250ZW50c0lubmVyIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1hcmdpbi10b3A6IHZ3KDQwcHgpO1xuICAgICY6aGFzKCNzaWRlYmFyKSB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZTpcbiAgICAgICAgXCJzaWRlYmFyIG1haW5cIiAxZnJcbiAgICAgICAgLyBwYygyODhweCkgMWZyO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDU2cHgpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGdhcDogcGMoMTZweCk7XG4gICAgICB9XG4gICAgfVxuICAgIG1haW4ge1xuICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDU2cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcGMoODBweCk7XG4gICAgICB9XG4gICAgICA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIOWGhemDqOOBrnN3aXBlcuOBruW0qeOCjOWbnumBv1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBncmlkLWFyZWE6IG1haW47XG4gICAgICAgID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICA+IGE6Zmlyc3QtY2hpbGQgKyAqIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5jb250YWluZXIsXG4gICAgICAgIC5pbm5lcixcbiAgICAgICAgLmNvbXBvbmVudC50eXBlX3RhYmxlLFxuICAgICAgICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnLFxuICAgICAgICAuY29tcG9uZW50LnR5cGVfY29udmVyc2lvbixcbiAgICAgICAgLmhlYWRpbmdMYXJnZSxcbiAgICAgICAgLmhlYWRpbmdTbWFsbCxcbiAgICAgICAgLm1fdGFnbGlzdCB7XG4gICAgICAgICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbXBvbmVudC50eXBlX3RleHQge1xuICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubmF2aWdhdGlvbi5hcnRpY2xlbGlzdCAuaW5uZXIgLmxpc3QsIC5jb21wb25lbnQudHlwZV9wYWdlbGlzdCAuaW5uZXIgLmxpc3Qge1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG5cbiAgICAgICAgfVxuICAgICAgICAuY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIC5pbm5lciAuaW1hZ2UgaW1nIHtcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyAuaW5uZXIgLmltYWdlIHtcbiAgICAgICAgICB3aWR0aDogODIlO1xuICAgICAgICB9XG4gICAgICB9XG4gIFxuICAgIH1cbiAgICAjc2lkZWJhciB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGdyaWQtYXJlYTogc2lkZWJhcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG59XG4uZmFkZVVwIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNsYXRlOiAwIHZ3KDMwcHgpO1xuICB0cmFuc2l0aW9uOlxuICAgIG9wYWNpdHkgY3ViaWMtYmV6aWVyKDAsMS40MiwuOTgsMS4wOSkgLjVzLFxuICAgIHRyYW5zbGF0ZSBjdWJpYy1iZXppZXIoMCwxLjQyLC45OCwxLjA5KSAuNXM7XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIHRyYW5zbGF0ZTogMCBwYygzMHB4KTtcbiAgfVxuICAmLmlzLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxuICAmLmRlbGF5LXBjIHtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC41cztcbiAgICB9XG4gIH1cbn1cblxuXG5odG1sLmxlbmlzLFxuaHRtbC5sZW5pcyBib2R5IHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmxlbmlzLmxlbmlzLXNtb290aCB7XG4gIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xufVxuLmxlbmlzLmxlbmlzLXNtb290aCBbZGF0YS1sZW5pcy1wcmV2ZW50XSB7XG4gIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG59XG4ubGVuaXMubGVuaXMtc3RvcHBlZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ubGVuaXMubGVuaXMtc2Nyb2xsaW5nIGlmcmFtZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuaHRtbC5pcy1jaGFuZ2luZyAudHJhbnNpdGlvbi1mYWRlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgb3BhY2l0eTogMTtcbn1cblxuaHRtbC5pcy1hbmltYXRpbmcgLnRyYW5zaXRpb24tZmFkZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jb3Zlck91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm90dG9tOiAtMXB4O1xuICAgIGxlZnQ6IC0xcHg7XG4gICAgcmlnaHQ6IC0xcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGhpcmQpO1xuICAgIHotaW5kZXg6IDIwO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGN1YmljLWJlemllcigxLCAwLCAwLCAxKSAwcztcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgfVxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kKTtcbiAgICB6LWluZGV4OiAxOTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMSwgMCwgMCwgMSkgLjNzO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB9XG4gICYuaXMtYWN0aXZlIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgIH1cbiAgfVxufVxuLy9kZWZhdWx0XG5AaW1wb3J0IFwiY29tbW9uL2hlYWRlclwiO1xuQGltcG9ydCBcImNvbW1vbi9mb290ZXJcIjtcbkBpbXBvcnQgXCJjb21tb24vc2lkZWJhclwiO1xuQGltcG9ydCBcImNvbXBvbmVudC9pbmRleFwiO1xuQGltcG9ydCBcIm5hdmlnYXRpb24vaW5kZXhcIjtcbkBpbXBvcnQgXCJzdGF0aWMvaW5kZXhcIjtcbkBpbXBvcnQgXCJ0b3BcIjtcbkBpbXBvcnQgXCJ1bmlxXCI7XG5AaW1wb3J0IFwicHJvZHVjdHNlYXJjaFwiO1xuQGltcG9ydCBcInN3aXBlclwiOyIsIlxuXG5cbiRicmVha3BvaW50czogKFxuICAnbWluJzogJ3ByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NHB4KScsXG4gICdzcCc6ICdwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNzVweCknLFxuICAnc3BsJzogJ3ByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSknLFxuICAndGInOiAncHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpJyxcbiAgJ3RibCc6ICdwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDgwcHgpJyxcbiAgJ3BjJzogJ3ByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0NDBweCknLFxuICAncGNsYXJnZSc6ICdwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNjYwcHgpJyxcbikgIWRlZmF1bHQ7XG5cblxuXG5AbWl4aW4gcGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtaXhpbiBtcSgkYnJlYWtwb2ludDogdGIpIHtcbiAgQG1lZGlhICN7bWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KX0ge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5AZnVuY3Rpb24gaXMtY3NzLXZhcigkdmFsdWUpIHtcbiAgJGZpcnN0LWNoYXJzOiBzdHItc2xpY2UoI3skdmFsdWV9LCAxLCAyKTtcbiAgQHJldHVybiAkZmlyc3QtY2hhcnMgPT0gJy0tJyBvciBzdHItaW5kZXgoI3skdmFsdWV9LCAndmFyKC0tJykgIT0gbnVsbDtcbn1cbkBtaXhpbiBzcF9wYyB7XG4gICYuc3Age1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICYucGMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiAnJztcbiAgfVxufVxuQG1peGluIGNvbnRhaW5lcigkc2l6ZTpkZWZhdWx0KSB7XG4gIHBhZGRpbmctbGVmdDogdncoLS1wYWRkaW5nLXNwKTtcbiAgcGFkZGluZy1yaWdodDogdncoLS1wYWRkaW5nLXNwKTtcbiAgQGluY2x1ZGUgbXEoKSB7XG4gICAgcGFkZGluZy1sZWZ0OiB1bnNldDtcbiAgICBwYWRkaW5nLXJpZ2h0OiB1bnNldDtcbiAgICB3aWR0aDogcGMoLS13aWR0aC1jb250YWluZXIpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbiAgQGlmICRzaXplID09IHdpZGUge1xuICAgIEBpbmNsdWRlIG1xKHBjbGFyZ2UpIHtcbiAgICAgIHdpZHRoOiBwYygxNTYwcHgpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gaG92ZXJPcCgkb3A6MC43KSB7XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3ZlcikgeyBcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6ICRvcDtcbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBob3ZlclNjYWxlKCRzY2FsZToxLjAyLCAkYWN0aXZlOjAuOTYpIHtcbiAgdHJhbnNpdGlvbjogc2NhbGUgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHNjYWxlOiAkc2NhbGU7XG4gICAgfVxuICB9XG4gICY6YWN0aXZlIHtcbiAgICBzY2FsZTogJGFjdGl2ZTtcbiAgfVxufVxuQG1peGluIGhvdmVyQ29sb3IoJGNvbG9yOnZhcigtLWNvbG9yLWJyYW5kKSkge1xuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBib3JkZXIgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAmW3RhcmdldD1cIl9ibGFua1wiXSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1peGluIGhvdmVyQkdDb2xvcigkY29sb3I6dmFyKC0tY29sb3ItYnJhbmQpKSB7XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpLCBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJvcmRlciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuICBAaWYgdHlwZS1vZigkbnVtYmVyKSA9PSAnbnVtYmVyJyBhbmQgbm90IHVuaXRsZXNzKCRudW1iZXIpIHtcbiAgICBAcmV0dXJuICRudW1iZXIgLyAoJG51bWJlciAqIDAgKyAxKTtcbiAgfVxuICBAcmV0dXJuICRudW1iZXI7XG59XG5cbkBmdW5jdGlvbiB2dygkcHgsICRiYXNlOiAzNzVweCkge1xuICBAaWYgaXMtY3NzLXZhcigkcHgpIHtcbiAgICBAaWYgc3RyLWluZGV4KCN7JHB4fSwgJ3ZhcignKSAhPSBudWxsIHtcbiAgICAgIEByZXR1cm4gY2FsYygjeyRweH0gLyAje3N0cmlwLXVuaXQoJGJhc2UpfSAqIDEwMHZ3KTtcbiAgICB9XG4gICAgQHJldHVybiBjYWxjKHZhcigjeyRweH0pIC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gIH1cblxuICAkdmFsdWU6ICRweDtcbiAgQGlmICh1bml0KCRweCkgIT0gJ3B4Jykge1xuICAgIEB3YXJuICd2dygp44Gu5byV5pWw44GrcHjku6XlpJbjga7lgKTjgpLmjIflrprjgZfjgabjgoLoqIjnrpfjgafjgY3jgb7jgZvjgpMnO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gICR2YWx1ZTogY2FsYygje3N0cmlwLXVuaXQoJHB4KX0gLyAje3N0cmlwLXVuaXQoJGJhc2UpfSAqIDEwMHZ3KTtcbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBwYygkcHgsICRiYXNlOiAxNDQwcHgpIHtcbiAgQGlmIGlzLWNzcy12YXIoJHB4KSB7XG4gICAgQGlmIHN0ci1pbmRleCgjeyRweH0sICd2YXIoJykgIT0gbnVsbCB7XG4gICAgICAkdnctdmFsdWU6IGNhbGMoI3skcHh9IC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gICAgICBAcmV0dXJuIG1pbihjYWxjKCN7JHB4fSAqIDFweCksICN7JHZ3LXZhbHVlfSk7XG4gICAgfVxuICAgICR2dy12YWx1ZTogY2FsYyh2YXIoI3skcHh9KSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICAgIEByZXR1cm4gbWluKGNhbGModmFyKCN7JHB4fSkgKiAxcHgpLCAjeyR2dy12YWx1ZX0pO1xuICB9XG5cbiAgJHZhbHVlOiAkcHg7XG4gIEBpZiAodW5pdCgkcHgpICE9ICdweCcpIHtcbiAgICBAd2FybiAncGMoKeOBruW8leaVsOOBq3B45Lul5aSW44Gu5YCk44KS5oyH5a6a44GX44Gm44KC6KiI566X44Gn44GN44G+44Gb44KTJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuICAkdmFsdWU6IGNhbGMoI3tzdHJpcC11bml0KCRweCl9IC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gIEByZXR1cm4gbWluKCN7JHB4fSwgI3skdmFsdWV9KTtcbn1cblxuQGZ1bmN0aW9uIHBjbGFyZ2UoJHB4LCAkYmFzZTogMTQ0MHB4KSB7XG4gIEBpZiBpcy1jc3MtdmFyKCRweCkge1xuICAgIEBpZiBzdHItaW5kZXgoI3skcHh9LCAndmFyKCcpICE9IG51bGwge1xuICAgICAgJHZ3LXZhbHVlOiBjYWxjKCN7JHB4fSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICAgICAgQHJldHVybiBtaW4oY2FsYygjeyRweH0gKiAxLjMzMzMzM3B4KSwgI3skdnctdmFsdWV9KTtcbiAgICB9XG4gICAgJHZ3LXZhbHVlOiBjYWxjKHZhcigjeyRweH0pIC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gICAgQHJldHVybiBtaW4oY2FsYyh2YXIoI3skcHh9KSAqIDEuMzMzMzMzcHgpLCAjeyR2dy12YWx1ZX0pO1xuICB9XG5cbiAgJHZhbHVlOiAkcHg7XG4gIEBpZiAodW5pdCgkcHgpICE9ICdweCcpIHtcbiAgICBAd2FybiAncGMxOTIwKCnjga7lvJXmlbDjgatweOS7peWkluOBruWApOOCkuaMh+WumuOBl+OBpuOCguioiOeul+OBp+OBjeOBvuOBm+OCkyc7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgJHZhbHVlOiBjYWxjKCN7c3RyaXAtdW5pdCgkcHgpfSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICBAcmV0dXJuIG1pbihjYWxjKCN7JHB4fSAqIDEuMzMzMzMzKSwgI3skdmFsdWV9KTtcbn1cblxuXG5AZnVuY3Rpb24gcGNtYXgoJHB4LCAkYmFzZTogMTQ0MHB4KSB7XG4gIEBpZiBpcy1jc3MtdmFyKCRweCkge1xuICAgIEBpZiBzdHItaW5kZXgoI3skcHh9LCAndmFyKCcpICE9IG51bGwge1xuICAgICAgJHZ3LXZhbHVlOiBjYWxjKCN7JHB4fSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICAgICAgQHJldHVybiBtYXgoY2FsYygjeyRweH0gKiAxcHgpLCAjeyR2dy12YWx1ZX0pO1xuICAgIH1cbiAgICAkdnctdmFsdWU6IGNhbGModmFyKCN7JHB4fSkgLyAje3N0cmlwLXVuaXQoJGJhc2UpfSAqIDEwMHZ3KTtcbiAgICBAcmV0dXJuIG1heChjYWxjKHZhcigjeyRweH0pICogMXB4KSwgI3skdnctdmFsdWV9KTtcbiAgfVxuXG4gICR2YWx1ZTogJHB4O1xuICBAaWYgKHVuaXQoJHB4KSAhPSAncHgnKSB7XG4gICAgQHdhcm4gJ3BjbWF4KCnjga7lvJXmlbDjgatweOS7peWkluOBruWApOOCkuaMh+WumuOBl+OBpuOCguioiOeul+OBp+OBjeOBvuOBm+OCkyc7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgJHZhbHVlOiBjYWxjKCN7c3RyaXAtdW5pdCgkcHgpfSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xuICBAcmV0dXJuIG1heCgjeyRweH0sICN7JHZhbHVlfSk7XG59XG5cbkBmdW5jdGlvbiBwY3Z3KCRweCwgJGJhc2U6IDE0NDBweCkge1xuICBAaWYgaXMtY3NzLXZhcigkcHgpIHtcbiAgICBAaWYgc3RyLWluZGV4KCN7JHB4fSwgJ3ZhcignKSAhPSBudWxsIHtcbiAgICAgIEByZXR1cm4gY2FsYygjeyRweH0gLyAje3N0cmlwLXVuaXQoJGJhc2UpfSAqIDEwMHZ3KTtcbiAgICB9XG4gICAgQHJldHVybiBjYWxjKHZhcigjeyRweH0pIC8gI3tzdHJpcC11bml0KCRiYXNlKX0gKiAxMDB2dyk7XG4gIH1cblxuICAkdmFsdWU6ICRweDtcbiAgQGlmICh1bml0KCRweCkgIT0gJ3B4Jykge1xuICAgIEB3YXJuICdwY3Z3KCnjga7lvJXmlbDjgatweOS7peWkluOBruWApOOCkuaMh+WumuOBl+OBpuOCguioiOeul+OBp+OBjeOBvuOBm+OCkyc7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQHJldHVybiBjYWxjKCN7c3RyaXAtdW5pdCgkcHgpfSAvICN7c3RyaXAtdW5pdCgkYmFzZSl9ICogMTAwdncpO1xufVxuXG5cblxuQG1peGluIGZzKCRmdHMsICRsaW46IDE0LCRsczowKSB7XG4gICRyZW06IGNhbGMoJGZ0cyAvIDEwKTtcbiAgJGxpblM6IGNhbGMoJGxpbiAvICRmdHMpO1xuICAkbHNtOiBjYWxjKCRscyAqIDAuMDAxKTtcbiAgZm9udC1zaXplOiAjeyRmdHN9cHg7XG4gIGZvbnQtc2l6ZTogI3skcmVtfXJlbTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5TO1xuICBsZXR0ZXItc3BhY2luZzogI3skbHNtfWVtO1xuICBcbn1cbkBtaXhpbiBzbGlja2RvdHMoJHdpZHRoOjZweCwkaGVpZ2h0OjZweCkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogdW5zZXQ7XG4gICAgbWFyZ2luOiAwIHZ3KDJweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgbWFyZ2luOiAwIHBjKDRweCk7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1kZWZhdWx0KTtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICBwYWRkaW5nOiB1bnNldDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY2lyY2xlKTtcbiAgICB9XG4gICAgJi5zbGljay1hY3RpdmUge1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjojNzA3MDcwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZ3JpZCgkY29scywkZ2FwLXZlcnQsJGdhcC1ob3Jpeikge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgkY29scywgMWZyKTtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gIGdyaWQtZ2FwOiAkZ2FwLXZlcnQgJGdhcC1ob3Jpejtcbn1cblxuQG1peGluIGNhcHRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IHZ3KDhweCk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWRhcmspO1xuICBmb250LXNpemU6IHZ3KC0tZnMteHhzKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXNtYWxsKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICBtYXJnaW4tdG9wOiBwYygxNnB4KTtcbiAgfVxuICAmLnNocmluayB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gICYubGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAmLmNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICYucmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5AbWl4aW4gaGVhZGluZyB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1oZWFkaW5nKTtcbn1cbkBtaXhpbiBoZWFkaW5nTWVkaXVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICBmb250LXNpemU6IHZ3KC0tZnMtbCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxNTUlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICBnYXA6IHZ3KDEwcHgpO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgZm9udC1zaXplOiBwYygtLWZzLXh4eGwpO1xuICAgIGdhcDogcGMoMTZweCk7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2dyg4cHgpO1xuICAgIGhlaWdodDogdncoOHB4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDMkU4RkY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zbGF0ZTogMCB2dygxMXB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICB3aWR0aDogcGMoMTBweCk7XG4gICAgICBoZWlnaHQ6IHBjKDEwcHgpO1xuICAgICAgdHJhbnNsYXRlOiAwIHBjKDE4cHgpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IHZ3KC0tbWFyZ2luLXNlY3Rpb24pO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgbWFyZ2luLXRvcDogcGMoLS1tYXJnaW4tc2VjdGlvbi1wYyk7XG4gIH1cbn1cbkBtaXhpbiBtb2R1bGUge1xuICBtYXJnaW4tdG9wOiB2dygtLW1hcmdpbi1tb2R1bGUpO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgbWFyZ2luLXRvcDogcGMoLS1tYXJnaW4tbW9kdWxlLXBjKTtcbiAgfVxufVxuQG1peGluIHBhcnRzIHtcbiAgbWFyZ2luLXRvcDogdncoLS1tYXJnaW4tcGFydHMpO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgbWFyZ2luLXRvcDogcGMoLS1tYXJnaW4tcGFydHMtcGMpO1xuICB9XG59XG5AbWl4aW4gYnV0dG9uKCRzaXplOm1lZGl1bSwgJGNvbG9yOmRlZmF1bHQpIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXG4gICAgXCJiZWZvcmUgdGV4dCBhZnRlclwiO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdncoNHB4KTtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gIHBhZGRpbmc6IHZ3KDhweCkgdncoMTBweCk7XG4gIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICBib3JkZXItcmFkaXVzOiB2dygycHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKSwgYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiB2dygxNDJweCk7XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICBwYWRkaW5nOiBwYygxMnB4KSBwYygxNnB4KTtcbiAgICBtaW4td2lkdGg6IHBjKDIyNHB4KTtcbiAgICBnYXA6IHBjKDRweCk7XG4gICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KTtcbiAgfVxuICAmLnJldmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICAgIH1cbiAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjo6YmVmb3JlIHtcbiAgICBncmlkLWFyZWE6IGJlZm9yZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbiAgICB3aWR0aDogdncoMTRweCk7XG4gICAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgIG1hc2stc2l6ZTogYXV0byB2dygxNHB4KTtcbiAgICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgcm90YXRlOiB6IDE4MGRlZztcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHdpZHRoOiBwYygxNHB4KTtcbiAgICAgIG1hc2stc2l6ZTogYXV0byBwYygxNHB4KTtcbiAgICB9XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgIGdyaWQtYXJlYTogYWZ0ZXI7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFzay1zaXplOiBjb250YWluO1xuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgd2lkdGg6IHZ3KDE0cHgpO1xuICAgIG1hc2staW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93X3JpZ2h0X3Njcm9sbC5zdmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgbWFzay1zaXplOiBhdXRvIHZ3KDE0cHgpO1xuICAgIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHdpZHRoOiBwYygxNHB4KTtcbiAgICAgIG1hc2stc2l6ZTogYXV0byBwYygxNHB4KTtcbiAgICB9XG4gIH1cbiAgLypcbiAgJlt0YXJnZXQ9XCJfYmxhbmtcIl0ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBnYXA6IHZ3KDRweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZ2FwOiBwYyg0cHgpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgIHdpZHRoOiB2dygxNHB4KTtcbiAgICAgIGhlaWdodDogdncoMTRweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHdpZHRoOiBwYygxOHB4KTtcbiAgICAgICAgaGVpZ2h0OiBwYygxOHB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgICAqL1xuICBAaWYgJHNpemUgPT0gcGN2dyB7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBmb250LXNpemU6IHBjdncoLS1mcy1sKTtcbiAgICAgIHBhZGRpbmc6IHBjdncoMTRweCkgcGN2dygyNHB4KSBwY3Z3KDE4cHgpO1xuICAgICAgbWluLXdpZHRoOiBwY3Z3KDEzOHB4KTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1jb3Jwb3JhdGUpO1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgICAgIH1cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBzcGFuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgfVxuICBAaWYgJHNpemUgPT0gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgcGFkZGluZy1ibG9jazogdncoMTZweCkgdncoMTVweCkgO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgZm9udC1zaXplOiBwYygtLWZzLW0pO1xuICAgICAgcGFkZGluZy1ibG9jazogcGMoMjZweCkgcGMoMjVweCk7XG4gICAgfVxuICB9XG4gIEBpZiAkc2l6ZSA9PSB4c21hbGwge1xuICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IHZ3KDEycHgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIGhlaWdodDogcGMoMTJweCk7XG4gICAgfVxuICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwZDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IHZ3KDI0cHgpO1xuICAgICAgaGVpZ2h0OiB2dyg2cHgpO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfdGhpbi5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICB3aWR0aDogcGMoMzJweCk7XG4gICAgICAgIGhlaWdodDogcGMoOHB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICBAaWYgJGNvbG9yID09IHJldmVyc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICAgIH1cbiAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLXdoaXRlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHNpemUgPT0gYXBwbHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlY29uZGFyeSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWNvbmRhcnkpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgbWluLXdpZHRoOiBwYygzMjBweCk7XG4gICAgfVxuICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlY29uZGFyeSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2Vjb25kYXJ5KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cbkBtaXhpbiBhY2NvcmRpb24ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgcGFkZGluZy1ibG9jazogMTNweDtcbiAgQGluY2x1ZGUgbXEoKSB7XG4gICAgcGFkZGluZy1ibG9jazogcGMoMTNweCk7XG4gIH1cbiAgJi5pcy1vcGVuIHtcbiAgICBoMyB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHJvdGF0ZTogeiAtOTBkZWc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc3Atb25seSB7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgaDMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IHVuc2V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzYyB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtc21hbGwpO1xuICAgIHBhZGRpbmctaW5saW5lOiAycHg7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBhdXRvO1xuICAgIGdhcDogMTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2xhdGU6IDAgM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgICAgZ2FwOiBwYygxMHB4KTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiBwYygycHgpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvdy5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHJvdGF0ZTogeiA5MGRlZztcbiAgICAgIHRyYW5zaXRpb246IHJvdGF0ZSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgd2lkdGg6IHBjKDE0cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE0cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZGVzYyB7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdykgdmFyKC0tYmV6aWVyKTtcbiAgICBmb250LXNpemU6IHZ3KC0tZnMteHhzKTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICB9XG4gICAgLmRlc2Npbm5lciB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiAxMnB4IDA7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcGFkZGluZy1ibG9jazogcGMoMTJweCkgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG59XG5cbkBtaXhpbiBtZW51VW5pdCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIHBhZGRpbmctYmxvY2s6IDhweDtcbiAgcGFkZGluZy1pbmxpbmU6IDE0cHggNnB4O1xuICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgZ2FwOiAxMnB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBAaW5jbHVkZSBob3ZlckNvbG9yKHZhcigtLWNvbG9yLWJyYW5kLXNlY29uZGFyeSkpO1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBwYyg4cHgpO1xuICAgIHBhZGRpbmctaW5saW5lOiBwYygxcHgpIHBjKDZweCk7XG4gICAgZm9udC1zaXplOiBwYygtLWZzLXhzKTtcbiAgICBnYXA6IHBjKDEycHgpO1xuICB9XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICY6aG92ZXIge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2xhdGU6IDAgLTNweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5pcy1zaG93IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMTRweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoL2ltYWdlcy9hcnJvdy5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIC8gY29udGFpbjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2xhdGUgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgd2lkdGg6IHBjKDE0cHgpO1xuICAgICAgaGVpZ2h0OiBwYygxNHB4KTtcbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBzaWRlTWVudVRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICBmb250LXNpemU6IHZ3KC0tZnMteHh4cyk7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogNXB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICBmb250LXNpemU6IHBjKC0tZnMteHh4cyk7XG4gICAgZ2FwOiBwYyg1cHgpO1xuICB9XG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHdpZHRoOiBwYygycHgpO1xuICAgICAgaGVpZ2h0OiBwYygycHgpO1xuICAgIH1cbiAgfVxufVxuQG1peGluIHBhZ2VyQnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nLWJsb2NrOiA4cHg7XG4gIHBhZGRpbmctaW5saW5lOiAxNnB4IDhweDtcbiAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZTpcbiAgJ3RleHQgaWNvbicgYXV0b1xuICAvIGF1dG8gMWZyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDRweDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWdvdGhpYyk7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWNvbmRhcnkpO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNsYXRlOiAzcHggMDtcbiAgICAgIH1cbiAgICAgICYucHJldiB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNsYXRlOiAtM3B4IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgbXEoKSB7XG4gICAgcGFkZGluZy1ibG9jazogcGMoMTJweCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHBjKDI0cHgpIHBjKDE2cHgpO1xuICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgfVxuICAmOjpiZWZvcmUge1xuICAgIGdyaWQtYXJlYTogaWNvbjtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3cuc3ZnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNsYXRlIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICB3aWR0aDogcGMoMThweCk7XG4gICAgICBoZWlnaHQ6IHBjKDE4cHgpO1xuICAgIH1cbiAgfVxuICAmLnByZXYge1xuICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgJ2ljb24gdGV4dCcgYXV0b1xuICAgIC8gYXV0byAxZnI7XG4gICAgcGFkZGluZy1pbmxpbmU6IDhweCAxNnB4O1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHBjKDE2cHgpIHBjKDI0cHgpO1xuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcm90YXRlOiAxODBkZWc7XG4gICAgfVxuICB9XG4gICYuYmFjayB7XG4gICAgZ3JpZC10ZW1wbGF0ZTpcbiAgICAnaWNvbiB0ZXh0JyBhdXRvXG4gICAgLyBhdXRvIDFmcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMTJweDtcbiAgICAgIGhlaWdodDogMTJweDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2ljb25fcmV0dXJuLnN2Zyk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgd2lkdGg6IHBjKDE0cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE0cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1peGluIG5vdGVMaXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA4cHg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIG1hcmdpbi10b3A6IHBjKDE2cHgpO1xuICAgIGdhcDogcGMoOHB4KTtcbiAgfVxuICBsaSB7XG4gICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1zZWNvbmRhcnkpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIHBhZGRpbmc6IDVweCA4cHggNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhzKTtcbiAgICAgIHBhZGRpbmc6IHBjKDVweCkgcGMoOHB4KSBwYyg2cHgpO1xuICAgIH1cbiAgICBzdHJvbmcge1xuICAgICAgZm9udC1zaXplOiB2dygtLWZzLW0pO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLW0pO1xuICAgICAgfVxuICAgIH1cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBkZWxpdmVyeUZlZSB7XG4gIGZvbnQtc2l6ZTogdncoLS1mcy14eHMpO1xuICBmb250LXdlaWdodDogNjAwO1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICBtYXJnaW4tdG9wOiBwYygxMnB4KTtcbiAgICBmb250LXNpemU6IHBjKC0tZnMteHMpO1xuICB9XG4gICYuZnJlZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBmb250LXNpemU6IHBjKC0tZnMteHMpO1xuICAgIH1cbiAgfVxuICBzdHJvbmcge1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy1tKTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBzdG9jayB7XG4gIGZvbnQtc2l6ZTogdncoLS1mcy14eHhzKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAycHg7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbWFsbCk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBmb250LXNpemU6IHBjKC0tZnMteHh4cyk7XG4gICAgZ2FwOiBwYygycHgpO1xuICAgIG1hcmdpbi10b3A6IHBjKDRweCk7XG4gIH1cbiAgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IHZ3KC0tZnMteHhzKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFNUYyRjc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctaW5saW5lOiAzcHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4cyk7XG4gICAgICBwYWRkaW5nLWlubGluZTogcGMoM3B4KTtcbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBhZGRDYXJ0QnV0dG9uIHtcbiAgZm9udC1zaXplOiB2dygtLWZzLW0pO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLWlubGluZTogNXB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiA0OHB4O1xuICBmb250LWZhbWlseTogdmFyKC0tZ290aGljKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBAaW5jbHVkZSBob3ZlclNjYWxlKDEsIC45NSk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHBjKDVweCk7XG4gICAgaGVpZ2h0OiBwYyg0OHB4KTtcbiAgfVxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTIzZGVnLCBoc2woMzM0LCA3NSUsIDYwJSkgNS41JSwgaHNsKDI1OCwgODMlLCA2OSUpIDUwLjM4JSwgaHNsKDE5OSwgNzYlLCA1MiUpIDEwMCUpO1xuICB9XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICY6aG92ZXIge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5hZGRDYXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgfVxuICAmLmRldGFpbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2Vjb25kYXJ5KTtcbiAgfVxuICAmLmJhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgfVxuICAmLnNvbGRPdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBwb2ludCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNHB4O1xuICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICBmb250LXNpemU6IHBjKC0tZnMteHMpO1xuICAgIG1hcmdpbi10b3A6IHBjKDhweCk7XG4gICAgZ2FwOiBwYyg0cHgpO1xuICB9XG4gIGRkIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG59XG5AbWl4aW4gcHJpY2VCb3gge1xuICAucHJpY2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgIH1cbiAgICAuYmVmb3JlU2FsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBwYyg4cHgpO1xuICAgICAgfVxuICAgIH1cbiAgICAubGlzdFByaWNlIHtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgIH1cbiAgICAgICYuaXMtc2FsZSB7XG4gICAgICAgIHNwYW4sIGkge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtbCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogdncoMnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14bCk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBwYygycHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBtaXhpbiBhbW91bnRCb3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICY6aG92ZXIge1xuICAgICAgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWNvbmRhcnkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2Fycm93LnN2Zyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zbGF0ZTogMCAtNTAlO1xuICAgIHJvdGF0ZTogOTBkZWc7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgd2lkdGg6IHBjKDE0cHgpO1xuICAgICAgaGVpZ2h0OiBwYygxNHB4KTtcbiAgICAgIHJpZ2h0OiBwYyg0cHgpO1xuICAgIH1cbiAgfVxuICBzZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy1sKTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiBwYygxMnB4KSAwO1xuICAgICAgaGVpZ2h0OiBwYyg0OHB4KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHNvcnQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItdWx0cmFsaWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgcGFkZGluZy1pbmxpbmU6IDE2cHg7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBwYWRkaW5nLWlubGluZTogcGMoMTZweCk7XG4gIH1cbiAgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZ2FwOiAxMnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhzKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHBjKDM4cHgpO1xuICAgICAgfVxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXNlY29uZGFyeSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgIH1cbiAgICAgICYuaXMtYWN0aXZlLCAmLmFjdGl2ZSwgJjpob3ZlciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHBjKDNweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1zZWNvbmRhcnkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLWFjdGl2ZSwgJi5hY3RpdmUge1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtc2Vjb25kYXJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbkBtaXhpbiB0YWdzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IHZ3KDRweCk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBnYXA6IHBjKDRweCk7XG4gIH1cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGhpcmQtd2Vhayk7XG4gICAgcGFkZGluZzogdncoNHB4KSB2dyg4cHgpIHZ3KDVweCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtc21hbGwpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgIHBhZGRpbmc6IHBjKDRweCkgcGMoOHB4KSBwYyg1cHgpO1xuICAgIH1cbiAgfVxufSIsbnVsbCwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG5oZWFkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNsYXRlIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdykgdmFyKC0tYmV6aWVyKTtcbiAgYm9keS5pcy1kb3duICYjaGVhZGVyRGVmYXVsdCB7XG4gICAgdHJhbnNsYXRlOiAwIC0xMjAlO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHRyYW5zbGF0ZTogMCBwY21heCgtOTJweCk7XG4gICAgfVxuICB9XG4gIGJvZHkuaXMtZml4ZWQgJiNoZWFkZXJEZWZhdWx0IHtcbiAgICB0cmFuc2xhdGU6IDAgLTEyMCU7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgdHJhbnNsYXRlOiAwIHBjbWF4KC05MnB4KTtcbiAgICB9XG4gIH1cbiAgJiNoZWFkZXJEZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgfVxuICAmI2hlYWRlclRvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAbWVkaWEgcHJpbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiB2dygtLWhlaWdodC1oZWFkZXIpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpLCBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgcGFkZGluZzogdncoMTJweCkgdncoNjRweCkgdncoMTJweCkgdncoMTJweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgaGVpZ2h0OiBwYygtLWhlaWdodC1oZWFkZXItcGMpO1xuICAgICAgcGFkZGluZy1ibG9jazogdW5zZXQ7XG4gICAgICBwYWRkaW5nLWlubGluZTogcGMoMjhweCk7XG4gICAgfVxuICAgICNsb2dvIHtcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgaG92ZXJPcCgpO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiB2dygxMzJweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDIyMHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxhbmdQQyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHBjKDI4cHgpO1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IHBjKDRweCk7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZ2FwOiBwYyg0cHgpO1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcvJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJDb2xvcih2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmduYXZQQyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdWwge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZ2FwOiBwYygzMHB4KTtcbiAgICAgICAgICBwYWRkaW5nLWlubGluZTogcGMoMjhweCk7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiBwYygxMnB4KTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJDb2xvcih2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRhY3Qge1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBtYXJnaW4tbGVmdDogcGMoMjhweCk7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZ2FwOiBwYyg4cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IHZ3KDM2cHgpO1xuICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvaW1hZ2VzL2ljb25fbWFpbC5zdmcnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciAvIGNvbnRhaW47XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDQ1cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51QnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiB2dygxMHB4KTtcbiAgICAgIHdpZHRoOiB2dyg0OHB4KTtcbiAgICAgIGhlaWdodDogdncoNDhweCk7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB6LWluZGV4OiAxMDAyO1xuICAgICAgQGluY2x1ZGUgbXEoKXtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgICAgICAgd2lkdGg6IHZ3KDIwcHgpO1xuICAgICAgICBoZWlnaHQ6IHZ3KDJweCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogdncoMTRweCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtcGlsbCk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICAgICAgICAmLnRvcCB7XG4gICAgICAgICAgdG9wOiB2dygxN3B4KTtcbiAgICAgICAgfVxuICAgICAgICAmLm1pZGRsZSwgJi5iYWNrIHtcbiAgICAgICAgICB0b3A6IHZ3KDIzcHgpO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAmLmJvdHRvbSB7XG4gICAgICAgICAgdG9wOiB2dygyOXB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAmLnRvcCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmJvdHRvbSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5taWRkbGUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHNjYWxlWCgxKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcikgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5iYWNrIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgc2NhbGVYKDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jZ25hdiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IDA7XG4gIHotaW5kZXg6IDk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB0cmFuc2xhdGU6IDAgLTExMCU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zbGF0ZSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpLCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmctYmxvY2s6IHZ3KDc2cHgpO1xuICBwYWRkaW5nLWlubGluZTogdncoMTJweCk7XG4gIEBpbmNsdWRlIG1xe1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgJi5pcy1hY3RpdmUge1xuICAgIHRyYW5zbGF0ZTogMCAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgbmF2IHtcbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZy1ibG9jazogdncoMThweCk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5sYW5nIHtcbiAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiB2dyg4cHgpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBsaSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMzMuMzMzJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiB2dyg4cHgpO1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJy8nO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgaG92ZXJDb2xvcih2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4jd3JhcHBlcjpoYXMoLmNvbnRlbnRzSW5uZXIgI3NpZGViYXIpICsgZm9vdGVyLFxuYm9keTpoYXMoLnRvcF9jb252ZXJzaW9uKSBmb290ZXIsXG5ib2R5OmhhcygudG9wQkcpIGZvb3RlcixcbmJvZHk6aGFzKC5hYm91dFJlbGF0ZSkgZm9vdGVyLFxuYm9keS50b3BwYWdlIGZvb3RlciAge1xuICBtYXJnaW4tdG9wOiB1bnNldDtcbn1cbmJvZHk6aGFzKC5uYXZpZ2F0aW9uLmJyZWFkY3J1bWJzKSBmb290ZXIge1xuICBAaW5jbHVkZSBtcSB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn1cbmZvb3RlciB7XG4gIG1hcmdpbi10b3A6IHZ3KDQ4cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHBjKDk2cHgpO1xuICB9XG59XG4jZm9vdGVyTmF2IHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAuaW5uZXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMkE0NTc4O1xuICAgIHBhZGRpbmctYmxvY2s6IHZ3KDM2cHgpIHZ3KDI0cHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcGFkZGluZy1ibG9jazogcGMoMTAwcHgpIHBjKDY0cHgpO1xuICAgIH1cbiAgICAuY29ycGluZm8ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogcGMoMzJweCk7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogdncoMjQwcHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDI3NnB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250YWN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMzJweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICB9XG4gICAgICAgIGFkZHJlc3Mge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5mb290bmF2IHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDM2cHgpO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICBnYXA6IHZ3KDM2cHgpIHZ3KDE2cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYyg2NHB4KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcbiAgICAgICAgZ2FwOiBwYygzMnB4KSBwYygxNnB4KTtcbiAgICAgIH1cbiAgICAgIC51bml0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy1ibG9jazogdncoMTBweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDEycHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg0cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICArIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMzJweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBnYXA6IHZ3KDRweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgZ2FwOiBwYyg0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiB2dygxMHB4KTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ibG9jazogcGMoMTJweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNmb290ZXJDb3B5cmlnaHQge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG4gIC5pbm5lciB7XG4gICAgcGFkZGluZy1ibG9jazogdncoMzZweCkgdncoMjRweCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDY0cHgpIHBjKDgwcHgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogcGMoNTRweCk7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IHZ3KDI4cHgpO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGdhcDogcGMoNTRweCk7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZsZXg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgbWFyZ2luLXRvcDogdncoMjRweCk7XG4gICAgICBmb250LXNpemU6IHZ3KC0tZnMteHhzKTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNwYWdldG9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIGJvdHRvbTogdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICByaWdodDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICB9XG4gIGEge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1wYWdldG9wKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1wYWdldG9wKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLXdpZHRoLXBhZ2V0b3AtcGMpIGF1dG87XG4gICAgd2lkdGg6IHZhcigtLXdpZHRoLXBhZ2V0b3AtcGMpO1xuICAgIGhlaWdodDogdmFyKC0td2lkdGgtcGFnZXRvcC1wYyk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYub24ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4jc2lkZWJhclBDIHtcbiAgXG59XG4jc2lkZWJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDA0O1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWShjYWxjKDEwMCUgKyB2dygxNTBweCkpKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsYWNrKTtcbiAgcGFkZGluZy1ibG9jazogdncoMTZweCkgdncoMTZweCk7XG4gIHBhZGRpbmctaW5saW5lOiB2dygxMnB4KTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgQGluY2x1ZGUgbXF7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiB1bnNldDtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IHVuc2V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgI3dyYXBwZXIgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgJi5pcy1zaG93IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbiAgLnNpZGViYXJIZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10aGlyZCk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LXhzbWFsbCk7XG4gICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgcGFkZGluZzogcGMoOXB4KSBwYygxNnB4KSBwYygxMHB4KTtcbiAgICB9XG5cbiAgfVxuICAuZ25hdkNhdGVnb3JpZXNTUCB7XG4gICAgbWFyZ2luLXRvcDogdncoMTJweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgbWFyZ2luLXRvcDogcGMoMTZweCk7XG4gICAgfVxuICB9XG4gIC5iYW5uZXIge1xuICAgIG1hcmdpbi10b3A6IHZ3KDcwcHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDcwcHgpO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogdncoMjJweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDIycHgpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbXF7XG4gICAgICAgIEBpbmNsdWRlIGhvdmVyT3A7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jc2lkZWJhci1tZW51LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiB2dygxNnB4KTtcbiAgbGVmdDogdncoMTZweCk7XG4gIGJhY2tncm91bmQ6IHRvcCAvIHZ3KDQ4cHgpIGF1dG8gbm8tcmVwZWF0IHVybCgvaW1hZ2VzL2ljb25fc2lkZWJhci5zdmcpO1xuICB3aWR0aDogdncoNDhweCk7XG4gIGhlaWdodDogdncoNDhweCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMtY2lyY2xlKTtcbiAgei1pbmRleDogMjAwMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpLCBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gICYuaXMtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICB9XG4gICYuaXMtc2Nyb2xsIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpIC41cztcbiAgfVxuICBAaW5jbHVkZSBtcXtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudCB7XG4gIHN0cm9uZywgYiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1kYXJrKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAudGV4dCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICB9XG4gICAgICAmLm5vdGUge1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHhzKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eHMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmhlYWRpbmcge1xuICAgICAgICBAaW5jbHVkZSBoZWFkaW5nTWVkaXVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoMTZweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcGMoMzJweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgICYubXQtaW1hZ2UtbGVmdCxcbiAgICAgICAgJi5tdC1pbWFnZS1jZW50ZXIsXG4gICAgICAgICYubXQtaW1hZ2UtcmlnaHQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICAgIHVsLCBvbCB7XG4gICAgICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLWwpO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogdncoMTZweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcGMoMTZweCk7XG4gICAgICAgIH1cbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdncoMTJweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcGMoMTJweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwZDtcbiAgICAgICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgb2wge1xuICAgICAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHZ3KDE2cHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHBjKDE2cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wX2J1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBidXR0b247XG4gICAgICAmLmxpbmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiMwNkM3NTU7XG4gICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA2QjQ0RDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmltYWdlLCAubW92aWUsIC5tYXAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAmLnNocmluayB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBob3Zlck9wKC44KTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXB0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGNhcHRpb247XG4gICAgfVxuICAgIC5jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdncoMzJweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBwYyg2NHB4KTtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGltcG9ydCBcInBhZ2V0aXRsZVwiO1xuQGltcG9ydCBcImV4dGVuZGVkdGl0bGVcIjtcbkBpbXBvcnQgXCJzcGVha2VyX2hlYWRpbmdcIjtcbkBpbXBvcnQgXCJjYXRjaGNvcHlcIjtcbkBpbXBvcnQgXCJjYXRjaGNvcHlfaW1hZ2VcIjtcbkBpbXBvcnQgXCJjYXRjaGNvcHlfaW1hZ2VfYmdcIjtcbkBpbXBvcnQgXCJjb252ZXJzaW9uXCI7XG5AaW1wb3J0IFwiaGVhZGluZ1wiO1xuQGltcG9ydCBcInRleHRfbGVhZFwiO1xuQGltcG9ydCBcInRleHRcIjtcbkBpbXBvcnQgXCJ0ZXh0X2ltYWdlXCI7XG5AaW1wb3J0IFwidGV4dF9tYXBcIjtcbkBpbXBvcnQgXCJtYXBcIjtcbkBpbXBvcnQgXCJpbWFnZVwiO1xuQGltcG9ydCBcIm1vdmllXCI7XG5AaW1wb3J0IFwicGFuZWxcIjtcbkBpbXBvcnQgXCJzcGVha2VyXCI7XG5AaW1wb3J0IFwiY29sdW1uXCI7XG5AaW1wb3J0IFwidGFibGVcIjtcbkBpbXBvcnQgXCJidXR0b25cIjtcbkBpbXBvcnQgXCJhbmNob3JcIjtcbkBpbXBvcnQgXCJudW1cIjtcbkBpbXBvcnQgXCJ3eXNpd3lnXCI7XG5AaW1wb3J0IFwiY2F0YWxvZ1wiO1xuQGltcG9ydCBcImZhcVwiO1xuQGltcG9ydCBcIm1lbWJlclwiO1xuQGltcG9ydCBcImlmcmFtZVwiO1xuQGltcG9ydCBcInBhZ2VsaXN0XCI7IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cblxuLmNvbXBvbmVudC50eXBlX3BhZ2V0aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBwYWRkaW5nLWJsb2NrOiB2dygyNHB4KTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmctYmxvY2s6IHBjKDQ4cHgpO1xuICB9XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14bCk7XG4gICAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICAgIHdvcmQtYnJlYWs6IGF1dG8tcGhyYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eHhsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudC50eXBlX2V4dGVuZGVkdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuY2lyY2xlT2JqZWN0IHtcbiAgICB3aWR0aDogdncoMjMwcHgpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiB2dygtMzFweCk7XG4gICAgdHJhbnNsYXRlOiB2dygtNjRweCkgMDtcbiAgICB6LWluZGV4OiAxMTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICB3aWR0aDogcGMoNDcxcHgpO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiBwY21heCgtMTA2cHgpO1xuICAgICAgdHJhbnNsYXRlOiBwY21heCgtODU0cHgpIDA7XG4gICAgfVxuICB9XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICBcIi4gdGV4dCBpbWFnZSBpbWFnZVwiIGF1dG9cbiAgICAgIC8gMWZyIHBjKDQ0MHB4KSBwYyg3NjBweCkgMWZyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIH1cbiAgICAudGV4dCB7XG4gICAgICBwYWRkaW5nLWlubGluZTogdncoMjBweCk7XG4gICAgICBwYWRkaW5nLWJsb2NrOiB2dyg2NHB4KTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDE2cHgpO1xuICAgICAgICBncmlkLWFyZWE6IHRleHQ7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcGMoNDhweCk7XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiB2dyg0OHB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGF1dG8tcGhyYXNlO1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4eHh4eGwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoMSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDRweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1sKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxNnB4KTtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteGwpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGdyaWQtYXJlYTogaW1hZ2U7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAzNzUgLyAxNzM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtaW4taGVpZ2h0OiBwYygzNjZweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudC50eXBlX3NwZWFrZXJfaGVhZGluZyB7XG4gIEBpbmNsdWRlIHNlY3Rpb247XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgLmlubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgIHBhZGRpbmc6IHZ3KDI0cHgpIHZ3KDIwcHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcGFkZGluZzogcGMoMzJweCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgbWFyZ2luLXRvcDogdncoMjhweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBwYyg1NzBweCk7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29weSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIHdpZHRoOiBwYyg1MjZweCk7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14eGwpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTY1JTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4eHhsKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByb2ZpbGUge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygyMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoNjRweCk7XG4gICAgICAgIH1cbiAgICAgICAgLnBvc2l0aW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhsKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhsKTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDEycHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygzNHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmVuIHtcbiAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1tKTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzUlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDEycHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5yZXZlcnNlIHtcbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgbXEodGIpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIH1cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIEBpbmNsdWRlIG1xKHRiKSB7XG4gICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5IHtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAuaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgcGFkZGluZzogdncoMzZweCkgdncoMjRweCk7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KTtcbiAgICAgIHBhZGRpbmc6IHBjKDQ4cHgpIHBjKDMycHgpO1xuICAgICAgZ3JpZC10ZW1wbGF0ZTogXG4gICAgICAgIFwiaGVhZGluZyB0ZXh0XCIgYXV0b1xuICAgICAgICBcImNvcHkgdGV4dFwiIGF1dG9cbiAgICAgICAgXCJidXR0b24gdGV4dFwiIGF1dG9cbiAgICAgICAgLyAxZnIgcGMoNjI0cHgpO1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHBjKDMycHgpO1xuICAgIH1cbiAgICAuaGVhZGluZyB7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBoZWFkaW5nO1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBoZWFkaW5nTWVkaXVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29weSB7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBjb3B5O1xuICAgICAgfVxuICAgICAgaDQge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygzNnB4KTtcbiAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDQ4cHgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eHh4bCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBncmlkLWFyZWE6IGJ1dHRvbjtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg0OHB4KTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b247XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRleHQge1xuICAgICAgbWFyZ2luLXRvcDogdncoMzJweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgIGdyaWQtYXJlYTogdGV4dDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiB2dygzNnB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlIHtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAuaW5uZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgcGFkZGluZzogdncoMzZweCkgdncoMjRweCk7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBwYWRkaW5nOiBwYygzMnB4KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgd2lkdGg6IHBjKDU3MHB4KTtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDMycHgpO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICB3aWR0aDogcGMoNTEycHgpO1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBoZWFkaW5nTWVkaXVtO1xuICAgICAgICArIC5jb3B5IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygzNnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDQ4cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvcHkge1xuICAgICAgICBoNCB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhsKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTgwJTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteHh4eGwpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzYyB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDMycHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzMnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDMycHgpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg2NHB4KTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b247XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5yZXZlcnNlIHtcbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgbXEodGIpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIH1cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIEBpbmNsdWRlIG1xKHRiKSB7XG4gICAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfY2F0Y2hjb3B5X2ltYWdlX2JnIHtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgd2lkdGg6IHZ3KDMwMHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICB3aWR0aDogcGMoNzIwcHgpO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAzIC8gMjtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRleHQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gICAgICBwYWRkaW5nOiB2dygyNHB4KSB2dygyNHB4KSB2dygzMnB4KTtcbiAgICAgIHdpZHRoOiB2dygyODBweCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tdG9wOiB2dygtNDJweCk7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IHBjKDUyMHB4KTtcbiAgICAgICAgcGFkZGluZzogcGMoMzJweCkgcGMoMzJweCkgcGMoNDZweCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtbSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoNHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14bCk7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDRweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb3B5IHtcbiAgICAgICAgaDQge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWxpZ2h0KTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteGwpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteHh4bCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzYyB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDI0cHgpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1saWdodCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDMycHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMjRweCk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDMycHgpO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbihtZWRpdW0scmV2ZXJzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5yZXZlcnNlIHtcbiAgICAuaW5uZXIge1xuICAgICAgLmltYWdlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgICAudGV4dCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfY29udmVyc2lvbiB7XG4gIEBpbmNsdWRlIHNlY3Rpb247XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIHBhZGRpbmctYmxvY2s6IHZ3KDY0cHgpO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgcGFkZGluZy1ibG9jazogcGMoOTZweCk7XG4gIH1cbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICYuY2VudGVyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgJi5yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gICAgJjpoYXMoLmltYWdlKSB7XG4gICAgICAuY29weSB7XG4gICAgICAgIGg0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg0OHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogdncoMTYwcHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgd2lkdGg6IHBjbGFyZ2UoMTc2cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3B5IHtcbiAgICAgIGg0IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14bCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteHh4bCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRlc2Mge1xuICAgICAgbWFyZ2luLXRvcDogdncoMzJweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDMycHgpO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgICAgbWFyZ2luLXRvcDogdncoMzJweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDMycHgpO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCRzaXplOiBhcHBseSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudC50eXBlX2hlYWRpbmcge1xuICBAaW5jbHVkZSBzZWN0aW9uO1xuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgfVxuICAmLmxhcmdlIHtcbiAgICAuaW5uZXIge1xuICAgICAgLmhlYWRpbmcge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoMTJweCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHZ3KDNweCkgc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1sKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gICAgICAgIHdvcmQtYnJlYWs6IGF1dG8tcGhyYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogcGMoM3B4KTtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteHh4eGwpO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBwYygxMnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLm1lZGl1bSB7XG4gICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgbWFyZ2luLXRvcDogcGMoNTZweCk7XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiBwYygxMjBweCk7XG4gICAgICB9XG4gICAgICAuaGVhZGluZyB7XG4gICAgICAgIEBpbmNsdWRlIGhlYWRpbmdNZWRpdW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hbmNob3IgKyAmIHtcbiAgICAvLyBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIC8vIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudC50eXBlX3RleHRfbGVhZCB7XG4gIEBpbmNsdWRlIG1vZHVsZTtcbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgLnRleHQge1xuICAgICAgcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtbCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1sYXJnZSk7XG4gICAgICAgIHdvcmQtYnJlYWs6IGF1dG8tcGhyYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4bCk7XG4gICAgICAgIH1cbiAgICAgICAgJi5sZWZ0IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgICYuY2VudGVyIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAmLnJpZ2h0IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV90ZXh0IHtcbiAgQGluY2x1ZGUgbW9kdWxlO1xuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBwYWRkaW5nLWlubGluZTogcGMoMTIwcHgpO1xuICAgIH1cbiAgfVxuICAmLnNwX2xlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgJi5zcF9jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAmLnNwX3JpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAmLnBjX2xlZnQge1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG4gICYucGNfY2VudGVyIHtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gICYucGNfcmlnaHQge1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV90ZXh0X2ltYWdlIHtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICAudGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiB2dygyOHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICB3aWR0aDogcGMoNTgycHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICB3aWR0aDogcGMoNTcwcHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5yZXZlcnNlIHtcbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfdGV4dF9tYXAge1xuICBAaW5jbHVkZSBtb2R1bGU7XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nLWlubGluZTogcGMoMTIwcHgpO1xuICAgIH1cbiAgICAudGV4dCB7XG4gICAgICBtYXJnaW4tdG9wOiB2dygyNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKHRiKSB7XG4gICAgICAgIHdpZHRoOiBwYygzNDJweCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBoZWFkaW5nTWVkaXVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdncoMjRweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiBwYygzMnB4KTtcbiAgICAgICAgfVxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1hcCB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHdpZHRoOiBwYyg1NzBweCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgfVxuICAgICAgLm1hcF93cmFwX291dGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICYuc2hyaW5rIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLm1hcF93cmFwX2lubmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDU3IC8gMzg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYucmV2ZXJzZSB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV9tYXB7XG4gIEBpbmNsdWRlIG1vZHVsZTtcbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgLm1hcCB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIC5tYXBfd3JhcF9vdXRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiBwYyg3MjBweCk7XG4gICAgICAgIH1cbiAgICAgICAgLm1hcF93cmFwX2lubmVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA1NyAvIDM4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV9pbWFnZV9tdWx0aSB7XG4gIEBpbmNsdWRlIG1vZHVsZTtcbiAgJi5zZXQxIHtcbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgbXEodGIpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc2V0MiB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQoMSx2dygzMnB4KSwwKTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZCgyLHBjKDY0cHgpLHBjKDMycHgpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zZXQzIHtcbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZCgyLHZ3KDMycHgpLHZ3KDE2cHgpKTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZCgzLHBjKDY0cHgpLHBjKDMycHgpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zZXQ0IHtcbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgZ3JpZCgyLHZ3KDMycHgpLHZ3KDE2cHgpKTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZCg0LHBjKDY0cHgpLHBjKDMycHgpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfbW92aWVfbXVsdGkge1xuICBAaW5jbHVkZSBtb2R1bGU7XG4gICYuc2V0MSB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIG1xKHRiKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnNldDIge1xuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBncmlkKDEsdncoMzJweCksMCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoMixwYyg2NHB4KSxwYygzMnB4KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc2V0MyB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQoMix2dygzMnB4KSx2dygxNnB4KSk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoMyxwYyg2NHB4KSxwYygzMnB4KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc2V0NCB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQoMix2dygzMnB4KSx2dygxNnB4KSk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQoNCxwYyg2NHB4KSxwYygzMnB4KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIC5tb3ZpZSB7XG4gICAgICAubW92aWVfd3JhcF9vdXRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAmLnNocmluayB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5tb3ZpZV93cmFwX2lubmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfcGFuZWwge1xuICBAaW5jbHVkZSBzZWN0aW9uO1xuICBAaW5jbHVkZSBjb250YWluZXI7XG4gICYuc2V0MiB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zZXQzIHtcbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnNldDQge1xuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgIGdhcDogcGMoNDBweCkgcGMoNDBweCk7XG4gICAgICB9XG4gICAgICAudW5pdCB7XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMzJweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDMycHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaW5uZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgxLCBhdXRvKTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBnYXA6IHBjKDYwcHgpIHBjKDYwcHgpO1xuICAgIH1cbiAgICAudW5pdCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgICAgZ3JpZC1yb3c6IHNwYW4gNDtcbiAgICAgIGdhcDogMDtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDM2cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIGEsIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGhvdmVyT3A7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMjRweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg0OHB4KTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLWwpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4bCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kZXNjIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMjRweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzMnB4KTtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygyNHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDQ4cHgpO1xuICAgICAgICB9XG4gICAgICAgIGEsIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV9zcGVha2VyIHtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICAuc3BlYWtlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgICAgIHBhZGRpbmc6IHZ3KDIwcHgpIHZ3KDE2cHgpIHZ3KDI0cHgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogcGMoMzIwcHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiBwYyg4cHgpO1xuICAgICAgICBwYWRkaW5nOiBwYygyNHB4KSBwYygyMHB4KSBwYygzMnB4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KTtcbiAgICAgICAgJi5zdGF0aWMge1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgQGluY2x1ZGUgaGVhZGluZ01lZGl1bTtcbiAgICAgIH1cbiAgICAgIC51bml0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygyMHB4KTtcbiAgICAgICAgfVxuICAgICAgICArIC51bml0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygyNHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzMnB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnBob3RvIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdncoMjQwcHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IHBjKDI0MHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDEwcHgpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxNnB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZHQge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1tKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTc1JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhsKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgZGQge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZW4pO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoNHB4KTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLW0pO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTI1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByb2ZpbGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDEwcHgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTcwJTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDE2cHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuZW4ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLW51bSk7XG4gICAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5LWRhcmspO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2NiU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDI4cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogcGMoNzkycHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICAgIC5mbG9hdF9pbWFnZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoMjRweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcGMoMjRweCk7XG4gICAgICAgIH1cbiAgICAgICAgZmlndXJlIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgd2lkdGg6IHZ3KDE2MHB4KTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZ3KDE2cHgpO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiB2dyg4cHgpO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2dyg4cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHsgXG4gICAgICAgICAgICB3aWR0aDogcGMoMzIwcHgpO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBwYygxNnB4KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBwYyg4cHgpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDhweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoNnB4KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5LWRhcmspO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTY2JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoOHB4KTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb21wb25lbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDE2cHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoMjBweCk7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDI0cHgpO1xuICAgICAgICB9XG4gICAgICAgIC5jb250YWluZXIsIC5pbm5lciB7XG4gICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIC50ZXh0IHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnR5cGVfdGFibGUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfY29sdW1uIHtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgLmNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcGMoMzYwcHgpIHBjKDU5NHB4KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyO1xuICAgICAgICBwYWRkaW5nLWlubGluZTogcGMoMTIwcHgpO1xuICAgICAgfVxuICAgICAgJi50ZXh0b25seSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoMzZweCk7XG4gICAgICAgIEBpbmNsdWRlIGhlYWRpbmdNZWRpdW07XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcGMoMjRweCk7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAzO1xuICAgICAgICAgIGdyaWQtcm93OiAxIC8gMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBob3RvIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDIwcHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAyO1xuICAgICAgICAgIGdyaWQtcm93OiAxIC8gNDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBwYygzNnB4KTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgIH1cbiAgICAgICAgLmNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygyMHB4KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pbWFnZV9zcCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaW1hZ2VfcGMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBjYXB0aW9uO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaDQge1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiB2dygyMHB4KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktZGFyayk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIDM7XG4gICAgICAgICAgZ3JpZC1yb3c6IDIgLyAzO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14bCk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcGMoMjBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50ZXh0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMiAvIDM7XG4gICAgICAgICAgZ3JpZC1yb3c6IDMgLyA0O1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIC5wX2J1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBtYXJnaW4taW5saW5lOiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5yZXZlcnNlIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIC5pbm5lciB7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHBjKDU5NHB4KSBwYygzNjBweCk7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyO1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDI7XG4gICAgICAgICAgICBncmlkLXJvdzogMSAvIDI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5waG90byB7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyAzO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDEgLyA0O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcGMoMzZweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGg0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDI7XG4gICAgICAgICAgICBncmlkLXJvdzogMiAvIDM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDI7XG4gICAgICAgICAgICBncmlkLXJvdzogMyAvIDQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYudmVydGljYWwge1xuICAgIC5jb250YWluZXIge1xuICAgICAgLmlubmVyIHtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzNnB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnBob3RvIHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBwYygzNnB4KSAwIHBjKDIwcHgpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiBwYyg2MHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNoaWxkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnZlcnRpY2FsX3JldmVyc2Uge1xuICAgIC5jb250YWluZXIge1xuICAgICAgLmlubmVyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMDAlO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byBhdXRvIGF1dG87XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBncmlkLXJvdzogMSAvIDI7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgaDQge1xuICAgICAgICAgIGdyaWQtcm93OiAyIC8gMztcbiAgICAgICAgICBncmlkLWNvbHVtbjogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAucGhvdG8ge1xuICAgICAgICAgIGdyaWQtcm93OiA0IC8gNTtcbiAgICAgICAgICBncmlkLWNvbHVtbjogYXV0bztcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXh4bGFyZ2UpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jaGlsZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGV4dCB7XG4gICAgICAgICAgZ3JpZC1yb3c6IDMgLyA0O1xuICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHBjKDU2cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV90YWJsZSB7XG4gIEBpbmNsdWRlIG1vZHVsZTtcbiAgJjpoYXMoLnR5cGUwMSwgLnR5cGUwMiwgLnR5cGVfMDMsIC50eXBlXzA2LCAudHlwZV8wNykge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgIHBhZGRpbmctYmxvY2s6IHZ3KDI1cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDQ2cHgpO1xuICAgIH1cbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAudGFibGVfc2V0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgJi50eXBlXzAxIHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnR5cGVfMDMsICYudHlwZV8wNCB7XG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gICAgICAgICAgdHIge1xuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogdncoOHB4KTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcGMoMTJweCkgcGMoMzJweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctbGlnaHQpO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWxpZ2h0KTtcbiAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYudHlwZV8wNCB7XG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi50eXBlXzA1IHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYudHlwZV8wNiB7XG4gICAgICAgIHRhYmxlIHtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpe1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1saWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZChldmVuKXtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdncoMTZweCk7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHBjKDMycHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1saWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnR5cGVfMDcge1xuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgdHIge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQob2RkKXtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctbGlnaHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoZXZlbil7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZ3KDE2cHgpO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBwYygzMnB4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jb21wYWN0IHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgIHRoLHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZ3KDRweCkgdncoOHB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbWFsbCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDRweCkgcGMoOHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuZml4ZWQge1xuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuZml4X2xlZnQge1xuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgdGgge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0YWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBjYXB0aW9uIHtcbiAgICAgICAgICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1zbWFsbCk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoOHB4KTtcbiAgICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg4cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0ciB7XG4gICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1tZWRpdW0pO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgcGFkZGluZy1ibG9jazogdncoMTBweCk7XG4gICAgICAgICAgbWluLXdpZHRoOiB2dygxMDhweCk7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgbWluLXdpZHRoOiBwYygxODRweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiBwYygxNnB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzclO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5jZW50ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLnJpZ2h0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLm1pbiB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wX2J1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMTZweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICAgICAgdGggKyB0ZCwgdGQgKyB0ZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiB2dygzMnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHBjKDMycHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudGFibGVfb3ZlcmZsb3cge1xuICAgICAgcGFkZGluZy10b3A6IHZ3KDMwcHgpO1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBwYygzMHB4KTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IHZ3KDIwcHgpIGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3N3aXBlLnN2Zyk7XG4gICAgICAgIHdpZHRoOiB2dygyMHB4KTtcbiAgICAgICAgaGVpZ2h0OiB2dygyMnB4KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogcGMoMjBweCkgYXV0bztcbiAgICAgICAgICB3aWR0aDogcGMoMjBweCk7XG4gICAgICAgICAgaGVpZ2h0OiBwYygyMnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV9idXR0b24ge1xuICBAaW5jbHVkZSBtb2R1bGU7XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDAgY2FsYyh2dygxNnB4KSAvIDIpIHZ3KDE2cHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWFyZ2luOiAwIGNhbGMocGMoMTZweCkgLyAyKSBwYygxNnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV9hbmNob3Ige1xuICBAaW5jbHVkZSBtb2R1bGU7XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuICAgICAgZ2FwOiB2dygyNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgZ2FwOiBwYygyNHB4KTtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0bztcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGdhcDogdncoNHB4KTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgICAgcGFkZGluZzogdncoOHB4KSB2dygyNHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHBjKDhweCkgcGMoMTJweCk7XG4gICAgICAgICAgICBnYXA6IHBjKDRweCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLWwpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEzNSU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogdncoMjRweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHZ3KDI0cHgpO1xuICAgICAgICAgICAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfYW5jaG9yLnN2Zyk7XG4gICAgICAgICAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICB3aWR0aDogcGMoMjRweCk7XG4gICAgICAgICAgICAgIGhlaWdodDogcGMoMjRweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudC50eXBlX251bSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbWVkaXVtKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbGFyZ2UpO1xuICB9XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMkYzRjg7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gICYuc2V0MiB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZ2FwOiA4MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnNldDMge1xuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGdhcDogMzVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zZXQzLCAmLnNldDQge1xuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGdhcDogMjBweDtcbiAgICAgIH1cbiAgICAgIC51bml0IHtcbiAgICAgICAgLmNpcmNsZSB7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgZGwge1xuICAgICAgICAgICAgZHQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgdG9wOiA0MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMzVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgdG9wOiA4MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGVtIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgOHB4IDZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cbiAgICAudW5pdCB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgfVxuICAgICAgLmNpcmNsZSB7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZyk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDMyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGRsIHtcbiAgICAgICAgICBkdCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmcygxOCwyNik7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDcwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgICAgZGQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMTBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICB0b3A6IDEyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZW0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmcyg3MCw3MCk7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZnMoODAsODApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZnMoMjQsMjQpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kZXNjIHtcbiAgICAgICAgQGluY2x1ZGUgZnMoMTMsMjIpO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICBAaW5jbHVkZSBmcygxNSwyNCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfd3lzaXd5ZyB7XG4gIEBpbmNsdWRlIHNlY3Rpb247XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudC50eXBlX2NhdGFsb2cge1xuICBAaW5jbHVkZSBzZWN0aW9uO1xuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAubGlzdCB7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgZ2FwOiBwYyg0OHB4KSBwYygzNnB4KTtcbiAgICAgICAgbWFyZ2luLXRvcDogcGMoNDhweCk7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudW5pdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgIHBhZGRpbmc6IHZ3KDEycHgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygyOHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgcGFkZGluZzogcGMoMjBweCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogc3ViZ3JpZDtcbiAgICAgICAgICBncmlkLXJvdzogc3BhbiAyO1xuICAgICAgICAgIGdhcDogcGMoMXB4KSBwYygxcHgpO1xuICAgICAgICB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tYWluIHtcbiAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJPcDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5kZXNjIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDhweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMTJweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteGwpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTYwJTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhsKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBob3Zlck9wO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDZweCk7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5LWRhcmspO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtbSk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMDAlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoOHB4KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5mb3JtYXQge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tbnVtKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhzKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHZ3KDhweCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1ibG9jazogcGMoOHB4KTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyT3A7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogdncoMjBweCk7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHZ3KDhweCk7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHBjKDIwcHgpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHBjKDhweCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3VtbWFyeSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoNnB4KTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNjYlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDhweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteHMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5jb21wb25lbnQudHlwZV9mYXEge1xuICBAaW5jbHVkZSBtb2R1bGU7XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIC51bml0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2dygyNHB4KSB2dygxNnB4KTtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDIwcHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICBwYWRkaW5nLWlubGluZTogcGMoMjRweCk7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDIwcHgpO1xuICAgICAgfVxuICAgICAgLnEge1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiB2dygxNnB4KTtcbiAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jayBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gICAgICAgIGdhcDogdncoMjRweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBwYWRkaW5nLWJsb2NrOiBwYygyOHB4KTtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGdhcDogcGMoMjRweCk7XG4gICAgICAgIH1cbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHJvdGF0ZTogeiAxODBkZWc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19ib3R0b20uc3ZnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgd2lkdGg6IHZ3KDMwcHgpO1xuICAgICAgICAgIGhlaWdodDogMWxoO1xuICAgICAgICAgIHRyYW5zaXRpb246IHJvdGF0ZSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDQwcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJ1EnO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1lbik7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4eGwpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxbGg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICB0cmFuc2xhdGU6IDAgdncoLTJweCk7XG4gICAgICAgICAgd2lkdGg6IDFlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4eGwpO1xuICAgICAgICAgICAgdHJhbnNsYXRlOiAwIHBjbWF4KC0ycHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmEge1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gICAgICAgIGdhcDogdncoMjRweCk7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgZ2FwOiBwYygyNHB4KTtcbiAgICAgICAgfVxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnQSc7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHh4bCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDFsaDtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICAgIHRyYW5zbGF0ZTogMCB2dygtMXB4KTtcbiAgICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteHh4bCk7XG4gICAgICAgICAgICB0cmFuc2xhdGU6IDAgcGNtYXgoLTFweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gdncoMTZweCkgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byBwYygxNnB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLm10LWltYWdlLXJpZ2h0IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICBtYXJnaW46IDAgMCBwYygzMnB4KSBwYygzMnB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLm10LWltYWdlLWxlZnQge1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwIHBjKDMycHgpIHBjKDMycHgpIDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDE2cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBwYygyNHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uY29tcG9uZW50LnR5cGVfbWVtYmVyIHtcbiAgQGluY2x1ZGUgbW9kdWxlO1xuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMSwgYXV0byk7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ2FwOiBwYyg0OHB4KSBwYygzNnB4KTtcbiAgICB9XG4gICAgLnVuaXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICBwYWRkaW5nOiB2dygxMnB4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgICBtYXJnaW4tdG9wOiB2dygyOHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogc3ViZ3JpZDtcbiAgICAgICAgZ3JpZC1yb3c6IHNwYW4gNDtcbiAgICAgICAgZ2FwOiBwYygxcHgpIHBjKDFweCk7XG4gICAgICAgIHBhZGRpbmc6IHBjKDIwcHgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBob3RvIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmluZm8ge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDI0cHgpO1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1sKTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMTAlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eGwpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXZpdmlkKTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1lbik7XG4gICAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHhzKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDFweCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wb3NpdGlvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTIzJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxMHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxNnB4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZmlsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxMHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxcHgpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0MCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzYyB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDEwcHgpO1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygxNnB4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdW5zZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzMnB4KTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLmNvbXBvbmVudC50eXBlX2lmcmFtZXtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGlmcmFtZSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IHBjKDEzMHB4KTtcbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBwYWRkaW5nLWJsb2NrOiBwYygxMnB4KTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGxpIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtZGFyayk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiB2dygxMnB4KTtcbiAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG87XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogdncoMTJweCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiBwYygxMnB4KTtcbiAgICAgICAgICBnYXA6IHBjKDEycHgpO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBwYyg2cHgpO1xuICAgICAgICAgIGhlaWdodDogcGMoMTJweCk7XG4gICAgICAgICAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfYnJlYWRjcnVtYi5zdmcpO1xuICAgICAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbWVkaXVtKTtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtZGFyayk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5uYXZpZ2F0aW9uLnBhZ2VuYXRlIHtcbiAgbWFyZ2luLXRvcDogdncoMjhweCk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBtYXJnaW4tdG9wOiBwYyg2NHB4KTtcbiAgfVxuICAubV9uZXdzbGlzdCArICYge1xuICAgIC5pbm5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogdW5zZXQ7XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBhLCBzcGFuIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrIGdyaWQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gICAgICBtaW4td2lkdGg6IHZ3KDI4cHgpO1xuICAgICAgaGVpZ2h0OiB2dygyOHB4KTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2dyg0cHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLW51bSk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgbWluLXdpZHRoOiBwYyg0MHB4KTtcbiAgICAgICAgaGVpZ2h0OiBwYyg0MHB4KTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHBjKDRweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiB2dyg2cHgpO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0cmFuc2xhdGU6IDAgdncoLTFweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICB3aWR0aDogcGMoOXB4KTtcbiAgICAgICAgICB0cmFuc2xhdGU6IDAgMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jdXJyZW50LCAmLmN1cnJlbnRfcGFnZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWRhcmspO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgICAgJi5wcmV2aW91c3Bvc3RzbGluaywgJi5uZXh0cG9zdHNsaW5rLCAmLmxpbmtfYmVmb3JlLCAmLmxpbmtfbmV4dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYucHJldmlvdXNwb3N0c2xpbmssICYubGlua19iZWZvcmUge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIHdvcmRwcmVzc1xuICAgIC53cC1wYWdlbmF2aSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhLCBzcGFuIHtcbiAgICAgICAgbWFyZ2luOiAwIHZ3KDRweCkgdncoMTBweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW46IDAgdncoNHB4KSB2dygxNnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyBtdFxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogdncoMTBweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGdhcDogcGMoMTJweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLm5hdmlnYXRpb24ucGFnZW5hdGVfZGV0YWlsIHtcbiAgcGFkZGluZy1ibG9jazogdncoNTZweCk7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmctYmxvY2s6IHBjKDY0cHgpO1xuICB9XG4gIC5pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICBcInByZXYgYmFjayBuZXh0XCIgYXV0b1xuICAgICAgLyAxZnIgYXV0byAxZnI7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZ3JpZC10ZW1wbGF0ZTpcbiAgICAgICAgXCJwcmV2IGJhY2sgbmV4dFwiIGF1dG9cbiAgICAgICAgLyBhdXRvIGF1dG8gYXV0bztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAmLm5leHQsICYucHJldiB7XG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbihtZWRpdW0scmV2ZXJzZSk7XG4gICAgICAgICAgaGVpZ2h0OiB2dyg0MHB4KTtcbiAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgICBwYWRkaW5nLWlubGluZTogdncoMTZweCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWluLXdpZHRoOiBwYygxMDBweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnByZXYge1xuICAgICAgICBncmlkLWFyZWE6IHByZXY7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgYSB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1kYXJrKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDFweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYubmV4dCB7XG4gICAgICAgIGdyaWQtYXJlYTogbmV4dDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIGEge1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICB3aWR0aDogdncoMXB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmJhY2sge1xuICAgICAgICBncmlkLWFyZWE6IGJhY2s7XG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcbiAgICAgICAgICBoZWlnaHQ6IHZ3KDQwcHgpO1xuICAgICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogdncoMXB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5uYXZpZ2F0aW9uLmxvY2FsbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICY6aGFzKGxpKSB7XG4gICAgcGFkZGluZzogdncoMjBweCkgdncoMzJweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgcGFkZGluZzogcGMoMjRweCkgcGMoMzJweCk7XG4gICAgfVxuICB9XG4gIC5pbm5lciB7XG4gICAgLm92ZXJmbG93IHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcGFkZGluZzogdW5zZXQ7XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mcy14cyk7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLW0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmFjdGl2ZSwgJi5jdXJyZW50X3BhZ2VfaXRlbSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctbGlnaHQpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1saWdodCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllciksIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZ3KDZweCkgdncoMjBweCk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllcik7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IHBjKDhweCkgcGMoMzhweCk7XG4gICAgICAgICAgICAgIG1pbi13aWR0aDogcGMoMjIwcHgpO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLm5hdmlnYXRpb24ubG9jYWxuYXZfc3ViIHtcbiAgQGluY2x1ZGUgc2VjdGlvbjtcbiAgLm5hdmlnYXRpb24uYXJjaGl2ZW5hdiArICYge1xuICAgIEBpbmNsdWRlIG1vZHVsZTtcbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIGdhcDogdncoOHB4KSB2dygxNXB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiB1bnNldDtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcGMoMTJweCk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcGMoMTJweCk7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUsJi5jdXJyZW50X3BhZ2VfaXRlbSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgICAgIHBhZGRpbmc6IHZ3KDhweCkgdncoMTZweCk7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoMnB4KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICAgICAgICBwYWRkaW5nOiBwYyg0cHgpIHBjKDE2cHgpO1xuICAgICAgICAgICAgbWluLXdpZHRoOiBwYygxNjBweCk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5uYXZpZ2F0aW9uLmxvY2FsbmF2X2JvdHRvbSB7XG4gIEBpbmNsdWRlIHNlY3Rpb247XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgJjpub3QoOmhhcyhsaSkpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pbm5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgcGFkZGluZzogdncoMjBweCkgdncoMTZweCkgdncoMjhweCk7XG4gICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBwYWRkaW5nOiBwYygzNnB4KSBwYygxMTBweCkgcGMoNDhweCk7XG4gICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdncoMTZweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBwYygxNnB4KTtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtbSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTYwJTtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZ2FwOiB2dyg2cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14bCk7XG4gICAgICAgICAgICBnYXA6IHBjKDhweCk7XG5cbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgICB3aWR0aDogdncoMTRweCk7XG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgICAgICAgICAgIG1hc2stc2l6ZTogYXV0byB2dygxNHB4KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG1hc2stcG9zaXRpb24gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICB3aWR0aDogcGMoMTRweCk7XG4gICAgICAgICAgICAgIG1hc2stc2l6ZTogYXV0byBwYygxNHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgfVxuICAgICAgLypcbiAgICAgIC5hbGwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE3cHg7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBkO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQgdmFyKC0tYXJyb3ctYnV0dG9uKTtcbiAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgKi9cbiAgICB9XG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiB2dygxMnB4KSB2dygxNnB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgZ2FwOiBwYygxMnB4KSBwYygxM3B4KTtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbWVkaXVtKTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdncoNHB4KTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTYwJTtcbiAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZ2FwOiB2dyg2cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgICAgICAgIGdhcDogcGMoNnB4KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDRweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGp1c3RpZnktc2VsZjogZW5kO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xuICAgICAgICAgICAgd2lkdGg6IHZ3KDEwcHgpO1xuICAgICAgICAgICAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgICAgICBtYXNrLXNpemU6IGF1dG8gdncoMTBweCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHBjKDEwcHgpO1xuICAgICAgICAgICAgICBtYXNrLXNpemU6IGF1dG8gcGMoMTBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5uYXZpZ2F0aW9uLmFyY2hpdmVuYXYge1xuICBAaW5jbHVkZSBzZWN0aW9uO1xuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAub3ZlcmZsb3cge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICBwYWRkaW5nOiAwIDAgdncoMTBweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICBwYWRkaW5nOiB1bnNldDtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDNweDtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiB2dyg2cHgpO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcGMoOHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogdW5zZXQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYWN0aXZlLCAmLmN1cnJlbnRfcGFnZV9pdGVtIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZ3KDRweCkgdncoMjRweCk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLW51bSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIGJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1mYXN0KSB2YXIoLS1iZXppZXIpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4MCU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2dygycHgpIHZ3KDJweCkgMCAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBwYWRkaW5nOiBwYyg4cHgpIHBjKDYwcHgpO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpIHBjKDRweCkgMCAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChhbnktaG92ZXI6IGhvdmVyKSB7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4ucE5ld3NTZXQge1xuICBwYWRkaW5nLWJsb2NrOiB2dygxNnB4KTtcbiAgcGFkZGluZy1pbmxpbmU6IHZ3KDE2cHgpIHZ3KDQwcHgpO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlOlxuICAgIFwiZGF0ZSBjYXRcIiBhdXRvXG4gICAgXCJ0aXRsZSB0aXRsZVwiIGF1dG9cbiAgICAvIGF1dG8gMWZyO1xuICBjb2x1bW4tZ2FwOiB2dyg4cHgpO1xuICByb3ctZ2FwOiB2dyg4cHgpO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0VBRUVGNztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICBncmlkLXRlbXBsYXRlOlxuICAgICAgXCJkYXRlIGNhdCB0aXRsZVwiIGF1dG9cbiAgICAgIC8gYXV0byBhdXRvIDFmcjtcbiAgICBjb2x1bW4tZ2FwOiBwYygxMnB4KTtcbiAgICByb3ctZ2FwOiAwO1xuICAgIGFsaWduLWl0ZW1zOiBzdGFydDtcbiAgICBwYWRkaW5nLWJsb2NrOiBwYygyMHB4KTtcbiAgICBwYWRkaW5nLWlubGluZTogcGMoMTZweCkgcGMoNDBweCk7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogdncoMTRweCk7XG4gICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgICBtYXNrLXNpemU6IGNvbnRhaW47XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgbWFzay1zaXplOiBhdXRvIHZ3KDE0cHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICAgIHJpZ2h0OiB2dygxNnB4KTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2xhdGU6IDAgLTUwJTtcbiAgICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICB3aWR0aDogcGMoMTRweCk7XG4gICAgICBoZWlnaHQ6IHBjKDE0cHgpO1xuICAgICAgcmlnaHQ6IHBjKDE2cHgpO1xuICAgICAgbWFzay1zaXplOiBhdXRvIHBjKDE0cHgpO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5kYXRlIHtcbiAgICBncmlkLWFyZWE6IGRhdGU7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgfVxuICAgIC5wTmV3c0RhdGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICBmb250LWZhbWlseTogdmFyKC0tbnVtKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZ3KDRweCk7XG4gICAgICBsaW5lLWhlaWdodDogMTQ1JTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiBwYyg0cHgpO1xuICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jYXQge1xuICAgIGdyaWQtYXJlYTogY2F0O1xuICAgIC5wTmV3c0NhdGVnb3J5IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14eHMpO1xuICAgICAgcGFkZGluZzogdncoNHB4KSB2dyg4cHgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogdncoMnB4KTtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNDUlO1xuICAgICAgbWluLXdpZHRoOiB2dygxMDRweCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgICAgICBwYWRkaW5nOiBwYyg0cHgpIHBjKDhweCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDJweCk7XG4gICAgICAgIG1pbi13aWR0aDogcGMoMTE2cHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBncmlkLWFyZWE6IHRpdGxlO1xuICAgIC5wTmV3c1RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE2Ni42NjclO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE3NyU7XG4gICAgICAgIHRyYW5zbGF0ZTogMCAtMXB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIGZsZXg6IDE7XG4gICAgfVxuICB9XG5cbiAgXG59XG5cblxuXG4ubmF2aWdhdGlvbi5uZXdzbGlzdCB7XG4gIEBpbmNsdWRlIHNlY3Rpb247XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIHVsIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoOHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDhweCk7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2F0IC5wTmV3c0NhdGVnb3J5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLm5hdmlnYXRpb24uYXJ0aWNsZWxpc3Qge1xuICBAaW5jbHVkZSBzZWN0aW9uO1xuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAubGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS14eGxhcmdlKTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgZ2FwOiBwYygyNHB4KTtcbiAgICAgIH1cbiAgICAgIC51bml0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICBwYWRkaW5nOiB2dygxMnB4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZTpcbiAgICAgICAgXCJpbWFnZSBkZXNjXCIgYXV0b1xuICAgICAgICBcInN1bW1hcnkgc3VtbWFyeVwiIGF1dG9cbiAgICAgICAgLyAxZnIgMWZyO1xuICAgICAgICBnYXA6IHZ3KDEwcHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgZ2FwOiBwYygyMHB4KTtcbiAgICAgICAgICBwYWRkaW5nOiBwYygyMHB4KTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICAgICAgXCJpbWFnZSBkZXNjXCIgYXV0b1xuICAgICAgICAgIFwic3VtbWFyeSBzdW1tYXJ5XCIgYXV0b1xuICAgICAgICAgIC8gcGMoMjQwcHgpIDFmcjtcbiAgICAgICAgICBnYXA6IHBjKDIwcHgpIHBjKDE0cHgpO1xuICAgICAgICB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICB9XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgZ3JpZC1hcmVhOiBpbWFnZTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICB3aWR0aDogcGMoMjQwcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJPcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMyAvIDI7XG4gICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzYyB7XG4gICAgICAgICAgZ3JpZC1hcmVhOiBkZXNjO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1udW0pO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2MCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhdCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg2cHgpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogdncoNHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoOHB4KTtcbiAgICAgICAgICAgICAgZ2FwOiBwYyg0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICAgICAgICBwYWRkaW5nOiB2dyg0cHgpIHZ3KDZweCk7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcGMoMXB4KSBwYygxNXB4KTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2dyg2cHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg4cHgpO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMteGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zdW1tYXJ5IHtcbiAgICAgICAgICBncmlkLWFyZWE6IHN1bW1hcnk7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTYwJTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1ncmF5LWRhcmspO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5uYXZpZ2F0aW9uLm1haW5jYXRuYXYge1xuICAvLyBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLXhzbWFsbCk7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3ViKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIC8vIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3Atc21hbGwpO1xuICB9XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIC5vdmVyZmxvdyB7XG4gICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS14bGFyZ2UpIHZhcigtLXNwYWNlLXNtYWxsKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJPcDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICYuc2xpY2staW5pdGlhbGl6ZWQge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiB1bnNldDtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICAmLmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kO1xuICB9XG59XG5cbi5zbGljay1zbGlkZXIge1xuICAuc2xpY2stdHJhY2ssIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnJztcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnJztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbn1cblxuW2Rpcj0ncnRsJ10gLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc2xpY2stc2xpZGUge1xuICBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuXG4uc3RhdGljLnNsaWRlciB7XG4gIGhlYWRlciArICYge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWhlaWdodC1oZWFkZXIpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0taGVpZ2h0LWhlYWRlci1wYykgKyA1M3B4KTtcbiAgICB9XG4gIH1cbiAgLnVuaXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogdmFyKC0taGVpZ2h0LXNsaWRlci10YWJsZXQpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcShwYykge1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oZWlnaHQtc2xpZGVyLXBjKTtcbiAgICAgIGFzcGVjdC1yYXRpbzogMiAvIDE7XG4gICAgfVxuICAgID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLWxhcmdlKSB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDc1LDc1LDc1LC44NSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IHZhcigtLXdpZHRoLXNsaWRlci10ZXh0KTtcbiAgICAgICAgbGVmdDogdmFyKC0tcGFkZGluZy1zbGlkZXItcGMpO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgIH1cbiAgICAgICYucmlnaHQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IHZhcigtLXBhZGRpbmctc2xpZGVyLXBjKTtcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuY2VudGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zbGlkZXItdGV4dCk7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRleHRpbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWhlYWRpbmcpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGxhcmdlKTtcbiAgICAgICAgfVxuICAgICAgICArIHAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXhzbWFsbCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14c21hbGwpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWVkaXVtKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbGFyZ2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmJsYWNrIHtcbiAgICAgICAgaDEsIHAge1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW46IHZhcigtLXNwYWNlLXNtYWxsKSAwIDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14c21hbGwpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXNtYWxsKSB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMteHNtYWxsKTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZWRpdW0pIHZhcigtLXNwYWNlLXh4bGFyZ2UpO1xuICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJPcDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oZWlnaHQtc2xpZGVyKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQtZmFzdCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogdmFyKC0taGVpZ2h0LXNsaWRlci10YWJsZXQpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbXEocGMpIHtcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS1oZWlnaHQtc2xpZGVyLXBjKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zbGljay1hY3RpdmU6OmJlZm9yZSwgJi5pcy1hY3RpdmUtbmV4dDo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB6LWluZGV4OiAwO1xuICAgIH1cbiAgICAuYmcucGMge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5iZy5zcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi53aXRoX2JnIHtcbiAgICAgIC50ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zbGlkZXItdGV4dC1ib3gpO1xuICAgICAgICB9XG4gICAgICAgIC50ZXh0aW5uZXIge1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNzUsNzUsNzUsLjg1KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhsYXJnZSkgdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICBsZWZ0OiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICBsZWZ0OiB2YXIoLS1zcGFjZS14bGFyZ2UpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgQGluY2x1ZGUgaG92ZXJPcCguNyk7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogdmFyKC0td2lkdGgtc2xpZGVyLWFycm93KTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHdpZHRoOiB2YXIoLS13aWR0aC1zbGlkZXItYXJyb3ctcGMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLW5leHQge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIG1xKHBjKSB7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLWRvdHMge1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2UtbGFyZ2UpIDAgdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICBAaW5jbHVkZSBzbGlja2RvdHMoNnB4LDZweCk7XG5cbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IHVuc2V0O1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4gICYuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7XG4gIH1cbn1cblxuLnNsaWNrLXNsaWRlciB7XG4gIC5zbGljay10cmFjaywgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgJjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuXG5bZGlyPSdydGwnXSAuc2xpY2stc2xpZGUge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5zbGljay1zbGlkZSB7XG4gIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJi5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5cbi5zdGF0aWMuc2xpZGVyX3R5cGVCIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDQ3NHB4O1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBAaW5jbHVkZSBtcSB7XG4gICAgaGVpZ2h0OiA2ODRweDtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgcGQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS13ZWFrZXIpO1xuICAgIHdpZHRoOiA0MCU7XG4gICAgaGVpZ2h0OiAyMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICB3aWR0aDogMzYlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuICAudW5pdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGhlaWdodDogNDc0cHg7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDY4NHB4O1xuICAgIH1cbiAgICA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAudGV4dCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDYycHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBib3R0b206IDE4MnB4O1xuICAgICAgICBsZWZ0OiA5JTtcbiAgICAgIH1cbiAgICAgIC50ZXh0aW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICAgIGgxIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1icmFuZCk7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXNtYWxsKSB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktaGVhZGluZyk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxhcmdlKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdykgdmFyKC0tYmV6aWVyKSAuMnMsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93KSB2YXIoLS1iZXppZXIpIC4ycztcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1lZGl1bSkgdmFyKC0tc3BhY2UteHh4bGFyZ2UpO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA3MHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXh4eGxhcmdlKTtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBwZDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS13ZWFrZXIpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLXNsb3cpIHZhcigtLWJlemllcikgLjhzO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnJhbmQpO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS14c21hbGwpIHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHNtYWxsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1oZWFkaW5nKTtcbiAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdykgdmFyKC0tYmV6aWVyKSAuNHMsIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93KSB2YXIoLS1iZXppZXIpIC40cztcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXNtYWxsKSB2YXIoLS1zcGFjZS14eHhsYXJnZSk7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWVkaXVtKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIHBkO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLXdlYWtlcik7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdykgdmFyKC0tYmV6aWVyKSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLXNsb3cpO1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXdlYWspO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14c21hbGwpO1xuICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXhzbWFsbCkgdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMTM1cHg7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciB2YXIoLS10cmFuc2l0aW9uLXNwZWVkLWZhc3QpIHZhcigtLWJlemllciksIG9wYWNpdHkgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93KSB2YXIoLS1iZXppZXIpIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdyk7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGQ7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLXdlYWtlcik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1zcGVlZC1zbG93KSB2YXIoLS1iZXppZXIpIHZhcigtLXRyYW5zaXRpb24tc3BlZWQtc2xvdyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIzNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWVkaXVtKSB2YXIoLS1zcGFjZS14bGFyZ2UpO1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbWVkaXVtKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYmcge1xuICAgICAgd2lkdGg6IDg3JTtcbiAgICAgIGhlaWdodDogNDMzcHg7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGVlcCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogODElO1xuICAgICAgICBoZWlnaHQ6IDU0OHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWFjdGl2ZTo6YmVmb3JlLCAmLmlzLWFjdGl2ZS1uZXh0OjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgfVxuICAgIC5iZy5wYyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmJnLnNwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLW5vdy5zbGljay1hY3RpdmUge1xuICAgICAgLnRleHQge1xuICAgICAgICAudGV4dGlubmVyIHtcbiAgICAgICAgICBoMSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogNDZweDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwYWRkaW5nOiA3cHggMThweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGJvdHRvbTogOTdweDtcbiAgICAgIEBpbmNsdWRlIGhvdmVyT3AoLjcpO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgICAmLnNsaWNrLW5leHQge1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgICAgaW1nIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zbGljay1kb3RzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogOTdweDtcbiAgICAgIHJpZ2h0OiAxMDBweDtcbiAgICAgIEBpbmNsdWRlIHNsaWNrZG90cygyMHB4LDNweCk7XG4gICAgfVxuICB9XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5zdGF0aWMuaWNvbl9udW0ge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLW1lZGl1bSk7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBAaW5jbHVkZSBtcSB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tbWFyZ2luLXRvcC1sYXJnZSk7XG4gIH1cbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgQGluY2x1ZGUgbXEodGIpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGdhcDogNCU7XG4gICAgfVxuICAgIC51bml0IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbWFsbCk7XG4gICAgICBAaW5jbHVkZSBtcSh0Yikge1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1lZGl1bSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2Utc21hbGwpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGFyZ2UpO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaWNvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSh0Yikge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRhdGEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiA3cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiAwIHZhcigtLXNwYWNlLXh4c21hbGwpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEodGIpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiA2cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDcuNHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1oZWFkaW5nKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteGxhcmdlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ub3RlIHtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHNtYWxsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc21hbGwpO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uc3RhdGljLmltYWdlX2xpbmsge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLW1lZGl1bSk7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLWxhcmdlKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICAudW5pdCB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDkwJSBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGxlZnQ7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgcGFkZGluZzogMTUwcHggMCAwIDQ1cHg7XG4gICAgICBAaW5jbHVkZSBtcSh0Yikge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDY5JSBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCA2MSU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWluLWhlaWdodDogMzUwcHg7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwNXB4O1xuICAgICAgfVxuICAgICAgLmJveCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnKTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1kZWVwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKHZhcigtLXNwYWNlLWxhcmdlKSk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbGFyZ2UpIDAgdmFyKC0tc3BhY2UteHhzbWFsbCkgdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgICAgICBAaW5jbHVkZSBtcSh0Yikge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHdpZHRoOiAzODBweDtcbiAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS14bGFyZ2UpIHZhcigtLXNwYWNlLXNtYWxsKSB2YXIoLS1zcGFjZS1zbWFsbCkgdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgcGQ7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItZGVlcCk7XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxhcmdlKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWhlYWRpbmcpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsYXJnZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW1lZGl1bSk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc21hbGwpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZWRpdW0pO1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXhzbWFsbCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtYWxsKTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc21hbGwpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kKTtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBkO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQgdmFyKC0tYXJyb3ctcmlnaHQpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDEycHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmxpbmsge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1lZGl1bSk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuQGltcG9ydCBcIm1peGluc1wiO1xuXG4uc3RhdGljLmhlYWRpbmdfbGluayB7XG4gIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbWVkaXVtKTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHZhcigtLW1hcmdpbi10b3AtbGFyZ2UpO1xuICB9XG4gICYuc2V0MiB7XG4gICAgLmlubmVyIHtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZCgyLHZhcigtLWdhcC0yY29sLWNvbCksdmFyKC0tZ2FwLTJjb2wtcm93KSk7XG4gICAgICB9XG4gICAgICAudW5pdCB7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBzdWJncmlkO1xuICAgICAgICAgIGdyaWQtcm93OiBzcGFuIDQ7XG4gICAgICAgICAgZ2FwOiAwO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIC51bml0IHtcbiAgICAgICsgLnVuaXQge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1tYXJnaW4tdG9wLW1lZGl1bSk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1oZWFkaW5nKTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsYXJnZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14c21hbGwpO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbWVkaXVtKTtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlcik7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbWFsbCkgMCB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1sYXJnZSkgMCB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UtbGFyZ2UpO1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICAgICAgICBjb2x1bW4tcnVsZTogc29saWQgMXB4IHZhcigtLWNvbG9yLWJvcmRlcik7XG4gICAgICAgICAgY29sdW1uLWdhcDogNyU7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhzbWFsbCk7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2Utc21hbGwpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1tZWRpdW0pO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtYWxsKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtYWxsKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tc3BhY2UtbWVkaXVtKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLXNwYWNlLWxhcmdlKTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHBkO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQgdmFyKC0tYXJyb3ctcmlnaHQpO1xuICAgICAgICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTJweDtcbiAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxpbmsge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1sYXJnZSk7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteGxhcmdlKTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuXG4udG9wcGFnZSB7XG4gICNoZWFkZXJEZWZhdWx0Om5vdCguaXMtYWN0aXZlKSB7XG4gICAgdHJhbnNsYXRlOiAwIC0xMTAlO1xuICB9XG4gICYuaXMtc2Nyb2xsIHtcbiAgICAjaGVhZGVyRGVmYXVsdCB7XG4gICAgICB0cmFuc2xhdGU6IDAgMDtcbiAgICB9XG4gICAgI2hlYWRlclRvcCB7XG4gICAgICB0cmFuc2xhdGU6IDAgLTIwMCU7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHRyYW5zbGF0ZTogMCBwY21heCgtMzAwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmlzLWRvd24ge1xuICAgICAgI2hlYWRlckRlZmF1bHQge1xuICAgICAgICB0cmFuc2xhdGU6IDAgLTEyMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZml4ZWQ6aGFzKCNoZWFkZXJEZWZhdWx0LmlzLWFjdGl2ZSkge1xuICAgICNoZWFkZXJUb3Age1xuICAgICAgdHJhbnNsYXRlOiAwIC0xNTAlO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB0cmFuc2xhdGU6IDAgcGNtYXgoLTkycHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjaGVhZGVyVG9wIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyMzgsIDI0MCwgMjQ1LCAwLjQwKTtcbiAgICAuaW5uZXIge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICNsb2dvIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICB0b3A6IHBjKDQ2cHgpO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJnLWNvcnBvcmF0ZSk7XG4gICAgICAgICAgcGFkZGluZzogdncoMTRweCkgdncoMTlweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgcGFkZGluZzogcGMoMjRweCkgcGMoMzFweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogdncoNzNweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBwYygxMjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubGFuZ1BDIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgaG92ZXJDb2xvcih2YXIoLS1jb2xvci1ncmF5LWxpZ2h0KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZ25hdlBDIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGhvdmVyQ29sb3IodmFyKC0tY29sb3ItZ3JheS1saWdodCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbnRhY3Qge1xuICAgICAgICBhIHtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBob3ZlckNvbG9yKHZhcigtLWNvbG9yLWdyYXktbGlnaHQpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZW51QnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiB2dygxMHB4KTtcbiAgICAgICAgd2lkdGg6IHZ3KDQ4cHgpO1xuICAgICAgICBoZWlnaHQ6IHZ3KDQ4cHgpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDEwMDI7XG4gICAgICAgIEBpbmNsdWRlIG1xKCl7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAgIH1cbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgJi5taWRkbGUsICYuYmFjayB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50b3AsICYuYm90dG9tIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiN0b3BTY2VuZTAxIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI3NjZW5lMDFCYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB6LWluZGV4OiA5OTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IHBjKDkzcHgpO1xuICB9XG4gIC5iYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogM3B4O1xuICAgIG9wYWNpdHk6IC40O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAmLmxlZnQge1xuICAgICAgbGVmdDogcGMoMTIwcHgpO1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb246IHNjcm9sbF9hcnJvd19sZWZ0IDVzIGVhc2UgaW5maW5pdGUgbm9ybWFsO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnJpZ2h0IHtcbiAgICAgIHJpZ2h0OiBwYygxMjBweCk7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogc2Nyb2xsX2Fycm93X3JpZ2h0IDVzIGVhc2UgaW5maW5pdGUgbm9ybWFsIDIuNXM7XG4gICAgICB9XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLWxpZ2h0KTtcbiAgICAgIG9wYWNpdHk6IC40O1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItbGlnaHQpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHdpZHRoOiAzcHg7XG4gICAgICBoZWlnaHQ6IHBjKDI0MHB4KTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIEBrZXlmcmFtZXMgc2Nyb2xsX2Fycm93X2xlZnQge1xuICAgICAgMCUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgfVxuICAgIEBrZXlmcmFtZXMgc2Nyb2xsX2Fycm93X3JpZ2h0IHtcbiAgICAgIDAlIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNpcmNsZU9iamVjdCB7XG4gIHdpZHRoOiB2dygzNTdweCk7XG4gIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogdncoMTAwcHgpO1xuICB0cmFuc2xhdGU6IHZ3KDEwMHB4KSAwO1xuICB6LWluZGV4OiAxMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICB3aWR0aDogcGMoNTQ5cHgpO1xuICAgIHRvcDogcGMoMjEwcHgpO1xuICAgIHRyYW5zbGF0ZTogcGMoMjAwcHgpIDA7XG4gIH1cbiAgJi5yZXZlcnNlIHtcbiAgICBvcGFjaXR5OiAuNDtcbiAgICAub3V0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2NpcmNsZV9vdXRfcmV2ZXJzZS5wbmcpO1xuICAgIH1cbiAgICAubWlkZGxlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2NpcmNsZV9taWRkbGVfcmV2ZXJzZS5wbmcpO1xuICAgIH1cbiAgICAuaW4ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY2lyY2xlX2luX3JldmVyc2UucG5nKTtcbiAgICB9XG4gIH1cbiAgLm91dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2NpcmNsZV9vdXQucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFuaW1hdGlvbjogY2lyY2xlX291dCA1NnMgbGluZWFyIGluZmluaXRlO1xuICAgIEBrZXlmcmFtZXMgY2lyY2xlX291dCB7XG4gICAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5taWRkbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9jaXJjbGVfbWlkZGxlLnBuZyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICB9XG4gIC5pbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL2NpcmNsZV9pbi5wbmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYW5pbWF0aW9uOiBjaXJjbGVfaW4gMzBzIGxpbmVhciBpbmZpbml0ZTtcbiAgICBAa2V5ZnJhbWVzIGNpcmNsZV9pbiB7XG4gICAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI3RvcFNsaWRlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmNpcmNsZU9iamVjdCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiB2dygxMDBweCk7XG4gICAgdHJhbnNsYXRlOiB2dygxMDBweCkgMDtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICB0b3A6IHBjKDIxMHB4KTtcbiAgICAgIHRyYW5zbGF0ZTogcGMoMjAwcHgpIDA7XG4gICAgfVxuICB9XG4gIC5zd2lwZXItc2xpZGUge1xuICAgIGhlaWdodDogMTAwc3ZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgLmNvdmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEuNnMgZWFzZS1vdXQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gICAgLnRleHQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiB2dygyNHB4KTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2dygzNnB4KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY2xpcC1wYXRoOiBpbnNldCgwIDEwMCUgMCAwKTtcbiAgICAgIHRyYW5zaXRpb246IGNsaXAtcGF0aCAxLjBzIHZhcigtLWJlemllcikgLjRzO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBib3R0b206IHBjKDkwcHgpO1xuICAgICAgICB3aWR0aDogcGNsYXJnZSgxMTIwcHgpO1xuICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICB9XG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14eHh4bCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNzUlO1xuICAgICAgICBib3JkZXItYm90dG9tOiB2dygzcHgpIHNvbGlkIHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZ3KDE2cHgpO1xuICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBmb250LXNpemU6IHBjKDQ4cHgpO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IHBjKDNweCk7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDZweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBwYWRkaW5nLXRvcDogdncoMjhweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwMCU7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBmb250LXNpemU6IHBjKDE4cHgpO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiBwYygzNnB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgaW5zZXQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHNjYWxlOiAxLjE7XG4gICAgICB0cmFuc2l0aW9uOiBzY2FsZSA4cyBlYXNlLW91dDtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgICAmLnBjIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnNwIHtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICAgIC5jb3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG4gICAgICAudGV4dCB7XG4gICAgICAgIGNsaXAtcGF0aDogaW5zZXQoMCAwIDAgMCk7XG4gICAgICB9XG4gICAgICAuYmcge1xuICAgICAgICBzY2FsZTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiN0b3BJbmRpY2F0b3Ige1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogdncoMTAwcHgpO1xuICBwYWRkaW5nLXRvcDogdncoNDJweCk7XG4gIHotaW5kZXg6IDk5O1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDE1dmg7XG4gIH1cbiAgdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHdpZHRoOiBwY2xhcmdlKDExMjBweCk7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgZ2FwOiBwYyg4cHgpO1xuICAgICAgdHJhbnNsYXRlOiBwYyg1cHgpIDA7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIHdpZHRoOiB2dygxMnB4KTtcbiAgICAgIGhlaWdodDogdncoMTJweCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgd2lkdGg6IHBjKDE2cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDE2cHgpO1xuICAgICAgfVxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiB2dyg1cHgpO1xuICAgICAgICBoZWlnaHQ6IHZ3KDVweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMi4wMzZweCAyLjAzNnB4IDAgcmdiYSgwLCAwLCAwLCAwLjIwKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2xhdGU6IC01MCUgLTUwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIHdpZHRoOiBwYygxMHB4KTtcbiAgICAgICAgICBoZWlnaHQ6IHBjKDEwcHgpO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4yMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiB2dyg4cHgpO1xuICAgICAgICAgIGhlaWdodDogdncoOHB4KTtcbiAgICAgICAgICBib3JkZXI6IDAuNXB4IHNvbGlkICNDMkU4RkY7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIHdpZHRoOiBwYygxNnB4KTtcbiAgICAgICAgICAgIGhlaWdodDogcGMoMTZweCk7XG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogdncoOXB4KTtcbiAgICAgICAgICBoZWlnaHQ6IHZ3KDlweCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0MyRThGRjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIHRyYW5zbGF0ZTogLTUwJSAtNTAlO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDE3cHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiBwYygxN3B4KTtcbiAgICAgICAgICAgIGZpbHRlcjogYmx1cig2cHgpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogdW5zZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4udG9wQWJvdXRCRyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3RvcF9hYm91dF9iZy53ZWJwKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvdG9wX2Fib3V0X2JnX3BjLndlYnApO1xuICB9XG59XG4jdG9wQWJvdXQge1xuICBwYWRkaW5nLWJsb2NrOiB2dygyMHB4KSB2dyg2MHB4KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxLjBzIHZhcigtLWJlemllcik7XG4gICYuaXMtaGlkZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICBAaW5jbHVkZSBtcSgpIHtcbiAgICB3aWR0aDogcGNsYXJnZSgxMTIwcHgpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgcGFkZGluZy1ibG9jazogcGMoMjBweCkgcGMoMTYwcHgpO1xuICAgIC8vIGhlaWdodDogMTAwdmg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHBjKDQwcHgpO1xuICB9XG4gIC5pbWFnZXMge1xuICAgIG1hcmdpbi10b3A6IHZ3KDQwcHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICB3aWR0aDogcGNsYXJnZSg2MDBweCk7XG4gICAgfVxuICAgIC5zcCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIGFuaW1hdGlvbiA6aW5maW5pdHktc2Nyb2xsLWxlZnQgMzBzIGluZmluaXRlIGxpbmVhciAwLjVzIGJvdGg7XG4gICAgICAgIGhlaWdodDogdncoMjEycHgpO1xuICAgICAgfVxuICAgICAgQGtleWZyYW1lcyBpbmZpbml0eS1zY3JvbGwtbGVmdCB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucGMge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcGMoMjRweCk7XG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiBwYygyOTBweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcGMoOTJweCk7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiBwYyg0NzBweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDMyMHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiN0b3BCdXNpbmVzcyB7XG4gIHBhZGRpbmctYmxvY2s6IHZ3KDgwcHgpIHZ3KDEzMHB4KTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEuMHMgdmFyKC0tYmV6aWVyKTtcbiAgJi5pcy1oaWRlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIHBhZGRpbmctYmxvY2s6IHBjKDEyMHB4KSBwYygyODBweCk7XG4gIH1cbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHdpZHRoOiBwY2xhcmdlKDExMjBweCk7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZ2FwOiBwYyg0MHB4KTtcbiAgICB9XG4gICAgLnRvcFRleHQge1xuICAgICAgLmNpcmNsZU9iamVjdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiBwYygxcHgpO1xuICAgICAgICAgIGxlZnQ6IHBjbWF4KC01MDBweCk7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubGlua3Mge1xuICAgICAgbWFyZ2luLXRvcDogdncoNDBweCk7XG4gICAgICBwYWRkaW5nLWlubGluZTogdncoMjBweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgd2lkdGg6IHBjbGFyZ2UoNjAwcHgpO1xuICAgICAgfVxuICAgICAgLnVuaXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMjBweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg0MHB4KTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBzY2FsZTogMS4wO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGV4dCB7XG4gICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgbGVmdDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KSB2dyg0cHgpIDAgMDtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCkgcGMoNHB4KSAwIDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMyAvIDI7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogc2NhbGUgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgICAgICAgICAgc2NhbGU6IDEuMDU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBwYWRkaW5nOiB2dygxMHB4KSB2dygzNHB4KSB2dygxMHB4KSB2dygxMnB4KTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBwYygyMHB4KSBwYyg0NnB4KSBwYygyMHB4KSBwYygyMHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiB2dygxNHB4KTtcbiAgICAgICAgICAgIGhlaWdodDogdncoMTRweCk7XG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgICAgICAgICAgIG1hc2stc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgICAgICBtYXNrLXNpemU6IGF1dG8gdncoMTRweCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgICAgICAgICAgIHJpZ2h0OiB2dygxMnB4KTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNsYXRlOiAwIC01MCU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBtYXNrLXBvc2l0aW9uIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHBjKDE0cHgpO1xuICAgICAgICAgICAgICBoZWlnaHQ6IHBjKDE0cHgpO1xuICAgICAgICAgICAgICByaWdodDogcGMoMjBweCk7XG4gICAgICAgICAgICAgIG1hc2stc2l6ZTogYXV0byBwYygxNHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgZ2FwOiB2dygxMnB4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHZ3KDZweCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgZ2FwOiBwYygxMnB4KTtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcGMoMTJweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14eHMpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTQ1JTtcbiAgICAgICAgICAgICAgcGFkZGluZzogdncoNHB4KSB2dyg2cHgpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtcyk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcGMoNHB4KSBwYygxNnB4KTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTY2JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jdG9wUHJvZHVjdHMge1xuICBtYXJnaW4tdG9wOiB2dygtNzBweCk7XG4gIHBhZGRpbmctYmxvY2s6IHZ3KDgwcHgpIHZ3KDk1cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVGMEY1O1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgLThweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xMCkpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIHBhZGRpbmctYmxvY2s6IHBjKDE4MHB4KSBwYygxNjBweCk7XG4gICAgbWFyZ2luLXRvcDogcGMoLTE2NnB4KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfcHJvZHVjdHNfYmcucG5nKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG4gICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBpbnNldDogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5MUFCRTA7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogcGMoMTIxcHgpO1xuICAgIH1cbiAgfVxuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IHBjKDEyMXB4KTtcbiAgICB9XG4gIH1cbiAgLmhlYWQge1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgd2lkdGg6IHBjbGFyZ2UoMTEyMHB4KTtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBnYXA6IHBjKDQwcHgpO1xuICAgIH1cbiAgICAudG9wVGV4dCB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1kYXJrKTtcbiAgICB9XG4gICAgLmltYWdlcyB7XG4gICAgICBtYXJnaW4tdG9wOiB2dyg0MHB4KTtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB2dygyMHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICB3aWR0aDogcGNsYXJnZSg2MDBweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5lbGV2YXRvciB7XG4gICAgbWFyZ2luLXRvcDogdncoMTEwcHgpO1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy90b3BfZWxldmF0b3JfYmcud2VicCk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIHZ3KDE4OHB4KTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IHZ3KC0yMHB4KSB0b3A7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICB3aWR0aDogcGMoMTEyMHB4KTtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDEyMHB4KTtcbiAgICAgIHBhZGRpbmctdG9wOiBwYyg3MHB4KTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogcGMoNTQzcHgpIGF1dG87XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBwYyg1NnB4KTtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICBtaW4taGVpZ2h0OiBwYyg1MjBweCk7XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgICAgIGZvbnQtc2l6ZTogdncoNDBweCk7XG4gICAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZm9udC1zaXplOiBwYyg2NHB4KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDI0cHgpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDYwcHgpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB3aWR0aDogcGMoNTIwcHgpO1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteHhsKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eHh4bCk7XG4gICAgICAgICAgYnIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygyMHB4KTtcbiAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTcwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoMzZweCk7XG4gICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLWwpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzclO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMjBweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDM2cHgpO1xuICAgICAgICB9XG4gICAgICAgIC5wX2J1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAub3RoZXIge1xuICAgIG1hcmdpbi10b3A6IHZ3KDQ4cHgpO1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDY0cHgpO1xuICAgICAgd2lkdGg6IHBjKDExMjBweCk7XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgICAgIGZvbnQtc2l6ZTogdncoNDhweCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoNjRweCk7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDI4cHgpO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgZ2FwOiB2dygxNnB4KTtcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYygyOHB4KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgZ2FwOiBwYygyOHB4KTtcbiAgICAgIH1cbiAgICAgIC51bml0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGU6XG4gICAgICAgIFwidGl0bGUgaW1hZ2VcIiBhdXRvXG4gICAgICAgIFwiYnV0dG9uIGJ1dHRvblwiIGF1dG9cbiAgICAgICAgLyAxZnIgdncoMjAwcHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgIHBhZGRpbmc6IHBjKDI4cHgpIHBjKDIwcHgpIHBjKDM2cHgpO1xuICAgICAgICAgIGdhcDogcGMoMjBweCk7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZTpcbiAgICAgICAgICBcInRpdGxlXCIgYXV0b1xuICAgICAgICAgIFwiaW1hZ2VcIiBhdXRvXG4gICAgICAgICAgXCJidXR0b25cIiBhdXRvXG4gICAgICAgICAgLyAxZnI7XG4gICAgICAgIH1cbiAgICAgICAgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoMjRweCk7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtbCk7XG4gICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgIGdyaWQtYXJlYTogdGl0bGU7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKDI0cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIGdyaWQtYXJlYTogaW1hZ2U7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBncmlkLWFyZWE6IGJ1dHRvbjtcbiAgICAgICAgICBwYWRkaW5nLWJsb2NrOiB2dygxMnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDE2cHgpIDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wX2J1dHRvbiB7XG4gICAgICAgICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmVsZXZhdG9yLXNlYXJjaCB7XG4gIG1hcmdpbi10b3A6IHZ3KDQ4cHgpO1xuICBAaW5jbHVkZSBtcSgpIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHdpZHRoOiBwYygxMTIwcHgpO1xuICAgIH1cbiAgICAucHJvZHVjdF9zZWFyY2gge1xuICAgICAgcGFkZGluZy10b3A6IHZ3KDE0cHgpO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHZ3KDEwcHgpO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBwYygyMHB4KTtcbiAgICAgICAgcGFkZGluZy1pbmxpbmU6IHBjKDIwcHgpO1xuICAgICAgfVxuICAgICAgLnJhZGlvLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cbi50b3BUZXh0IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWlubGluZTogdncoMjBweCk7XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIGdyaWQtYXJlYTogdGV4dDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMjJ2aDtcbiAgICBmbGV4OiAxO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgJi5zdGF0aWMge1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG4gIH1cbiAgaDEge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1lbik7XG4gICAgZm9udC1zaXplOiB2dyg0MHB4KTtcbiAgICBsaW5lLWhlaWdodDogMTYwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgZm9udC1zaXplOiBwYyg3MnB4KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiB2dygxNHB4KTtcbiAgICAgIGhlaWdodDogdncoMTJweCk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoL2ltYWdlcy9pY29uX2Rvd24uc3ZnKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgd2lkdGg6IHBjKDI0cHgpO1xuICAgICAgICBoZWlnaHQ6IHBjKDIwcHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiBwYygyNHB4KTtcbiAgICAgICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICBmb250LXNpemU6IHZ3KC0tZnMtbCk7XG4gICAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBtYXJnaW4tdG9wOiBwYygzNnB4KTtcbiAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eGwpO1xuICAgIH1cbiAgfVxuICAuZGVzYyB7XG4gICAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBtYXJnaW4tdG9wOiBwYygzNnB4KTtcbiAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogdncoMTZweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDE2cHgpO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHVuc2V0O1xuICAgICAgfVxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDM2cHgpO1xuICAgIH1cbiAgICAucF9idXR0b24ge1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICBtYXJnaW4taW5saW5lOiB1bnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiN0b3BDb21wYW55IHtcbiAgcGFkZGluZy1ibG9jazogdncoNDhweCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3RvcF9jb21wYW55X2JnLmpwZyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgQGluY2x1ZGUgbXEoKSB7XG4gICAgcGFkZGluZy1ibG9jazogcGMoMTI0cHgpIHBjKDE0MHB4KTtcbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIHdpZHRoOiBwY2xhcmdlKDExMjBweCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBnYXA6IHBjKDQwcHgpO1xuICAgIH1cbiAgICAubGlua3Mge1xuICAgICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgIHdpZHRoOiBwY2xhcmdlKDYwMHB4KTtcbiAgICAgIH1cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjbGFyZ2UoNHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDIwcHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMjBweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBnYXA6IHZ3KDEycHgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgICBwYWRkaW5nOiB2dygxOHB4KSB2dygyOHB4KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDJweCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTcwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZy1iZy13aGl0ZSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogcGMoMjhweCkgcGMoNDhweCk7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgICAgICAgICAgZ2FwOiBwYygxMnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC10ZXJ0aWFyeSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ib3JkZXItd2hpdGUpO1xuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiB2dygxNHB4KTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICAgICAgICAgICAgbWFzay1pbWFnZTogdXJsKC9pbWFnZXMvYXJyb3dfcmlnaHRfc2Nyb2xsLnN2Zyk7XG4gICAgICAgICAgICAgIG1hc2stc2l6ZTogYXV0byB2dygxNHB4KTtcbiAgICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcGMoMTRweCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBwYygxNHB4KTtcbiAgICAgICAgICAgICAgICBtYXNrLXNpemU6IGF1dG8gcGMoMTRweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiN0b3BQYXJ0bmVycyB7XG4gIHBhZGRpbmctYmxvY2s6IHZ3KDcycHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlKTtcbiAgQGluY2x1ZGUgbXEoKSB7XG4gICAgcGFkZGluZy1ibG9jazogcGMoODBweCkgcGMoMTAwcHgpO1xuICB9XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgd2lkdGg6IHBjKDEwMDBweCk7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IHZ3KC0tZnMteGwpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eHhsKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luLXRvcDogdncoNTZweCk7XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgIGdhcDogdncoNDhweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcGMoNzBweCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogcGMoMTUwcHgpO1xuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IHZ3KDE2MHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIHdpZHRoOiBwYygyMzdweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jdG9wU3BvbnNvcnMge1xuICBwYWRkaW5nLWJsb2NrOiB2dyg0OHB4KTtcbiAgQGluY2x1ZGUgbXEoKSB7XG4gICAgcGFkZGluZy1ibG9jazogcGMoODRweCkgcGMoOTZweCk7XG4gIH1cbiAgLmlubmVyIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgLnVuaXQge1xuICAgICAgbWFyZ2luLXRvcDogdncoNDhweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcGMoODJweCk7XG4gICAgICB9XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICB9XG4gICAgICBoMSB7XG4gICAgICAgIC5lbiB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWVuKTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KDQwcHgpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYyg2NHB4KTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5qYSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoMjhweCk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLW0pO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byAxZnI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBnYXA6IHZ3KDEwcHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMzhweCk7XG4gICAgICAgICAgICBnYXA6IHBjKDEwcHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXhsKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogdncoOHB4KTtcbiAgICAgICAgICAgIGhlaWdodDogdncoOHB4KTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWJn4oiSbGlnaHRibHVlKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgICB3aWR0aDogcGMoMTNweCk7XG4gICAgICAgICAgICAgIGhlaWdodDogcGMoMTNweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmxvY2sge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygyMHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogcGMoMzBweCk7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlOlxuICAgICAgICAgIFwibGVhZCBpbWFnZVwiIGF1dG9cbiAgICAgICAgICBcInRleHQgaW1hZ2VcIiAxZnJcbiAgICAgICAgICAvIDFmciBwYygzOTJweCk7XG4gICAgICAgICAgZ2FwOiAwIHBjKDQ4cHgpO1xuICAgICAgICB9XG4gICAgICAgIC5sZWFkIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIHBhZGRpbmctaW5saW5lOiB2dygyMHB4KTtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCk7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLW0pO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgICAgICBoZWlnaHQ6IHZ3KDEyOHB4KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4bCk7XG4gICAgICAgICAgICBwYWRkaW5nLWlubGluZTogcGMoMzZweCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHBjKDE1MnB4KTtcbiAgICAgICAgICAgIGdyaWQtYXJlYTogbGVhZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRleHQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDIwcHgpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcGMoMzZweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgICBncmlkLWFyZWE6IHRleHQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoMjBweCk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgICAgICBwYWRkaW5nOiB2dygxNnB4KTtcbiAgICAgICAgICBtaW4taGVpZ2h0OiB2dygxNThweCk7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiBwYygzOTJweCk7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiB1bnNldDtcbiAgICAgICAgICAgIHBhZGRpbmc6IHBjKDE2cHgpO1xuICAgICAgICAgICAgZ3JpZC1hcmVhOiBpbWFnZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogdncoMjkycHgpO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogdncoMjA3cHgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogcGMoMzQ0cHgpO1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBwYygzNDRweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jdG9wUmVjcnVpdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3RvcF9yZWNydWl0LmpwZyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZy1ibG9jazogdncoNjRweCkgdncoMTE4cHgpO1xuICBwYWRkaW5nLWlubGluZTogdncoMjZweCk7XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvaW1hZ2VzL3RvcF9yZWNydWl0X3BjLmpwZyk7XG4gICAgcGFkZGluZy1ibG9jazogcGMoMTI4cHgpIDA7XG4gICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICB9XG4gIC5pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiB2dyg0OHB4KTtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlOlxuICAgICAgXCIuIHRleHQgdGV4dFwiIGF1dG9cbiAgICAgIC8gMWZyIHBjKDgwcHgpIDFmcjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiB1bnNldDtcbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IHZ3KDQwcHgpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC50b3BUZXh0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBwYWRkaW5nLWlubGluZTogdncoMzBweCk7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZ3JpZC1hcmVhOiB0ZXh0O1xuICAgICAgICBwYWRkaW5nLWlubGluZTogcGMoODdweCkgMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHBjKDYwcHgpO1xuICAgICAgICB0b3A6IHVuc2V0O1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1iZy1kYXJrKTtcbiAgICAgICAgICB0b3A6IHBjKDQwcHgpO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBjIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGVzYyB7XG4gICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDIwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgLnBfYnV0dG9uIHtcbiAgICAgICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgfVxufVxuI3RvcE5ld3Mge1xuICBwYWRkaW5nLWJsb2NrOiB2dygzNnB4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIEBpbmNsdWRlIG1xKCkge1xuICAgIHBhZGRpbmctYmxvY2s6IHBjKDk2cHgpO1xuICB9XG4gICsgZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgfVxuICAuaW5uZXIge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlOlxuICAgICAgXCJ0ZXh0IGxpc3RcIiBhdXRvXG4gICAgICAvIDFmciBwYyg4NzBweCk7XG4gICAgfVxuICAgIC50b3BUZXh0IHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgIGdyaWQtYXJlYTogdGV4dDtcbiAgICAgIH1cbiAgICAgIGgxIHtcbiAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICAucF9idXR0b24ge1xuICAgICAgICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgICAgICAgbWFyZ2luLWlubGluZTogdW5zZXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDM2cHgpO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFQUVFRjc7XG4gICAgICBAaW5jbHVkZSBtcSgpIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBsaXN0O1xuICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuQG1peGluIHZlcnRpY2FsQm9yZGVyKCRzcDogZmFsc2UpIHtcbiAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1jb2xvci1icmFuZC1jb3Jwb3JhdGUpIDIwJSwgdHJhbnNwYXJlbnQpO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IHZ3KDIwcHgpO1xuICAgIHotaW5kZXg6IDE7XG4gICAgQGlmIG5vdCAkc3Age1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zbGF0ZTogcGNtYXgoLTYwMHB4KSAwO1xuICAgIH1cbiAgfVxuICAmOjphZnRlciB7XG4gICAgbGVmdDogdW5zZXQ7XG4gICAgcmlnaHQ6IHZ3KDIwcHgpO1xuICAgIEBpbmNsdWRlIG1xKCkge1xuICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgdHJhbnNsYXRlOiBwYyg2MDBweCkgMDtcbiAgICB9XG4gIH1cbn1cbi5jYXRMZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctYmctZGFyayk7XG4gIHBhZGRpbmctYmxvY2s6IHZ3KDU2cHgpIHZ3KDE2MnB4KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvY2F0bGVhZF9iZy5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZ3KDQ0OHB4KSBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdncoLTE2cHgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsQm9yZGVyKHRydWUpO1xuICAuYWJvdXRCb3JkZXJCRyAmIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdncoMjYycHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBwYygzNjdweCk7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBwYygxMDBweCkgcGMoMzY3cHgpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogcGMoMTUwOHB4KSBhdXRvO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBwY21heCgtMTUzcHgpO1xuICB9XG4gIEBpbmNsdWRlIG1xKHBjKSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMTAlIGF1dG87XG4gIH1cbiAgJjo6YmVmb3JlLCAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgdmFyKC0tY29sb3ItYnJhbmQtY29ycG9yYXRlKSAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIH1cbiAgLmlubmVyIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgIHBhZGRpbmctaW5saW5lOiB2dygzNnB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICBwYWRkaW5nLWlubGluZTogdW5zZXQ7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14bCk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogdncoNDhweCk7XG4gICAgICBsaW5lLWhlaWdodDogMjQwJTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcGMoODJweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy14eHh4bCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG4gICAgICBmb250LXNpemU6IHZ3KC0tZnMtbSk7XG4gICAgICBsaW5lLWhlaWdodDogMTc1JTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgIH1cblxuICAgIH1cbiAgfVxuICArIC5jb21wb25lbnQudHlwZV9jYXRjaGNvcHlfaW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IHZ3KC0yMTRweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgbWFyZ2luLXRvcDogcGNtYXgoLTI0NXB4KTtcbiAgICB9XG4gIH1cbiAgKyAuY29tcG9uZW50LnR5cGVfaW1hZ2VfbXVsdGkge1xuICAgIG1hcmdpbi10b3A6IHZ3KC0xMTVweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgbWFyZ2luLXRvcDogcGNtYXgoLTI3MHB4KTtcbiAgICB9XG4gIH1cbn1cbi5hYm91dEJvcmRlckJHIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbEJvcmRlcihmYWxzZSk7XG4gIHBhZGRpbmctYm90dG9tOiB2dyg0OHB4KTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmctYm90dG9tOiBwYyg4OHB4KTtcbiAgfVxufVxuLmFib3V0SGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogdncoNTVweCk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBtYXJnaW4tdG9wOiBwYygxMDBweCk7XG4gIH1cbiAgLmlubmVyIHtcbiAgICBoMiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IHZ3KC0tZnMteHhsKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMjE4JTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4eHhsKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYWJvdXRSZWFzb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsQm9yZGVyKGZhbHNlKTtcbn1cbi5hYm91dFJlYXNvbkhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nLWJsb2NrOiB2dyg0OHB4KSB2dyg5MHB4KTtcbiAgQGluY2x1ZGUgdmVydGljYWxCb3JkZXIodHJ1ZSk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBwYygxNDdweCkgcGMoMjQ2cHgpO1xuICB9XG4gICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci13aGl0ZSk7XG4gIH1cbiAgJi5hYm91dF8wMSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYWJvdXRfMDFfYmcud2VicCk7XG4gIH1cbiAgJi5hYm91dF8wMiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYWJvdXRfMDJfYmcud2VicCk7XG4gIH1cbiAgJi5hYm91dF8wMyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC9pbWFnZXMvYWJvdXRfMDNfYmcud2VicCk7XG4gIH1cbiAgLmNpcmNsZU9iamVjdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRvcDogcGMoMTdweCk7XG4gICAgICB3aWR0aDogcGMoNTQ2cHgpO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNsYXRlOiBwYygzMjdweCkgMDtcbiAgICB9XG4gIH1cbiAgLmlubmVyIHtcbiAgICBwYWRkaW5nLWlubGluZTogdncoMzZweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIH1cbiAgICBkbCB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IHBjKDk0cHgpO1xuICAgICAgICBwYWRkaW5nLWlubGluZTogcGMoODVweCk7XG4gICAgICB9XG4gICAgICBkdCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1lbik7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14eHh4eHhsKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZm9udC1zaXplOiBwYygxODBweCk7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGdhcDogcGMoOTlweCk7XG4gICAgICAgIH1cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICAgIHdpZHRoOiB2dyg0OXB4KTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygxMnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICAgIHdpZHRoOiBwYygycHgpO1xuICAgICAgICAgICAgaGVpZ2h0OiBwYygxODdweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZ3KDIwcHgpO1xuICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMteGwpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTgwJTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoNTZweCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5hYm91dFJlYXNvbkJvZHkge1xuICBtYXJnaW4tdG9wOiB2dygtNTBweCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgcGFkZGluZy1ib3R0b206IHZ3KDgwcHgpO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgbWFyZ2luLXRvcDogcGNtYXgoLTEzMHB4KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcGMoMTMzcHgpO1xuICB9XG4gIC5pbm5lciB7XG4gICAgQGluY2x1ZGUgY29udGFpbmVyO1xuICAgIC50ZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgcGFkZGluZzogdncoMzZweCkgdncoMThweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmc6IHBjKDY1cHgpIHBjKDEyNnB4KTtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgaGVhZGluZ01lZGl1bTtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiB2dygxNnB4KTtcbiAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTc1JTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDMycHgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgICAgfVxuICAgICAgICArIGgyIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiB2dygyNHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg1NHB4KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgICAuaW1hZ2VzIHtcbiAgICAgIG1hcmdpbi10b3A6IHZ3KDM2cHgpO1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEsIDFmcik7XG4gICAgICBnYXA6IHZ3KDI0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYyg0MnB4KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgZ2FwOiBwYygzNnB4KTtcbiAgICAgIH1cbiAgICAgIGZpZ3VyZSB7XG4gICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDEycHgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTc1JTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg4cHgpO1xuICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgfVxuXG4gIH1cbn1cbi5hYm91dFJlbGF0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nLWJsb2NrOiB2dyg1NnB4KTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmctYmxvY2s6IHBjKDExMHB4KTtcbiAgfVxuICA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG4gICsgLm5hdmlnYXRpb24uYnJlYWRjcnVtYnMge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG59XG4ucGhpbG9zb3BoeVRvcCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nLWJsb2NrOiB2dygzNnB4KSB2dyg0OHB4KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgcGFkZGluZy1ibG9jazogcGMoMTIwcHgpO1xuICB9XG4gIC5jaXJjbGVPYmplY3Qge1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAwO1xuICAgIHdpZHRoOiB2dygyNjhweCk7XG4gICAgdHJhbnNsYXRlOiB2dyg3M3B4KSAwO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHdpZHRoOiBwYyg1NDlweCk7XG4gICAgICB0cmFuc2xhdGU6IHBjKDE1MHB4KSAwO1xuICAgIH1cbiAgfVxuICAuY29tcG9uZW50LnR5cGVfaGVhZGluZyB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbiAgLnBoaWxvc29waHlUb3BUZXh0IHtcbiAgICBtYXJnaW4tdG9wOiB2dyg3MnB4KTtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDkwcHgpO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogdncoMjQwcHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgd2lkdGg6IHBjKDM3NHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBoNCB7XG4gICAgICBtYXJnaW4tdG9wOiB2dyg2NHB4KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICBmb250LXNpemU6IHZ3KC0tZnMteGwpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxODAlO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBtYXJnaW4tdG9wOiBwYyg3NHB4KTtcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4eGwpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTMwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBtYXJnaW4tdG9wOiB2dygzNnB4KTtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTc1JTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcGMoNjRweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxvZ28ge1xuICAgICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHBjKDY0cHgpO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IHZ3KDE4MHB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIHdpZHRoOiBwYygzNTJweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5waGlsb3NvcGh5TWlkZGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogdncoNDhweCk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcGMoMTIwcHgpO1xuICB9XG4gIC5jaXJjbGVPYmplY3Qge1xuICAgIHRvcDogdncoMTcycHgpO1xuICAgIHotaW5kZXg6IDA7XG4gICAgd2lkdGg6IHZ3KDI2OHB4KTtcbiAgICB0cmFuc2xhdGU6IHZ3KC03NXB4KSAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgdG9wOiBwYygyMjRweCk7XG4gICAgICB3aWR0aDogcGMoNTQ5cHgpO1xuICAgICAgdHJhbnNsYXRlOiBwY21heCgtMTUycHgpIDA7XG4gICAgfVxuICB9XG4gIC5waGlsb3NvcGh5TWlkZGxlVGV4dCB7XG4gICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgbWFyZ2luLXRvcDogcGMoNjRweCk7XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgICAubGVhZCB7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBwYWRkaW5nLWlubGluZTogcGMoMTIwcHgpO1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBAaW5jbHVkZSBoZWFkaW5nTWVkaXVtO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHZ3KDE2cHgpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNzUlO1xuICAgICAgICAgIHBhZGRpbmctaW5saW5lOiB2dygyMHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBwYygzNnB4KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgICAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBwYyg2NHB4KTtcbiAgICAgICAgfVxuICAgICAgICAudW5pdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgICAgcGFkZGluZzogdncoMjhweCkgdncoMjRweCk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogdncoNHB4KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLXRvcDogdncoMjBweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgcGFkZGluZzogcGMoNTZweCkgcGMoMTA4cHgpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDM2cHgpO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcGMoMjI4cHgpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB1bnNldDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1tKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXh4bCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE3NSU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IHBjKDIwcHgpO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbi5waGlsb3NvcGh5Qm90dG9tIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmctYmxvY2s6IHZ3KDM2cHgpIHZ3KDQ4cHgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBwYWRkaW5nLWJsb2NrOiBwYygxMjBweCk7XG4gIH1cbiAgLmNvbXBvbmVudC50eXBlX2NhdGNoY29weV9pbWFnZV9iZyB7XG4gICAgbWFyZ2luLXRvcDogdW5zZXQ7XG4gIH1cbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpbXBvcnQgXCJtaXhpbnNcIjtcblxuLnByb2R1Y3RzLXNlYXJjaC13cmFwcGVyIHtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHBjKDU2cHgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIHdpZHRoOiBwYygxMjAwcHgpO1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cbiAgJjpoYXMoLnByb2R1Y3QtZGV0YWlsLWhlcm8pIC5wcm9kdWN0LXNlYXJjaC1uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gIC50aXAge1xuICAgIHotaW5kZXg6IDI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogdncoMzhweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllciksIHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGJvdHRvbTogcGMoNDhweCk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBkO1xuICAgICAgd2lkdGg6IDBweDtcbiAgICAgIGhlaWdodDogMHB4O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogdncoN3B4KSB2dyg0cHgpIDAgdncoNHB4KTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSkgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAzcHggNnB4IHJnYmEoMCwwLDAsLjE2KSk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGJvcmRlci13aWR0aDogcGMoN3B4KSBwYyg0cHgpIDAgcGMoNHB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5pcy1zaG93IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkodncoLTVweCkpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkocGNtYXgoLTVweCkpO1xuICAgICAgfVxuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgICAgIHBhZGRpbmc6IHZ3KDRweCkgdncoMTJweCkgdncoNXB4KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAzcHggNnB4IHJnYmEoMCwwLDAsLjE2KSk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2dygycHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBwYygycHgpO1xuICAgICAgICBwYWRkaW5nOiBwYyg0cHgpIHBjKDEycHgpIHBjKDVweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFkZC10by1jb250YWN0IHtcbiAgICBib3JkZXItcmFkaXVzOiB2dygycHgpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHBhZGRpbmc6IHZ3KDhweCkgdncoNnB4KSB2dyg4cHgpIHZ3KDZweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBib3JkZXItcmFkaXVzOiBwYygycHgpO1xuICAgICAgZm9udC1zaXplOiBwYygtLWZzLW0pO1xuICAgICAgcGFkZGluZzogcGMoMTNweCkgcGMoOHB4KSBwYygxM3B4KSBwYygyMHB4KTtcbiAgICB9XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiB2dygxOHB4KTtcbiAgICAgIGhlaWdodDogdncoMThweCk7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoJy9pbWFnZXMvaWNvbl9wbHVzLnN2ZycpO1xuICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gICAgICBhbmltYXRpb246IHJvdGF0ZSB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogcGMoMThweCk7XG4gICAgICAgIGhlaWdodDogcGMoMThweCk7XG4gICAgICB9XG4gICAgfVxuICAgICYuaXMtc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW9uLWFjY2VudCk7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHJvdGF0ZTogeiA0NWRlZztcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4ucHJvZHVjdC1zZWFyY2gtbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICBwYWRkaW5nOiB2dygyNHB4KSB2dygyMHB4KTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmc6IHVuc2V0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiBwYygxMzJweCk7XG4gICAgd2lkdGg6IHBjKDI4OHB4KTtcbiAgfVxuICAuc2VhcmNoLWJveCB7XG4gICAgLnNlYXJjaC1ib3gtaGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICAgICAgcGFkZGluZzogdncoMTBweCkgdncoMTZweCk7XG4gICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpIHZ3KDRweCkgMCAwO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtb24tYWNjZW50KTtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE2Ni42NjclO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBwYWRkaW5nOiBwYyg4cHgpIHBjKDE2cHgpO1xuICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDRweCkgcGMoNHB4KSAwIDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWFyY2gtYm94LWJvZHkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICBwYWRkaW5nOiB2dygxMnB4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2dyg0cHgpIHZ3KDRweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmc6IHBjKDEycHgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgcGMoNHB4KSBwYyg0cHgpO1xuICAgICAgfVxuICAgICAgLnNlYXJjaC1pbnB1dCB7XG4gICAgICAgIHBhZGRpbmc6IHZ3KDhweCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogdncoMTZweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXRlcnRpYXJ5KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIHBhZGRpbmc6IHBjKDRweCk7XG4gICAgICAgICAgZ2FwOiBwYygxNnB4KTtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZm9udDogaW5oZXJpdDtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3MCU7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWdyYXktZGFyayk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zZWFyY2gtYnRuIHtcbiAgICAgICAgICB3aWR0aDogdncoMjRweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgd2lkdGg6IHBjKDI0cHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNhdGVnb3J5LW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgLmNhdGVnb3J5LW5hdi1oZWFkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gICAgICBwYWRkaW5nOiB2dygxMHB4KSB2dygxNnB4KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCkgdncoNHB4KSAwIDA7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTY2LjY2NyU7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHBhZGRpbmc6IHBjKDhweCkgcGMoMTZweCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KSBwYyg0cHgpIDAgMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNhdGVnb3J5LW5hdi1saXN0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIHZ3KDRweCkgdncoNHB4KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIHBjKDRweCkgcGMoNHB4KTtcbiAgICAgIH1cbiAgICAgIC5jYXRlZ29yeS1uYXYtaXRlbSB7XG4gICAgICAgIHBhZGRpbmctaW5saW5lOiBwYygxNnB4KTtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgYXV0bztcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbWVkaXVtKTtcbiAgICAgICAgICBnYXA6IHZ3KDhweCk7XG4gICAgICAgICAgcGFkZGluZy1ibG9jazogdncoMTZweCk7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWVkaXVtKTtcbiAgICAgICAgICBmb250LXNpemU6IHZ3KC0tZnMtbSk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBnYXA6IHBjKDhweCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbSk7XG4gICAgICAgICAgICBwYWRkaW5nLWJsb2NrOiBwYygxNnB4KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFzay1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gICAgICAgICAgICB3aWR0aDogdncoMTRweCk7XG4gICAgICAgICAgICBtYXNrLWltYWdlOiB1cmwoL2ltYWdlcy9hcnJvd19yaWdodF9zY3JvbGwuc3ZnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLXByaW1hcnkpO1xuICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICAgICAgICAgICAgbWFzay1zaXplOiBhdXRvIHZ3KDE0cHgpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbWFzay1wb3NpdGlvbiB2YXIoLS10cmFuc2l0aW9uLXNwZWVkKSB2YXIoLS1iZXppZXIpO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEoKSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBwYygxNHB4KTtcbiAgICAgICAgICAgICAgbWFzay1zaXplOiBhdXRvIHBjKDE0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKGFueS1ob3ZlcjogaG92ZXIpIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgbWFzay1wb3NpdGlvbjogY2VudGVyIGxlZnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuICB9XG4gIC5idXR0b25zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogcGMoMjhweCk7XG4gICAgfVxuICAgIC5wX2J1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbi5wcm9kdWN0LXNlYXJjaC1ib2R5IHtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHdpZHRoOiBwYyg4OTZweCk7XG4gIH1cbn1cblxuXG4ucHJvZHVjdC1kZXRhaWwtaGVybyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICBwYWRkaW5nOiB2dygyOHB4KSB2dygyMHB4KSB2dyg0OHB4KTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIHBhZGRpbmc6IHBjKDI4cHgpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBwYygzOTZweCkgMWZyO1xuICAgIGdhcDogcGMoMjRweCk7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICB9XG59XG5cbiNwcm9kdWN0LWRldGFpbC1tYWluLXN3aXBlciB7XG4gIC5wcm9kdWN0LWRldGFpbC1tYWluIHtcbiAgICBpbWcge1xuICAgICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4jcHJvZHVjdC1kZXRhaWwtdGh1bWItc3dpcGVyIHtcbiAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBtYXJnaW4tdG9wOiBwYygxNnB4KTtcbiAgfVxuICAuc3dpcGVyLXdyYXBwZXIge1xuICAgIGdhcDogdncoNHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBnYXA6IHBjKDRweCk7XG4gICAgfVxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgd2lkdGg6IHZ3KDEwOXB4KSAhaW1wb3J0YW50O1xuICAgICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgd2lkdGg6IHBjKDEyOXB4KSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDQgLyAzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnByb2R1Y3QtZGV0YWlsLWluZm8ge1xuICBtYXJnaW4tdG9wOiB2dygyNHB4KTtcbiAgQGluY2x1ZGUgbXEge1xuICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICB9XG4gIC5wcm9kdWN0LWRldGFpbC1tb2RlbCB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLW51bSk7XG4gICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE3MS40MjklO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNTUlO1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC1kZXRhaWwtbmFtZSB7XG4gICAgbWFyZ2luOiB2dyg0cHgpIDAgMDtcbiAgICBmb250LXNpemU6IHZ3KC0tZnMtbCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTMzJTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtcHJpbWFyeSk7XG4gICAgd29yZC1icmVhazogYXV0by1waHJhc2U7XG4gICAgYm9yZGVyLWJvdHRvbTogdncoM3B4KSBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItZGFyayk7XG4gICAgcGFkZGluZy1ib3R0b206IHZ3KDIwcHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDhweCk7XG4gICAgICBmb250LXNpemU6IHBjKC0tZnMteHh4eGwpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHBjKDMwcHgpO1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogcGMoM3B4KTtcbiAgICB9XG4gIH1cbiAgLnByb2R1Y3QtZGV0YWlsLXNwZWNzIHtcbiAgICBtYXJnaW4tdG9wOiB2dygyMHB4KTtcbiAgICBmb250LXNpemU6IHZ3KC0tZnMtcyk7XG4gICAgbGluZS1oZWlnaHQ6IDE3MS40MjklO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgbWFyZ2luLXRvcDogcGMoMzZweCk7XG4gICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICBsaW5lLWhlaWdodDogMTU1LjU1NiU7XG4gICAgfVxuICB9XG4gIC5wcm9kdWN0LWRldGFpbC1hZGQtY29udGFjdCB7XG4gICAgbWFyZ2luLXRvcDogdncoMzZweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDQ4cHgpO1xuICAgIH1cbiAgICAudGlwIHtcbiAgICAgIGJvdHRvbTogdncoNDBweCk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGJvdHRvbTogcGMoNThweCk7XG4gICAgICB9XG4gICAgfVxuICAgIC5hZGQtdG8tY29udGFjdCB7XG4gICAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICAgICAgd2lkdGg6IHZ3KDIwMHB4KTtcbiAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgIHBhZGRpbmctYmxvY2s6IHZ3KDExcHgpO1xuICAgICAgcGFkZGluZy1yaWdodDogdncoOHB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWJyYW5kLWxpZ2h0Ymx1ZSk7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDIwcHgpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBwYygxNHB4KTtcbiAgICAgIH1cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYnJhbmQtbGlnaHRibHVlKTtcbiAgICAgIH1cbiAgICAgICYuaXMtc2VsZWN0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dC1vbi1hY2NlbnQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wcm9kdWN0LWRldGFpbC1kb3dubG9hZC1jYXRhbG9nIHtcbiAgICBtYXJnaW4tdG9wOiB2dygyMHB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBtYXJnaW4tdG9wOiBwYygyNHB4KTtcbiAgICB9XG4gICAgLnBfYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gICAgICB3aWR0aDogdncoMjAwcHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3Rfc2VhcmNoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gIHBhZGRpbmc6IHZ3KDI4cHgpIHZ3KDIwcHgpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgcGFkZGluZzogcGMoMjBweCkgcGMoMjBweCkgcGMoMjhweCk7XG4gIH1cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJiArIHAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uc2VhcmNoLXNlY3Rpb24ge1xuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICAgIGdhcDogdncoMTJweCk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHZ3KC0tZnMtbSk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTc1JTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBmb250LXNpemU6IHBjKC0tZnMteGwpO1xuICAgICAgZ2FwOiBwYygxMnB4KTtcbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogdncoNHB4KTtcbiAgICAgIGhlaWdodDogdncoMjhweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1wcmltYXJ5KTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgd2lkdGg6IHBjKDRweCk7XG4gICAgICAgIGhlaWdodDogcGMoMzZweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yYWRpby1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiB2dygxNHB4KSB2dygxNnB4KTtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBtYXJnaW4tdG9wOiBwYygyNHB4KTtcbiAgICAgIGdhcDogcGMoMjBweCkgcGMoMjBweCk7XG4gICAgfVxuICAgIC5yYWRpby1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZ2FwOiB2dyg0cHgpO1xuICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICBnYXA6IHBjKDRweCk7XG4gICAgICB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICB0cmFuc2xhdGU6IDAgcGMoMXB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnJhZGlvLWxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXhzKTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnJlZmluZS1zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogdncoMTZweCk7XG4gIEBpbmNsdWRlIG1xIHtcbiAgICBtYXJnaW4tdG9wOiBwYygyNHB4KTtcbiAgfVxuICAmLmlzLWRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjQ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLnJlZmluZS10b2dnbGUge1xuICAgIC5yZWZpbmUtdG9nZ2xlLWJ0biB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDJweCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItbWVkaXVtKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IHZ3KDEwcHgpO1xuICAgICAgcGFkZGluZzogdncoOHB4KTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgICBmb250LXNpemU6IHZ3KC0tZnMteHMpO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMzMuMzMzJTtcbiAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDJweCk7XG4gICAgICAgIGdhcDogdW5zZXQ7XG4gICAgICAgIHBhZGRpbmc6IHBjKDZweCkgcGMoMTZweCkgcGMoOHB4KTtcbiAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLW0pO1xuICAgICAgfVxuICAgICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDAuMztcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLW9wZW4ge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcm90YXRlOiB6IDI3MGRlZztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiB2dygxNHB4KTtcbiAgICAgICAgaGVpZ2h0OiB2dygxNHB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2Fycm93X3JpZ2h0LnN2ZycpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgcm90YXRlOiB6IDkwZGVnO1xuICAgICAgICB0cmFuc2l0aW9uOiByb3RhdGUgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJlZmluZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogdncoMTZweCk7XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgcGFkZGluZy10b3A6IHBjKDE2cHgpO1xuICAgIH1cbiAgICAuZmlsdGVyLXJvdyB7XG4gICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcGMoMTU2cHgpIDFmcjtcbiAgICAgICAgZ2FwOiBwYygxMnB4KTtcbiAgICAgICAgbWFyZ2luLXRvcDogcGMoMTZweCk7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IHVuc2V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmlsdGVyLWxhYmVsIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdncoMnB4KTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYnJhbmQtdGVydGlhcnkpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tZWRpdW0pO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14eHMpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMjAwJTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHBjKDJweCk7XG4gICAgICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNoZWNrYm94LWdyb3VwIHtcbiAgICAgICAgcGFkZGluZy1ibG9jazogdncoOHB4KSB2dygxMnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDRweCk7XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoLmdyaWQtbGluZSkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIGdhcDogdncoOHB4KSB2dygxMnB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBnYXA6IHBjKDhweCkgcGMoMTJweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZ3JpZC1saW5lIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICBnYXA6IHZ3KDhweCkgdncoOHB4KTtcbiAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICBnYXA6IHBjKDRweCkgcGMoMTJweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jaGVja2JveC1pdGVtIHtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgdHJhbnNsYXRlOiAwIHZ3KDFweCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgICAgICB0cmFuc2xhdGU6IDAgcGMoMXB4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNoZWNrYm94LWxhYmVsIHtcbiAgICAgICAgICAgICAgbWluLXdpZHRoOiB2dygyNHB4KTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogcGMoNDJweCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNoZWNrYm94LWl0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBnYXA6IHZ3KDRweCk7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgZ2FwOiBwYygycHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhhcyhpbnB1dDpkaXNhYmxlZCkge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1hcmdpbjogdW5zZXQ7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIHRyYW5zbGF0ZTogMCBwYygxcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY2hlY2tib3gtbGFiZWwge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXh4cyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgICBcbiAgfVxuICAubm90ZS10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiB2dyg0cHgpO1xuICAgIGZvbnQtc2l6ZTogdncoLS1mcy14eHMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNzAlO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDE2cHgpO1xuICAgICAgZm9udC1zaXplOiBwYygtLWZzLXMpO1xuICAgIH1cbiAgfVxufVxuLnNlYXJjaC1idXR0b24td3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IHZ3KDE2cHgpO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgbWFyZ2luLXRvcDogcGMoMjBweCk7XG4gIH1cbiAgLnNlYXJjaC1idXR0b24ge1xuICAgIHdpZHRoOiB2dygxNDJweCk7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEge1xuICAgICAgd2lkdGg6IHBjKDE3MnB4KTtcbiAgICB9XG4gIH1cblxufVxuLnByb2R1Y3Qtc2VhcmNoLXJlc3VsdCB7XG4gIFxuXG5cbiAgLmhlYWRpbmcge1xuICAgIG1hcmdpbi10b3A6IHZ3KDI0cHgpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LW1lZGl1bSk7XG4gICAgbWFyZ2luLWlubGluZTogdncoMjBweCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZ3KDEycHgpO1xuICAgIGJvcmRlci1ib3R0b206IHZ3KDNweCkgc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLWRhcmspO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IHZ3KC0tZnMtbCk7XG4gICAgbGluZS1oZWlnaHQ6IDE1NSU7XG4gICAgd29yZC1icmVhazogYXV0by1waHJhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBAaW5jbHVkZSBtcSB7XG4gICAgICBtYXJnaW4tdG9wOiBwYyg4MHB4KTtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IHBjKDNweCk7XG4gICAgICBmb250LXNpemU6IHBjKC0tZnMteHhsKTtcbiAgICAgIG1hcmdpbi1pbmxpbmU6IHVuc2V0O1xuICAgICAgcGFkZGluZy1ib3R0b206IHBjKDEycHgpO1xuICAgIH1cbiAgfVxuICAuZmVhdHVyZSB7XG4gICAgbWFyZ2luLXRvcDogdncoMTJweCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZ3KDIwcHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDI0cHgpO1xuICAgICAgcGFkZGluZy1pbmxpbmU6IHVuc2V0O1xuICAgIH1cbiAgfVxuICAuYmFjay1idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IHZ3KDU2cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDkwcHgpO1xuICAgIH1cbiAgICAucF9idXR0b24ge1xuICAgICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgICB9XG4gIH1cbiAgLnByb2R1Y3QtbGlzdCB7XG4gICAgcGFkZGluZy1pbmxpbmU6IHZ3KDIwcHgpO1xuICAgIG1hcmdpbi10b3A6IHZ3KDM2cHgpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBnYXA6IHZ3KDI4cHgpIHZ3KDE1cHgpO1xuICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgIHBhZGRpbmctaW5saW5lOiB1bnNldDtcbiAgICAgIG1hcmdpbi10b3A6IHBjKDM2cHgpO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgIGdhcDogcGMoMjhweCkgcGMoNnB4KTtcbiAgICB9XG4gICAgJjpoYXMoLnByb2R1Y3Qtbm9uZSkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAucHJvZHVjdC1ub25lIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XG4gICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy1zKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICBwYWRkaW5nLWJsb2NrOiB2dygzMnB4KTtcbiAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1sKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICAgIHBhZGRpbmctYmxvY2s6IHBjKDY0cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LWl0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjpoYXMoLmFkZC10by1jb250YWN0KSB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogc3ViZ3JpZDtcbiAgICAgICAgZ3JpZC1yb3c6IHNwYW4gMjtcbiAgICAgICAgZ2FwOiB2dyg4cHgpO1xuICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgZ2FwOiBwYyg4cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2UpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2dyg0cHgpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiBwYyg0cHgpO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAoYW55LWhvdmVyOiBob3Zlcikge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1icmFuZC1saWdodGJsdWUpO1xuICAgICAgICAgICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHNjYWxlOiAxO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZ3KDRweCkgdncoNHB4KSAwIDA7XG4gICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcGMoNHB4KSBwYyg0cHgpIDAgMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDQgLyAzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogc2NhbGUgdmFyKC0tdHJhbnNpdGlvbi1zcGVlZCkgdmFyKC0tYmV6aWVyKTtcbiAgICAgICAgICAgIHNjYWxlOiAxLjA1O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdC10aXRsZSB7XG4gICAgICAgICAgcGFkZGluZzogdncoNnB4KSB2dyg4cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIG1xIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHBjKDhweCkgcGMoMTJweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2dygtLWZzLXMpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTclO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHBjKC0tZnMtbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wcm9kdWN0LW51bWJlciB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tbnVtKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdncoLS1mcy14cyk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTgzLjMzMyU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtcSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcGMoLS1mcy1tKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5mbG9hdEJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC40MCk7XG4gIHBhZGRpbmc6IHZ3KDM2cHgpIHZ3KDI0cHgpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNsYXRlIHZhcigtLXRyYW5zaXRpb24tc3BlZWQpIHZhcigtLWJlemllcik7XG4gIHRyYW5zbGF0ZTogMCAxMDAlO1xuICBAaW5jbHVkZSBtcSB7XG4gICAgcGFkZGluZzogcGMoMzZweCk7XG4gIH1cbiAgJi5pcy1zaG93IHtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxuICAucF9idXR0b24ge1xuICAgIG1hcmdpbi1pbmxpbmU6IGF1dG87XG4gIH1cblxufSIsIi8qKlxuICogU3dpcGVyIDExLjEuMTRcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjQgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogU2VwdGVtYmVyIDEyLCAyMDI0XG4gKi9cblxuIEBmb250LWZhY2V7Zm9udC1mYW1pbHk6c3dpcGVyLWljb25zO3NyYzp1cmwoJ2RhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCBkMDlHUmdBQkFBQUFBQVpnQUJBQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdSbFJOQUFBR1JBQUFBQm9BQUFBY2k2cUhrVWRFUlVZQUFBV2dBQUFBSXdBQUFDUUFZQUJYUjFCUFV3QUFCaFFBQUFBdUFBQUFOdUFZNyt4SFUxVkNBQUFGeEFBQUFGQUFBQUJtMmZQY3pVOVRMeklBQUFIY0FBQUFTZ0FBQUdCUDlWNVJZMjFoY0FBQUFrUUFBQUNJQUFBQll0NkYwY0JqZG5RZ0FBQUN6QUFBQUFRQUFBQUVBQkVCUkdkaGMzQUFBQVdZQUFBQUNBQUFBQWovL3dBRFoyeDVaZ0FBQXl3QUFBRE1BQUFEMk1IdHJ5Vm9aV0ZrQUFBQmJBQUFBREFBQUFBMkUyK2VvV2hvWldFQUFBR2NBQUFBSHdBQUFDUUM5Z0R6YUcxMGVBQUFBaWdBQUFBWkFBQUFyZ0prQUJGc2IyTmhBQUFDMEFBQUFGb0FBQUJhRlFBVUdHMWhlSEFBQUFHOEFBQUFId0FBQUNBQWNBQkFibUZ0WlFBQUEvZ0FBQUU1QUFBQ1h2RmRCd2x3YjNOMEFBQUZOQUFBQUdJQUFBQ0U1czc0aFhqYVkyQmtZR0FBWXBmNUh1L2orVzIrTW5Bek1ZREF6YVg2UWpENi80Ly9CeGo1R0E4QXVSd01ZR2tBUHl3TDEzamFZMkJrWUdBODhQOEFneDRqKy84ZlFEWWZBMUFFQldnREFJQjJCT29BZU5wallHUmdZTkJoNEdkZ1lnQUJFTW5JQUJKellOQURDUUFBQ1dnQXNRQjQybU5nWWZ6Q09JR0JsWUdCMFljeGpZR0J3UjFLZjJXUVpHaGhZR0JpWUdWbWdBRkdCaVFRa09hYXd0REFvTUJReFhqZy93RUdQY1lEREE0d05VQTJDQ2d3c0FBQU80RUw2Z0FBZU5wajJNMGd5QUFDcXhnR05XQmtaMkQ0L3dNQSt4a0RkZ0FBQUhqYVkyQmdZR2FBWUJrR1JnWVFpQUh5R01GOEZnWUhJTTNEd01IQUJHUXJNT2d5V0RMRU0xVDkvdzhVQmZFTWdMekUvLy8vUC81Ly9mL1YveHYrcjRlYUFBZU1iQXh3SVVZbUlNSEVnS1lBWWpVY3NEQXdzTEt4YzNCeWNmUHc4akVRQS9nWkJBU0ZoRVZFeGNRbEpLV2taV1RsNUJVVWxaUlZWTlhVTlRRWkJnTUFBTVIrRStnQUVRRkVBQUFBS2dBcUFDb0FOQUErQUVnQVVnQmNBR1lBY0FCNkFJUUFqZ0NZQUtJQXJBQzJBTUFBeWdEVUFONEE2QUR5QVB3QkJnRVFBUm9CSkFFdUFUZ0JRZ0ZNQVZZQllBRnFBWFFCZmdHSUFaSUJuQUdtQWJJQnpnSHNBQUI0MnUyTk1RNkNVQXlHVzU2OHg5QW5lWVlnbTRNSmJoS0ZhRXhJT0FWWDhBcGV3U3Q0QmljNEFmZUFpZDNWT0JpeER4ZlBZRXphNU8rWGZpMDRZQURnZ2lVSVVMQ3VFSks4VmhPNGJTdnBkbmt0SEk1UUNZdGRpMnNsOFpuWGFIbHFVck5LemRLY1Q4Y2pscStyd1pTdklWY3pOaWV6c2ZuUC91em5tZlBGQk5PRE0ySzdNVFE0NVlFQVpxR1A4MUFtR0djRjNpUHFPb3AwcjFTUFRhVGJWa2ZVZTRIWGo5N3dZRSt5TndXWXh3V3U0djF1Z1dIZ28zUzFYZFpFVnFXTTdFVDBjZm5MR3hXZmtnUjQybzJQdldyRE1CU0ZqL0lITGFGMHpLalJnZGlWTXdTY05SQW9XVW9INzhZMmljQi95SVkwOUFuNkFIMkJkdS9VQit5eG9wWXNoUWlFdm52dTBkVVJnRHQ4UWVDOFBEdzdGcGppM2ZFQTR6L1BFSjZZT0I1aEtoNGRqM0V2WGh4UHFIL1NLVVkzcko3c3JaNEZabmgxUE1BdFBod1A2ZmwyUE1KTVBEZ2VRNHJZOFlUNkd6YW8wZUFFQTQwOUR1Z2dtVG5Gbk9jU0NpRWlMTWd4Q2lUSTZDcTVEWlVkM1FtcDEwdk8wTGFMVGQyY2pONGZPdW1sYzdsVVliU1FjWkZrdXRSRzdnNkpLWkt5MFJtZExZNjgwQ0RuRUorVU1rcEZGZTFSTjdueGRWcFhyQzRhVHRuYXVyT25ZZXJjWmcyWVZtTE4vZC9nY3pmRWltckUvZnMvYk91cTI5Wm1uOHRsb09SYVhnWmdHYTc4eU85L2NuWG0yQnBhR3ZxMjVEdjlTNEU5KzVTSWM5UHF1cEpLaFlGU1NsNDcrUWNyMW1ZTkFBQUFlTnB0dzBjS3drQUFBTURaSkE4UTdPVUp2a0xzUGZaNnpGVkVSUHk4cUhoMllFUiszaS9CUDgzdklCTEx5U3NvS2ltcnFLcXBhMmhwNitqcTZSc1lHaG1ibUpxWlN5MHNyYXh0Yk8zc0hSeWRuRU1VNHVSNnl4N0pKWHZlUDdXckR5Y0FBQUFBQUFILy93QUNlTnBqWUdSZ1lPQUJZaGtnWmdKQ1pnWk5Ca1lHTFFadElKc0ZMTVlBQUF3M0FMZ0FlTm9saXpFS2dEQVFCQ2NoUmJDMnNGRVIwWUQ2cVZRaUJDdi9IOWV6R0k2WjVYQkF3OENCSy9tNWlRUVZhdVZiWExuT3JNWnYyb0xkS0ZhOFBqdXJ1MmhKekdhYm1PU0x6Tk16dnV0cEIzTjQybU5nWkdCZzRHS1FZekJoWU14SkxNbGo0R0JnQVlvdy9QL1BBSkpoTE02c1NvV0tmV0NBQXdEQWpnYlJBQUI0Mm1OZ1lHQmtBSUliQ1pvNUlQcm1VbjBoR0EwQU84RUZUUUFBJyk7Zm9udC13ZWlnaHQ6NDAwO2ZvbnQtc3R5bGU6bm9ybWFsfTpyb290ey0tc3dpcGVyLXRoZW1lLWNvbG9yOiMwMDdhZmZ9Omhvc3R7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jazttYXJnaW4tbGVmdDphdXRvO21hcmdpbi1yaWdodDphdXRvO3otaW5kZXg6MX0uc3dpcGVye21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG87cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuO2xpc3Qtc3R5bGU6bm9uZTtwYWRkaW5nOjA7ei1pbmRleDoxO2Rpc3BsYXk6YmxvY2t9LnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXdyYXBwZXJ7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zd2lwZXItd3JhcHBlcntwb3NpdGlvbjpyZWxhdGl2ZTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3otaW5kZXg6MTtkaXNwbGF5OmZsZXg7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm07dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246dmFyKC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24saW5pdGlhbCk7Ym94LXNpemluZzpjb250ZW50LWJveH0uc3dpcGVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSwuc3dpcGVyLWlvcyAuc3dpcGVyLXNsaWRlLC5zd2lwZXItd3JhcHBlcnt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMHB4LDAsMCl9LnN3aXBlci1ob3Jpem9udGFse3RvdWNoLWFjdGlvbjpwYW4teX0uc3dpcGVyLXZlcnRpY2Fse3RvdWNoLWFjdGlvbjpwYW4teH0uc3dpcGVyLXNsaWRle2ZsZXgtc2hyaW5rOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybTtkaXNwbGF5OmJsb2NrfS5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5re3Zpc2liaWxpdHk6aGlkZGVufS5zd2lwZXItYXV0b2hlaWdodCwuc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZXtoZWlnaHQ6YXV0b30uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVye2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7dHJhbnNpdGlvbi1wcm9wZXJ0eTp0cmFuc2Zvcm0saGVpZ2h0fS5zd2lwZXItYmFja2ZhY2UtaGlkZGVuIC5zd2lwZXItc2xpZGV7dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCk7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0uc3dpcGVyLTNkLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXJ7cGVyc3BlY3RpdmU6MTIwMHB4fS5zd2lwZXItM2QgLnN3aXBlci13cmFwcGVye3RyYW5zZm9ybS1zdHlsZTpwcmVzZXJ2ZS0zZH0uc3dpcGVyLTNke3BlcnNwZWN0aXZlOjEyMDBweH0uc3dpcGVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3csLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRle3RyYW5zZm9ybS1zdHlsZTpwcmVzZXJ2ZS0zZH0uc3dpcGVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcntvdmVyZmxvdzphdXRvO3Njcm9sbGJhci13aWR0aDpub25lOy1tcy1vdmVyZmxvdy1zdHlsZTpub25lfS5zd2lwZXItY3NzLW1vZGU+LnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmV9LnN3aXBlci1jc3MtbW9kZT4uc3dpcGVyLXdyYXBwZXI+LnN3aXBlci1zbGlkZXtzY3JvbGwtc25hcC1hbGlnbjpzdGFydCBzdGFydH0uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItd3JhcHBlcntzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5fS5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcntzY3JvbGwtc25hcC10eXBlOnkgbWFuZGF0b3J5fS5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWZyZWUtbW9kZT4uc3dpcGVyLXdyYXBwZXJ7c2Nyb2xsLXNuYXAtdHlwZTpub25lfS5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWZyZWUtbW9kZT4uc3dpcGVyLXdyYXBwZXI+LnN3aXBlci1zbGlkZXtzY3JvbGwtc25hcC1hbGlnbjpub25lfS5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkPi5zd2lwZXItd3JhcHBlcjo6YmVmb3Jle2NvbnRlbnQ6Jyc7ZmxleC1zaHJpbms6MDtvcmRlcjo5OTk5fS5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWNlbnRlcmVkPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOmNlbnRlciBjZW50ZXI7c2Nyb2xsLXNuYXAtc3RvcDphbHdheXN9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci13cmFwcGVyPi5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGR7bWFyZ2luLWlubGluZS1zdGFydDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci13cmFwcGVyOjpiZWZvcmV7aGVpZ2h0OjEwMCU7bWluLWhlaWdodDoxcHg7d2lkdGg6dmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcil9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxke21hcmdpbi1ibG9jay1zdGFydDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcjo6YmVmb3Jle3dpZHRoOjEwMCU7bWluLXdpZHRoOjFweDtoZWlnaHQ6dmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcil9LnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdywuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6MTB9LnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvd3tiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjE1KX0uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnR7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gbGVmdCxyZ2JhKDAsMCwwLC41KSxyZ2JhKDAsMCwwLDApKX0uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0e2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LHJnYmEoMCwwLDAsLjUpLHJnYmEoMCwwLDAsMCkpfS5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9we2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIHRvcCxyZ2JhKDAsMCwwLC41KSxyZ2JhKDAsMCwwLDApKX0uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbXtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBib3R0b20scmdiYSgwLDAsMCwuNSkscmdiYSgwLDAsMCwwKSl9LnN3aXBlci1sYXp5LXByZWxvYWRlcnt3aWR0aDo0MnB4O2hlaWdodDo0MnB4O3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6NTAlO3RvcDo1MCU7bWFyZ2luLWxlZnQ6LTIxcHg7bWFyZ2luLXRvcDotMjFweDt6LWluZGV4OjEwO3RyYW5zZm9ybS1vcmlnaW46NTAlO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXI6NHB4IHNvbGlkIHZhcigtLXN3aXBlci1wcmVsb2FkZXItY29sb3IsdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyLXRvcC1jb2xvcjp0cmFuc3BhcmVudH0uc3dpcGVyLXdhdGNoLXByb2dyZXNzIC5zd2lwZXItc2xpZGUtdmlzaWJsZSAuc3dpcGVyLWxhenktcHJlbG9hZGVyLC5zd2lwZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpIC5zd2lwZXItbGF6eS1wcmVsb2FkZXJ7YW5pbWF0aW9uOnN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXJ9LnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZXstLXN3aXBlci1wcmVsb2FkZXItY29sb3I6I2ZmZn0uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrey0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjojMDAwfUBrZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluezAle3RyYW5zZm9ybTpyb3RhdGUoMGRlZyl9MTAwJXt0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fS5zd2lwZXItdmlydHVhbCAuc3dpcGVyLXNsaWRley13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47dHJhbnNmb3JtOnRyYW5zbGF0ZVooMCl9LnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXI6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3BvaW50ZXItZXZlbnRzOm5vbmV9LnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItaG9yaXpvbnRhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVye2hlaWdodDoxcHg7d2lkdGg6dmFyKC0tc3dpcGVyLXZpcnR1YWwtc2l6ZSl9LnN3aXBlci12aXJ0dWFsLnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWwgLnN3aXBlci13cmFwcGVyOjphZnRlcnt3aWR0aDoxcHg7aGVpZ2h0OnZhcigtLXN3aXBlci12aXJ0dWFsLXNpemUpfTpyb290ey0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZTo0NHB4fS5zd2lwZXItYnV0dG9uLW5leHQsLnN3aXBlci1idXR0b24tcHJldntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6dmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCw1MCUpO3dpZHRoOmNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkvIDQ0ICogMjcpO2hlaWdodDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTttYXJnaW4tdG9wOmNhbGMoMHB4IC0gKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpLyAyKSk7ei1pbmRleDoxMDtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6dmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSl9LnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkLC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZHtvcGFjaXR5Oi4zNTtjdXJzb3I6YXV0bztwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1oaWRkZW4sLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWhpZGRlbntvcGFjaXR5OjA7Y3Vyc29yOmF1dG87cG9pbnRlci1ldmVudHM6bm9uZX0uc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLW5hdmlnYXRpb24tZGlzYWJsZWQgLnN3aXBlci1idXR0b24tcHJldntkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5zd2lwZXItYnV0dG9uLW5leHQgc3ZnLC5zd2lwZXItYnV0dG9uLXByZXYgc3Zne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb250YWluO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQgc3ZnLC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYgc3Zne3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0uc3dpcGVyLWJ1dHRvbi1wcmV2LC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHR7bGVmdDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsMTBweCk7cmlnaHQ6YXV0b30uc3dpcGVyLWJ1dHRvbi1uZXh0LC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXZ7cmlnaHQ6dmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LDEwcHgpO2xlZnQ6YXV0b30uc3dpcGVyLWJ1dHRvbi1sb2Nre2Rpc3BsYXk6bm9uZX0uc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLC5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXJ7Zm9udC1mYW1pbHk6c3dpcGVyLWljb25zO2ZvbnQtc2l6ZTp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTt0ZXh0LXRyYW5zZm9ybTpub25lIWltcG9ydGFudDtsZXR0ZXItc3BhY2luZzowO2ZvbnQtdmFyaWFudDppbml0aWFsO2xpbmUtaGVpZ2h0OjF9LnN3aXBlci1idXR0b24tcHJldjphZnRlciwuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVye2NvbnRlbnQ6J3ByZXYnfS5zd2lwZXItYnV0dG9uLW5leHQsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldntyaWdodDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsMTBweCk7bGVmdDphdXRvfS5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldjphZnRlcntjb250ZW50OiduZXh0J30uc3dpcGVyLXBhZ2luYXRpb257cG9zaXRpb246YWJzb2x1dGU7dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNpdGlvbjouM3Mgb3BhY2l0eTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO3otaW5kZXg6MTB9LnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbntvcGFjaXR5OjB9LnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkPi5zd2lwZXItcGFnaW5hdGlvbiwuc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWR7ZGlzcGxheTpub25lIWltcG9ydGFudH0uc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwuc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLC5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbntib3R0b206dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYm90dG9tLDhweCk7dG9wOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXRvcCxhdXRvKTtsZWZ0OjA7d2lkdGg6MTAwJX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWlje292ZXJmbG93OmhpZGRlbjtmb250LXNpemU6MH0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7dHJhbnNmb3JtOnNjYWxlKC4zMyk7cG9zaXRpb246cmVsYXRpdmV9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoMSl9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1tYWlue3RyYW5zZm9ybTpzY2FsZSgxKX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXZ7dHJhbnNmb3JtOnNjYWxlKC42Nil9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXZ7dHJhbnNmb3JtOnNjYWxlKC4zMyl9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0e3RyYW5zZm9ybTpzY2FsZSguNjYpfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0e3RyYW5zZm9ybTpzY2FsZSguMzMpfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7d2lkdGg6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoLHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLDhweCkpO2hlaWdodDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0LHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLDhweCkpO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JvcmRlci1yYWRpdXM6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWJvcmRlci1yYWRpdXMsNTAlKTtiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1jb2xvciwjMDAwKTtvcGFjaXR5OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAuMil9YnV0dG9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHtib3JkZXI6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7Ym94LXNoYWRvdzpub25lOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZX0uc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7Y3Vyc29yOnBvaW50ZXJ9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpvbmx5LWNoaWxke2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmV7b3BhY2l0eTp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKX0uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRze3JpZ2h0OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXJpZ2h0LDhweCk7bGVmdDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1sZWZ0LGF1dG8pO3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDBweCwtNTAlLDApfS5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e21hcmdpbjp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwLDZweCkgMDtkaXNwbGF5OmJsb2NrfS5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYywuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pY3t0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3dpZHRoOjhweH0uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RyYW5zaXRpb246LjJzIHRyYW5zZm9ybSwuMnMgdG9wfS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHttYXJnaW46MCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXAsNHB4KX0uc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLC5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWlje2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3doaXRlLXNwYWNlOm5vd3JhcH0uc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHt0cmFuc2l0aW9uOi4ycyB0cmFuc2Zvcm0sLjJzIGxlZnR9LnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1ydGw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e3RyYW5zaXRpb246LjJzIHRyYW5zZm9ybSwuMnMgcmlnaHR9LnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9ue2NvbG9yOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLWNvbG9yLGluaGVyaXQpfS5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhcntiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWJnLWNvbG9yLHJnYmEoMCwwLDAsLjI1KSk7cG9zaXRpb246YWJzb2x1dGV9LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxse2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7dHJhbnNmb3JtOnNjYWxlKDApO3RyYW5zZm9ybS1vcmlnaW46bGVmdCB0b3B9LnN3aXBlci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxse3RyYW5zZm9ybS1vcmlnaW46cmlnaHQgdG9wfS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRle3dpZHRoOjEwMCU7aGVpZ2h0OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLXNpemUsNHB4KTtsZWZ0OjA7dG9wOjB9LnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXJ7d2lkdGg6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSw0cHgpO2hlaWdodDoxMDAlO2xlZnQ6MDt0b3A6MH0uc3dpcGVyLXBhZ2luYXRpb24tbG9ja3tkaXNwbGF5Om5vbmV9LnN3aXBlci1zY3JvbGxiYXJ7Ym9yZGVyLXJhZGl1czp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvcmRlci1yYWRpdXMsMTBweCk7cG9zaXRpb246cmVsYXRpdmU7dG91Y2gtYWN0aW9uOm5vbmU7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJnLWNvbG9yLHJnYmEoMCwwLDAsLjEpKX0uc3dpcGVyLXNjcm9sbGJhci1kaXNhYmxlZD4uc3dpcGVyLXNjcm9sbGJhciwuc3dpcGVyLXNjcm9sbGJhci5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVke2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItc2Nyb2xsYmFyLC5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItaG9yaXpvbnRhbHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OnZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LDElKTtib3R0b206dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1ib3R0b20sNHB4KTt0b3A6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci10b3AsYXV0byk7ei1pbmRleDo1MDtoZWlnaHQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLDRweCk7d2lkdGg6Y2FsYygxMDAlIC0gMiAqIHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LDElKSl9LnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci12ZXJ0aWNhbCwuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItc2Nyb2xsYmFye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1sZWZ0LGF1dG8pO3JpZ2h0OnZhcigtLXN3aXBlci1zY3JvbGxiYXItcmlnaHQsNHB4KTt0b3A6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsMSUpO3otaW5kZXg6NTA7d2lkdGg6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaXplLDRweCk7aGVpZ2h0OmNhbGMoMTAwJSAtIDIgKiB2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwxJSkpfS5zd2lwZXItc2Nyb2xsYmFyLWRyYWd7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtwb3NpdGlvbjpyZWxhdGl2ZTtiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1zY3JvbGxiYXItZHJhZy1iZy1jb2xvcixyZ2JhKDAsMCwwLC41KSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvcmRlci1yYWRpdXMsMTBweCk7bGVmdDowO3RvcDowfS5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFne2N1cnNvcjptb3ZlfS5zd2lwZXItc2Nyb2xsYmFyLWxvY2t7ZGlzcGxheTpub25lfS5zd2lwZXItem9vbS1jb250YWluZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7dGV4dC1hbGlnbjpjZW50ZXJ9LnN3aXBlci16b29tLWNvbnRhaW5lcj5jYW52YXMsLnN3aXBlci16b29tLWNvbnRhaW5lcj5pbWcsLnN3aXBlci16b29tLWNvbnRhaW5lcj5zdmd7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDoxMDAlO29iamVjdC1maXQ6Y29udGFpbn0uc3dpcGVyLXNsaWRlLXpvb21lZHtjdXJzb3I6bW92ZTt0b3VjaC1hY3Rpb246bm9uZX0uc3dpcGVyIC5zd2lwZXItbm90aWZpY2F0aW9ue3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt6LWluZGV4Oi0xMDAwfS5zd2lwZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlcnt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dDttYXJnaW46MCBhdXRvfS5zd2lwZXItZ3JpZD4uc3dpcGVyLXdyYXBwZXJ7ZmxleC13cmFwOndyYXB9LnN3aXBlci1ncmlkLWNvbHVtbj4uc3dpcGVyLXdyYXBwZXJ7ZmxleC13cmFwOndyYXA7ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5zd2lwZXItZmFkZS5zd2lwZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGV7dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1vdXR9LnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGV7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uLXByb3BlcnR5Om9wYWNpdHl9LnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZXtwb2ludGVyLWV2ZW50czphdXRvfS5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZXtwb2ludGVyLWV2ZW50czphdXRvfS5zd2lwZXIuc3dpcGVyLWN1YmV7b3ZlcmZsb3c6dmlzaWJsZX0uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47ei1pbmRleDoxO3Zpc2liaWxpdHk6aGlkZGVuO3RyYW5zZm9ybS1vcmlnaW46MCAwO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCV9LnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItY3ViZS5zd2lwZXItcnRsIC5zd2lwZXItc2xpZGV7dHJhbnNmb3JtLW9yaWdpbjoxMDAlIDB9LnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZXtwb2ludGVyLWV2ZW50czphdXRvfS5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0LC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXZ7cG9pbnRlci1ldmVudHM6YXV0bzt2aXNpYmlsaXR5OnZpc2libGV9LnN3aXBlci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3d7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbTowcHg7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvcGFjaXR5Oi42O3otaW5kZXg6MH0uc3dpcGVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdzpiZWZvcmV7Y29udGVudDonJztiYWNrZ3JvdW5kOiMwMDA7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO2JvdHRvbTowO3JpZ2h0OjA7ZmlsdGVyOmJsdXIoNTBweCl9LnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCsuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOmF1dG87dmlzaWJpbGl0eTp2aXNpYmxlfS5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LC5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1jdWJlLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9we3otaW5kZXg6MDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufS5zd2lwZXIuc3dpcGVyLWZsaXB7b3ZlcmZsb3c6dmlzaWJsZX0uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47ei1pbmRleDoxfS5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGV7cG9pbnRlci1ldmVudHM6bm9uZX0uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG99LnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3B7ei1pbmRleDowOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59LnN3aXBlci1jcmVhdGl2ZSAuc3dpcGVyLXNsaWRley13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHksaGVpZ2h0fS5zd2lwZXIuc3dpcGVyLWNhcmRze292ZXJmbG93OnZpc2libGV9LnN3aXBlci1jYXJkcyAuc3dpcGVyLXNsaWRle3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyIGJvdHRvbTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO292ZXJmbG93OmhpZGRlbn0iXX0= */
