@charset "UTF-8";
/* Noto Sans | Regular */
@font-face {
  font-family: "Noto Sans";
  font-style: normal;
  font-weight: 400;
  src: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Regular.eae34fa8.ttf) format("truetype");
}
/* @font-face {
    font-family: 'Noto Sans';
    font-style: italic;
    font-weight: 400;
    src: url('../../../fonts/Noto_Sans/NotoSans-RegularItalic.ttf') format('truetype');
} */
/* Noto Sans | Bold */
@font-face {
  font-family: "Noto Sans";
  font-style: normal;
  font-weight: 700;
  src: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Bold.23e70cfb.ttf) format("truetype");
}
@font-face {
  font-family: "Noto Sans";
  font-style: italic;
  font-weight: 700;
  src: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-BoldItalic.a81ad28a.ttf) format("truetype");
}
img {
  /* prevent edge to show visual search icon */
  pointer-events: none;
}

/* @import '../../styles/includes/variables';
@import '../../styles/includes/mixins';
@import '../../styles/includes/breakpoints'; */
.pwButton {
  /* hint: not every button contains a (e.g. fully linked teaser) */
}
.pwButton.button-back a {
  width: auto;
  color: #ffffff;
}
@media (max-width: 991.98px) {
  .pwButton.button-back a {
    padding: 15px;
  }
}
.pwButton.button-back a:hover {
  color: #ffffff;
}
.pwButton.button-back a span.left {
  display: flex;
}
.pwButton.button-back a span.left .pwIcon {
  transform: rotate(180deg);
  display: flex;
  margin-right: 15px;
}
.pwButton a {
  display: inline-flex;
  background: var(--main-color);
  width: auto;
  text-decoration: none;
  padding: 12px 17px;
  color: #ffffff;
  font-weight: bold;
  line-height: 1em;
  position: relative;
  align-items: center;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}
.pwButton a:hover {
  background: #000000;
}
.pwButton .label {
  display: flex;
  align-items: center;
  font-size: 16px;
  color: #ffffff;
  text-decoration: none;
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .pwButton .label {
    line-height: 20px;
  }
}
.pwButton .label .pwIcon {
  right: auto;
}
.pwButton .pwIcon {
  margin-left: auto;
  position: relative;
}
.pwButton--noText a {
  padding: 0;
}
.pwButton.pwButton--text a {
  background-color: transparent;
  color: #333;
  padding: 0;
}

.pwButtonBack .label {
  font-size: 16px;
  font-weight: 700;
}
.pwButtonBack .right {
  display: none;
}

@media (min-width: 992px) {
  .button a .right,
.button-back a .left {
    position: relative;
  }
}
@font-face {
  font-family: "Noto Sans";
  font-style: normal;
  font-weight: 400;
  src: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Regular.dd3bafea.woff) format("woff"), url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Regular.165e521e.ttf) format("truetype"), url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Regular.cd45f20a.eot) format("embedded-opentype");
}
@font-face {
  font-family: "Noto Sans";
  font-style: normal;
  font-weight: 700;
  src: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Bold.a5765cd4.woff) format("woff"), url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Bold.2e83ce6b.ttf) format("truetype"), url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Bold.b72c9a08.eot) format("embedded-opentype");
}
@font-face {
  font-family: "Noto Sans";
  font-style: italic;
  font-weight: 700;
  src: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-BoldItalic.84f3c010.eot) format("embedded-opentype"), url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-BoldItalic.7135c774.ttf) format("truetype");
}
@font-face {
  font-family: "Noto Sans";
  font-style: italic;
  font-weight: 400;
  src: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Italic.2e013182.eot) format("embedded-opentype"), url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/fonts/NotoSans-Italic.d7757582.ttf) format("truetype");
}
.pwIcon {
  display: inline-block;
}

.pwIcon--angle-circle-down svg circle {
  fill: var(--main-color);
}

.pwIcon--angle-right svg {
  width: 7px;
  height: 12px;
}

.pwIcon--angle-right-double svg {
  width: 12px;
  height: 12px;
}
.pwIcon--angle-right-double svg path {
  fill: var(--main-color);
}

.pwIcon--arrow-right-thin svg {
  width: 24px;
  height: 24px;
}

.pwIcon--phone-stroke svg path {
  stroke: none;
}

.enlarge {
  position: absolute;
  left: 0.625rem;
  bottom: 0.625rem;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--main-color);
}
.enlarge .fa-search:before {
  color: #ffffff;
}
.enlarge:hover .fa-search:before {
  color: #000000;
}

body {
  color: var(--font-color, #333);
}
body * {
  font-family: "Noto Sans";
}

ul {
  list-style-type: none;
}

.pwText h1:first-child,
.pwText h2:first-child,
.pwText h3:first-child,
.pwText h4:first-child,
.pwText h5:first-child,
.pwTextImage h1:first-child,
.pwTextImage h2:first-child,
.pwTextImage h3:first-child,
.pwTextImage h4:first-child,
.pwTextImage h5:first-child {
  margin-top: 0;
}
.pwText > h1,
.pwTextImage > h1 {
  margin-bottom: 0.7em;
}
.pwText > h3,
.pwTextImage > h3 {
  margin-bottom: 1em;
}
.pwText .align-center,
.pwTextImage .align-center {
  text-align: center;
}
.pwText .pwButton,
.pwTextImage .pwButton {
  margin-top: 1.79rem;
}
.pwText .pwButton > a,
.pwTextImage .pwButton > a {
  text-decoration: none;
}

.pwText ol,
.pwTextImage ol,
.pwTable ol,
.pwTeaser ol {
  counter-reset: numbers;
}
.pwText ul,
.pwText ol,
.pwTextImage ul,
.pwTextImage ol,
.pwTable ul,
.pwTable ol,
.pwTeaser ul,
.pwTeaser ol {
  display: flex;
  flex-wrap: wrap;
}
.pwText ul li,
.pwText ol li,
.pwTextImage ul li,
.pwTextImage ol li,
.pwTable ul li,
.pwTable ol li,
.pwTeaser ul li,
.pwTeaser ol li {
  margin-left: 0;
  margin-bottom: 10px;
  display: inline-block;
  width: 100%;
  position: relative;
  padding-left: 25px;
}
.pwText ul li::before,
.pwText ol li::before,
.pwTextImage ul li::before,
.pwTextImage ol li::before,
.pwTable ul li::before,
.pwTable ol li::before,
.pwTeaser ul li::before,
.pwTeaser ol li::before {
  display: inline-block;
  position: absolute;
  /* Replacement for svg data within content/background of pseudoelements */
  display: inline-block;
  background-color: var(--main-color);
  content: "";
  -webkit-mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-thin-right.063f8948.svg) no-repeat 50% 50%;
  mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-thin-right.063f8948.svg) no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;
  height: 20px;
  width: 20px;
  left: 0;
  top: 4px;
}
.pwText ul li a span,
.pwText ol li a span,
.pwTextImage ul li a span,
.pwTextImage ol li a span,
.pwTable ul li a span,
.pwTable ol li a span,
.pwTeaser ul li a span,
.pwTeaser ol li a span {
  color: black;
}
.pwText ul li a:hover,
.pwText ol li a:hover,
.pwTextImage ul li a:hover,
.pwTextImage ol li a:hover,
.pwTable ul li a:hover,
.pwTable ol li a:hover,
.pwTeaser ul li a:hover,
.pwTeaser ol li a:hover {
  padding-left: 0;
  text-decoration: underline;
}
.pwText ol,
.pwTextImage ol,
.pwTable ol,
.pwTeaser ol {
  list-style: none;
  counter-reset: numbers;
}
.pwText ol li,
.pwTextImage ol li,
.pwTable ol li,
.pwTeaser ol li {
  counter-increment: numbers;
  padding-left: 25px;
}
.pwText ol li::before,
.pwTextImage ol li::before,
.pwTable ol li::before,
.pwTeaser ol li::before {
  -webkit-mask: none;
  background-color: transparent;
  content: counter(numbers) ".";
  mask: none;
  top: 0;
}

.pwTextImage--floated ol {
  width: 100%;
  display: block;
}
.pwTextImage--floated ol li {
  display: block;
}

/* base style logos (get overwriten if device-ratio: 2) */
.default-logo {
  display: block;
}
.default-logo.hidden {
  display: none;
}

.retina-logo {
  display: none;
}
.retina-logo.shown {
  display: block;
}

@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .default-logo {
    display: none;
  }
  .retina-logo {
    display: flex;
  }
  .pk---footer__footer1 .retina-logo img {
    image-rendering: pixelated;
  }
}
/* Ellip Plug-In (currently used on Design 10 / Teasergroup 4) */
.ellip {
  display: block;
  height: 100%;
}

.ellip-line {
  display: inline-block;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  max-width: 100%;
}

.ellip,
.ellip-line {
  position: relative;
  overflow: hidden;
  vertical-align: top;
}

/* prevent style override within textmodule */
h1 p,
h1 a,
h2 p,
h2 a,
h3 p,
h3 a,
h4 p,
h4 a,
h5 p,
h5 a,
h6 p,
h6 a {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
h1 p,
h2 p,
h3 p,
h4 p,
h5 p,
h6 p {
  margin: 0;
}

h1,
h2,
h5,
h6 {
  color: var(--main-color);
}

.pwMain {
  background: transparent;
  overflow: hidden;
}
.pwMain__content {
  /* relevant für D1-D3 */
}
@media (max-width: 767.98px) {
  .pwMain__content {
    padding: 0;
  }
}

.pwArea--banner {
  background-color: #eeeeee;
}
.pwArea--banner .pwSwiper__button svg path {
  fill: var(--font-color, #333);
}
.pwArea--banner .pwTeasergroup .pwTeaser {
  color: #ffffff;
}
.pwArea--banner2 {
  background-color: #333333;
}
.pwArea--banner2 .pwSwiper__button svg g {
  fill: #ffffff;
}
.pwArea.seo-text {
  background-color: #eeeeee;
}
.pwArea__content {
  padding-top: 45px;
  padding-bottom: 45px;
}
.pwArea__content .pwSection {
  padding-bottom: 0;
}

.pwBreadcrumbs ul {
  margin-left: 5px;
}
.pwBreadcrumbs__item {
  position: relative;
  display: inline-block;
}
.pwBreadcrumbs__item[aria-current=page] .pwBreadcrumbs__label {
  color: var(--main-color);
}

.pwSection {
  padding-bottom: 3.75rem;
}

.pwMain__container {
  overflow: hidden;
}

.pwContent {
  /* lose HTML-Elemente */
}
.pwContent > .container + .pwSection {
  margin-top: 3.75rem;
}

.pwSection.section-banner img {
  max-width: 100%;
  height: auto;
}

.content > .content.no-box {
  background: none;
  box-shadow: none;
  padding: 0;
  width: 100%;
}

.pwBreadcrumbs .row > * {
  display: flex;
}

.pwMain > .stage {
  width: 100%;
  text-align: center;
  overflow: hidden;
}

.pwMain > .stage > .section-stage > .slides {
  width: 960px;
  margin: 0 auto;
}

.pwMain > .stage > .section-stage > .slides .slide {
  width: 960px;
}

.caption p {
  color: #484848;
}

@media (max-width: 991.98px) {
  .container {
    max-width: 100%;
  }
}
@media (max-width: 767.98px) {
  .container {
    position: relative;
    max-width: calc(100% - 30px);
  }
  .container .container {
    max-width: 100%;
  }
}
@charset "UTF-8";
.pwButton .right {
  margin-left: 1rem;
}
.pwButton .label {
  line-height: 1.3;
}
.pwButton .pwIcon {
  position: relative;
}
.pwButton .pwIcon svg path {
  fill: #ffffff;
}

.pwText .pwButton a,
.pwTextImage .pwButton a {
  padding: 12px 17px;
}
.pwText .pwButton .pwIcon,
.pwTextImage .pwButton .pwIcon {
  position: relative;
}
.pwText .pwButton .pwIcon svg path,
.pwTextImage .pwButton .pwIcon svg path {
  fill: #ffffff;
}

/* -------- BASE STYLES -------- */
html,
body {
  font-size: 14px;
}

a {
  text-decoration: none;
  text-underline-offset: auto;
  text-decoration-thickness: auto;
  color: var(--main-color);
}

h1 {
  font-size: 35px;
}

h1,
h2,
h5,
h6 {
  color: var(--main-color);
}

.pwText ul li::before,
.pwTextImage ul li::before,
.pwTable ul li::before,
.pwTeaser ul li::before,
.pwForm ul li::before {
  /* Replacement for svg data within content/background of pseudoelements */
  display: inline-block;
  background-color: var(--main-color);
  content: "";
  -webkit-mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;
  height: 14px;
  width: 14px;
}

.pwMain {
  overflow: visible;
}
.pwMain__content {
  padding-top: 30px;
}
.pwMain__content.one-col {
  padding-left: 0;
  padding-right: 0;
}
@media (min-width: 992px) {
  .pwMain__content {
    padding-top: 70px;
  }
}
.pwMain__container {
  overflow: visible;
}
@media (max-width: 991.98px) {
  .pwMain {
    padding-top: 95px;
  }
}
@media (max-width: 767.98px) {
  .pwMain {
    padding-top: 85px;
  }
}

@media (min-width: 992px) {
  .pwSidebar + .pwContent {
    width: calc(100% - 325px);
  }
}

.pwArea--stage:empty {
  margin-top: 150px;
}
.pwArea--footerTeaser {
  background-color: #ffffff;
}
.pwArea--footerTeaser .pwBcNews .news-header h2, .pwArea--footerTeaser .pwBcNews .news-header .pwButton .label {
  color: var(--main-color);
}
.pwArea--footerTeaser .pwBcNews .news-header .pwButton .pwIcon svg path {
  fill: var(--main-color);
}

.pwTable ul li:before {
  /* Replacement for svg data within content/background of pseudoelements */
  display: inline-block;
  background-color: var(--main-color);
  content: "";
  -webkit-mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;
  height: 14px;
  width: 14px;
}

.pwTeaser {
  margin-top: 30px;
}
.pwTeaser ul li:before {
  /* Replacement for svg data within content/background of pseudoelements */
  display: inline-block;
  background-color: var(--main-color);
  content: "";
  -webkit-mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;
  height: 14px;
  width: 14px;
}
.pwTeaser .pwIcon svg path {
  fill: var(--main-color);
}
.pwTeaser .pwButton {
  margin-top: 20px;
}
.pwTeaser .pwButton a {
  background-color: transparent;
  padding: 8px 12px;
}
.pwTeaser .pwButton .label {
  display: none;
  font-size: 14px;
}
.pwTeaser .pwButton .pwIcon svg path {
  fill: #ffffff;
}
.pwTeaser__headline {
  font-size: 1rem;
  font-weight: 600;
  width: 100%;
  display: flex;
  justify-content: space-between;
}
@media (min-width: 992px) {
  .pwTeaser__headline {
    font-size: 1.14rem;
  }
}
.pwTeaser__headline a {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media (min-width: 768px) {
  .pwTeaser__headline a {
    flex-wrap: wrap; /* notwendig für kleine teaser wie 4-spaltige*/
  }
}
.pwTeaser__headline .pwIcon {
  display: block;
}
@media (max-width: 767.98px) {
  .pwTeaser__headline {
    /* override h4-style (too small) */
    font-size: 1.07rem;
    margin-bottom: 0.7rem;
  }
}
.pwTeaser__text .content-container {
  width: 100%;
}
.pwTeaser__text .pwButton {
  display: none;
}
.pwTeaser__container {
  background-color: #eeeeee;
  padding: 15px;
}
.pwTeaser__container > .row {
  max-width: calc(100% + 30px);
}
.pwTeaser p {
  display: none;
}

.pwTeasergroup {
  margin-top: -30px;
  margin-bottom: -15px;
  /* 6-spaltig (Herstellerlogos) */
  /* Default: Text ausgeblendet */
}
.pwTeasergroup.teasergroup-1 .pwTeaser {
  /* @include media-breakpoint-up(sm){ */
}
.pwTeasergroup.teasergroup-1 .pwTeaser .pwTeaser__container {
  flex-direction: column;
}
.pwTeasergroup.teasergroup-1 .pwTeaser .pwTeaser__container::after {
  display: inline-block;
  width: 100%;
  content: "";
  border-bottom: 1px solid #eeeeee;
  margin-top: 20px;
}
.pwTeasergroup.teasergroup-1 .pwTeaser:first-child {
  /* @include media-breakpoint-up(sm){ */
}
.pwTeasergroup.teasergroup-1 .pwTeaser:first-child .pwTeaser__container {
  flex-direction: column;
}
.pwTeasergroup.teasergroup-1 .pwTeaser:first-child .pwTeaser__container::before {
  display: inline-block;
  width: 100%;
  content: "";
  border-bottom: 1px solid #eeeeee;
  margin-bottom: 20px;
}
.pwTeasergroup.teasergroup-1 .pwTeaser__text .pwButton {
  position: absolute;
  right: -15px;
  top: 50%;
  transform: translateY(-50%);
}
.pwTeasergroup.teasergroup-1 .pwTeaser__text .pwButton .pwIcon svg path {
  fill: var(--main-color);
}
.pwTeasergroup.teasergroup-1 .pwTeaser__text .content-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.pwTeasergroup.teasergroup-1 .pwTeaser__text.has-button .content-container {
  height: 100%;
  padding-right: 45px;
}
.pwTeasergroup.teasergroup-1 .pwTeaser__text p {
  display: block;
}
.pwTeasergroup.teasergroup-1 .pwTeaser__container {
  background-color: transparent;
  padding: 0%;
}
.pwTeasergroup.teasergroup-1 .pwTeaser__headline .pwIcon {
  display: none;
}
.pwTeasergroup.teasergroup-1 .pwTeaser .content-container {
  position: relative;
}
.pwTeasergroup.teasergroup-1:not(.variant-8) .pwTeaser__container {
  padding: 0;
}
.pwTeasergroup.teasergroup-1:not(.variant-8) .pwTeaser__text .pwButton {
  margin-top: 0;
}
.pwTeasergroup.teasergroup-1:not(.variant-8) .pwTeaser__text .pwButton .right {
  margin-left: 0;
}
.pwTeasergroup.teasergroup-1.variant-8 .pwTeaser__container > .row {
  flex-direction: column;
}
.pwTeasergroup.teasergroup-1.variant-8 .pwTeaser__text .pwButton {
  position: relative;
  top: auto;
  transform: none;
  right: auto;
}
.pwTeasergroup.teasergroup-1.variant-8 .pwTeaser__text .pwButton .pwIcon svg path {
  fill: #ffffff;
}
.pwTeasergroup.teasergroup-1.variant-1.no-button .pwTeaser__text .pwButton, .pwTeasergroup.teasergroup-1.variant-1-3.no-button .pwTeaser__text .pwButton, .pwTeasergroup.teasergroup-1.variant-1-4.no-button .pwTeaser__text .pwButton {
  display: flex !important;
}
.pwTeasergroup.teasergroup-5 .pwTeaser__container, .pwTeasergroup.teasergroup-6 .pwTeaser__container {
  background-color: transparent;
}
.pwTeasergroup.teasergroup-2:not(.variant-8) .pwTeaser:hover .pwTeaser__container, .pwTeasergroup.teasergroup-3:not(.variant-8) .pwTeaser:hover .pwTeaser__container, .pwTeasergroup.teasergroup-4:not(.variant-8) .pwTeaser:hover .pwTeaser__container {
  background-color: var(--main-color);
  color: #ffffff;
}
.pwTeasergroup.teasergroup-2:not(.variant-8) .pwTeaser:hover .pwTeaser__container ul li::before, .pwTeasergroup.teasergroup-3:not(.variant-8) .pwTeaser:hover .pwTeaser__container ul li::before, .pwTeasergroup.teasergroup-4:not(.variant-8) .pwTeaser:hover .pwTeaser__container ul li::before {
  /* Replacement for svg data within content/background of pseudoelements */
  display: inline-block;
  background-color: #ffffff;
  content: "";
  -webkit-mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;
}
.pwTeasergroup.teasergroup-2:not(.variant-8) .pwTeaser:hover .pwIcon svg path, .pwTeasergroup.teasergroup-3:not(.variant-8) .pwTeaser:hover .pwIcon svg path, .pwTeasergroup.teasergroup-4:not(.variant-8) .pwTeaser:hover .pwIcon svg path {
  fill: #ffffff;
}
.pwTeasergroup.teasergroup-2:not(.variant-8).hover-fontcolor-dark .pwTeaser:hover .pwIcon svg path, .pwTeasergroup.teasergroup-3:not(.variant-8).hover-fontcolor-dark .pwTeaser:hover .pwIcon svg path, .pwTeasergroup.teasergroup-4:not(.variant-8).hover-fontcolor-dark .pwTeaser:hover .pwIcon svg path {
  fill: #282828;
}
.pwTeasergroup.teasergroup-6 .pwTeaser {
  margin-top: 7px;
}
.pwTeasergroup.teasergroup-6 .pwTeaser__container .pwTeaser__img {
  margin-bottom: 0;
}
.pwTeasergroup.teasergroup-6 .pwTeaser__container {
  padding: 0;
}
@media (max-width: 767.98px) {
  .pwTeasergroup.teasergroup-6 .pwTeaser .teaser-inner {
    padding: 0;
  }
}
.pwTeasergroup:not(.variant-8):not(.teasergroup-1):not(.pwCertificate) .pwTeaser__headline {
  margin-bottom: 0;
}
.pwTeasergroup:not(.variant-8):not(.teasergroup-1):not(.pwCertificate) .pwTeaser .content-container {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
.pwTeasergroup:not(.variant-8):not(.teasergroup-1):not(.pwCertificate) .pwTeaser .pwButton {
  margin-top: -8px;
  margin-right: -15px;
}
.pwTeasergroup.variant-8 .pwTeaser__text {
  padding-top: 5px;
  padding-bottom: 5px;
  flex-grow: 1;
}
.pwTeasergroup.variant-8 .pwTeaser__text .content-container {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.pwTeasergroup.variant-8 .pwTeaser__text p {
  display: block;
}
.pwTeasergroup.variant-8 .pwTeaser__text .pwButton {
  display: inline-flex;
  margin-top: auto;
  padding-top: 20px;
}
.pwTeasergroup.variant-8 .pwTeaser__text .pwButton a {
  background-color: var(--main-color);
}
.pwTeasergroup.variant-8 .pwTeaser__text .pwButton a:hover {
  background-color: #000000;
}
.pwTeasergroup.variant-8 .pwTeaser__text .pwButton .label {
  display: block;
}
.pwTeasergroup.variant-8 .pwTeaser__headline .pwIcon {
  display: none;
}
.pwTeasergroup.teasergroup-3.variant-3 .pwTeaser__icon {
  justify-content: center;
  padding-left: 0;
}
.pwTeasergroup.teasergroup-3.variant-3 .pwTeaser__icon img {
  max-height: calc(100% - 20px);
  min-height: auto;
}

.pwSidebar .pwTeasergroup .pwTeaser {
  background-color: #ffffff;
  padding-top: 15px;
  padding-bottom: 15px;
}
.pwSidebar .pwTeasergroup.teasergroup-1 {
  /* Bild links, Text rechts */
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser {
  /* remove borders in sidebar */
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser__text .content-container {
  justify-content: flex-start;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser__text.has-button .content-container {
  height: 100%;
  padding-left: 0;
  padding-right: 0;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser__text .pwButton {
  display: flex;
  position: relative;
  top: auto;
  right: auto;
  transform: none;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser__text .pwButton a {
  padding: 0;
  margin-top: 15px;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser__text .pwButton a .right {
  margin-left: 1rem;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser__text .pwButton a:hover .label {
  text-decoration: underline;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser__text .pwButton .label {
  display: inline-block;
  color: var(--main-color);
  font-size: 14px;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser p {
  display: block;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser .pwTeaser__container::after {
  display: none;
}
.pwSidebar .pwTeasergroup.teasergroup-1 .pwTeaser:first-child .pwTeaser__container::before {
  display: none;
}
.pwSidebar .pwTeasergroup.teasergroup-1.variant-1 .pwTeaser__text, .pwSidebar .pwTeasergroup.teasergroup-1.variant-1-4 .pwTeaser__text {
  padding-left: 0;
}
.pwSidebar .pwTeasergroup.teasergroup-1.background-white .pwTeaser__container {
  padding-left: 0;
  padding-right: 0;
}
.pwSidebar .pwTeasergroup.section-carousel {
  margin-top: -20px;
}
@media (max-width: 991.98px) {
  .pwSidebar .pwTeasergroup.teasergroup-1:not(.section-carousel) {
    margin-top: -15px;
  }
}
.pwSidebar .pwTeasergroup--socialmedia .pwTeaser {
  background-color: transparent;
  padding-top: 0;
  padding-bottom: 0;
}

.pwBcNews .news-header,
.pwBcNews .pwSwiperTeasergroup {
  width: calc(100% - 50px);
}
@media (min-width: 768px) {
  .pwBcNews .news-header,
.pwBcNews .pwSwiperTeasergroup {
    width: calc(100% - 100px);
  }
}
@media (min-width: 992px) {
  .pwBcNews .news-header,
.pwBcNews .pwSwiperTeasergroup {
    width: 100%;
  }
}
.pwBcNews .news-header h2 {
  margin-bottom: 0;
}
.pwBcNews .news-header .pwButton a {
  background-color: transparent;
  padding: 0;
}
.pwBcNews .news-header .pwButton a .label {
  color: var(--main-color);
}
.pwBcNews .news-header .pwButton .pwIcon svg path {
  fill: var(--main-color);
}
.pwBcNews .news-header .pwButton:hover .label {
  text-decoration: underline;
  text-underline-offset: 1px;
  text-decoration-thickness: 2px;
}
@media (min-width: 992px) {
  .pwBcNews .pwSwiperTeasergroup {
    padding: 0;
  }
}
.pwBcNews__caption {
  color: #000000;
}

.pwArea--footerTeaser .pwBcNews .pwTeaser__text .content-container {
  background-color: transparent;
  padding: 15px 0 0 0;
}
.pwArea--footerTeaser .pwBcNews .pwTeaser__text .pwButton {
  display: inline-flex;
  margin-top: 10px;
}
.pwArea--footerTeaser .pwBcNews .pwTeaser__text .pwButton a {
  background-color: transparent;
  padding: 0;
}
.pwArea--footerTeaser .pwBcNews .pwTeaser__text .pwButton a .right {
  margin-left: 0;
}
.pwArea--footerTeaser .pwBcNews .pwTeaser__text .pwButton .pwIcon svg path {
  fill: var(--main-color);
}
.pwArea--footerTeaser .pwBcNews .pwTeaser:hover .pwTeaser__headline {
  color: #ffffff;
}
.pwArea--footerTeaser .pwBcNews .pwTeaser:hover .pwTeaser__container {
  background-color: var(--main-color);
  color: #ffffff;
}
.pwArea--footerTeaser .pwBcNews .pwTeaser:hover .pwTeaser__container .pwIcon svg path {
  fill: #ffffff;
}
.pwArea--banner .pwTeasergroup.teasergroup-3.variant-3 {
  margin-top: 20px;
}
.pwArea--banner .pwTeasergroup.teasergroup-3.variant-3 .pwTeaser:hover .pwTeaser__container {
  color: var(--font-color, #333);
}
.pwArea--banner .pwTeasergroup.teasergroup-3.variant-3 .pwTeaser__container, .pwArea--banner .pwTeasergroup.teasergroup-3.variant-3 .pwTeaser:hover .pwTeaser__container {
  background-color: transparent;
}
.pwArea--banner .pwTeasergroup.teasergroup-3.variant-3 .pwTeaser__text .content-container p {
  display: block;
}
.pwArea--banner .pwTeasergroup.teasergroup-3.variant-3 .pwTeaser__text .content-container .pwButton {
  display: block;
  margin: 0;
}
.pwArea--banner .pwTeasergroup.teasergroup-3.variant-3 .pwTeaser__text .content-container .pwButton a {
  background-color: var(--main-color);
}

.pwCertificate__item .pwButton {
  margin-top: 10px;
}
.pwCertificate__item .pwButton a {
  background-color: var(--main-color);
}
.pwCertificate__item .pwButton a:hover {
  background-color: #000000;
}
.pwCertificate__item .fileinfo {
  display: block;
}

.pwAccordion__buttonToggle svg path {
  fill: var(--main-color);
}

.pwTextImage .pwImage a {
  color: var(--main-color);
}
.pwTextImage .pwImage a:hover {
  color: #000000;
}

.pwText h1,
.pwTextImage h1 {
  font-size: 2.25rem;
  font-weight: 700;
}
.pwText h2,
.pwTextImage h2 {
  font-size: 1.75rem;
  font-weight: 700;
  margin-top: 2.6rem;
  margin-bottom: 0.5rem;
}
.pwText h3,
.pwTextImage h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-top: 2.5rem;
  margin-bottom: 1rem;
}
.pwText h5,
.pwTextImage h5 {
  margin-top: 1.8rem;
  margin-bottom: 1rem;
}
.pwText h1 + h2,
.pwText h1 + h3,
.pwText h2 + h3,
.pwTextImage h1 + h2,
.pwTextImage h1 + h3,
.pwTextImage h2 + h3 {
  margin-top: 0.3rem;
}
.pwText .pwButton,
.pwTextImage .pwButton {
  margin-top: 25px;
}

.pwContentContainer .pwBanner .pwSwiperBanner {
  width: 100%;
}
.pwContentContainer .pwBanner .pwSwiper__button {
  display: none;
}

/* Checkbox-Styling */
input[type=checkbox] + label:before {
  background: #eeeeee;
}
input[type=checkbox]:checked + label::before {
  background: #eeeeee;
}
input[type=checkbox]:checked + label::after {
  background: #eeeeee;
}

/* Radio-Buttons */
input[type=radio] {
  accent-color: var(--main-color);
}

.pwForm input[type=text] {
  height: 40px;
}
.pwForm .form-hint {
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
@media (max-width: 991.98px) {
  .pwForm .row:not(.checkbox) .input {
    padding-right: 0;
  }
}
.pwForm .row:not(.checkbox) input:not([type=checkbox]) {
  border: none;
}
@media (max-width: 767.98px) {
  .pwForm .textinput input {
    padding-right: 0;
  }
}
.pwForm .row .button {
  display: inline-flex;
  height: 40px;
  background: var(--main-color);
  width: auto;
  position: relative;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}
.pwForm .row .button:hover {
  background: black;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}
.pwForm .row .button a {
  display: flex;
  align-items: center;
  font-size: 16px;
  color: white;
  text-decoration: none;
  font-weight: 700;
  padding-right: 15px;
  padding-left: 15px;
}
.pwForm .row .button a:hover {
  background: black;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}
.pwForm .row .button .label {
  margin-right: 30px;
}
.pwForm .row .button .pwIcon {
  margin-right: 0;
  position: relative;
  top: -1px;
}
.pwForm .row .button .right {
  display: flex !important;
  position: unset !important;
  align-items: center;
}
.pwForm .row .button svg {
  width: 20px;
  height: 15px;
}
.pwForm .row .button path {
  fill: white;
}
.pwForm .row .label-radio {
  padding-left: 0;
}
.pwForm .row input,
.pwForm .row textarea {
  background: #eeeeee;
  width: 100%;
  font-weight: 700;
  border: none;
}
.pwForm .row textarea {
  height: 10em;
  width: 100%;
  border: none;
  padding: 15px;
}
@media (max-width: 767.98px) {
  .pwForm.contact-form .row input[type=text],
.pwForm.contact-form .row textarea {
    margin-left: 0;
  }
}
@media (max-width: 767.98px) {
  .pwForm .row {
    margin: 0;
  }
}
@media (max-width: 767.98px) {
  .pwForm .row:not(.checkbox) .input {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 767.98px) {
  .pwForm .row .button {
    margin-left: 0;
  }
}

.pwContent:only-child .pwForm .textinput {
  max-width: 50%;
}
.pwContent:only-child .pwForm .textinput:nth-child(odd) {
  margin-right: 30px;
}

.pwContent:only-child .pwForm .textarea {
  margin: 0;
}

form:not(.pwSurvey) .row input[type=radio] {
  float: none;
  width: auto;
  margin-right: 5px;
  position: relative;
}
@media (max-width: 767.98px) {
  form:not(.pwSurvey) .row input[type=radio] {
    width: 18px;
    height: 20px;
  }
}

form .row input:focus,
form .row textarea:focus {
  outline: none;
  border-color: #bbb;
  box-shadow: inset 0 0 10px #ddd;
}

.section p:first-child.form-hint {
  margin-bottom: 20px;
}

form .radio-container {
  display: flex;
  align-items: center;
  float: none;
}
@media (max-width: 767.98px) {
  form .radio-container {
    margin-bottom: 5px;
  }
}

form .radio-container label {
  padding-top: 0;
}

form .row .button {
  margin-top: 8px;
}

.pwReferences__overview__reference .image a {
  padding: 10px 10px 15px 10px;
  background-color: var(--main-color);
}
.pwReferences--gray .pwReferences__overview__reference .slide-text {
  background-color: #eeeeee;
}
.pwReferences--gray .pwReferences__overview__reference .slide-text h3 {
  font-weight: bold;
  color: var(--font-color, #333);
}
.pwReferences--gray .pwReferences__overview__reference .slide-text p {
  color: var(--font-color, #333);
}
.pwReferences--gray .pwReferences__overview__reference .slide-text .gallery-info svg path {
  fill: var(--main-color);
}
.pwReferences--gray .pwReferences__overview__reference .slide-text .gallery-count {
  font-weight: bold;
  color: var(--main-color);
}
.pwReferences--gray .pwReferences__overview__reference .image a {
  background-color: #eeeeee;
}

.pwSwiper__button--prev {
  left: 0px;
}
.pwSwiper__button--next {
  right: 0px;
}
@media (min-width: 768px) {
  .pwSwiper__button--prev {
    left: 0;
  }
  .pwSwiper__button--next {
    right: 0;
  }
}
@media (min-width: 992px) {
  .pwSwiper__button--prev {
    left: -35px;
  }
  .pwSwiper__button--next {
    right: -35px;
  }
}

.pwStage {
  height: 200px;
  /* abgedunkelt, da Navigation selbe Farbe hat */
}
@media (min-width: 576px) {
  .pwStage {
    height: 330px;
  }
}
@media (min-width: 768px) {
  .pwStage {
    height: 330px;
  }
}
.pwStage__maincolor::after {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  display: inline-block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
}
.pwStage .slides {
  max-width: 1290px;
}
.pwStage__textboxContent {
  left: auto;
  right: 30px;
}
@media (min-width: 992px) {
  .pwStage__textboxContent {
    right: 20px;
  }
}

@media (min-width: 576px) {
  .pwArea--stage .pwStage .slide img {
    min-width: 100%;
  }
}
.pwArea--stage .pwStage .nav-stage {
  right: auto;
  left: 15px;
}

.pwMain__content .pwStage.parallax {
  margin-bottom: 3.75rem;
}

.pwArea--stage .pwVideoStage > .container {
  padding: 0;
}

.pwDirections .map {
  border: 10px solid var(--main-color);
}
.pwDirections .pwIframePlaceholder--cookie {
  border: none;
}
.pwDirections .companyinfo {
  padding-top: 25px;
}
@media (max-width: 991.98px) {
  .pwDirections {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.pwGallery ul li {
  padding-left: 25px;
}
.pwGallery ul li:before {
  /* Replacement for svg data within content/background of pseudoelements */
  display: inline-block;
  background-color: var(--main-color);
  content: "";
  -webkit-mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  mask: url(/typo3conf/ext/pk_websitekit/Resources/Public/Frontend/images/arrow-right-short.8d99432f.svg) no-repeat 50% 50%;
  -webkit-mask-size: cover;
  mask-size: cover;
  height: 14px;
  width: 14px;
  top: 4px;
}

.pwSidebar {
  width: 325px;
}
.pwSidebar.fontColorBlack .pwSidebar__nav .pwSidebar__listLevel2 > li.current > a .label {
  color: var(--main-color);
}
.pwSidebar.fontColorWhite .pwSidebar__nav .pwSidebar__listLevel2 > li.current > a .label {
  color: var(--main-color);
}
.pwSidebar.fontColorWhite .pwSidebar__listLevel2 > li.active > a .label, .pwSidebar.fontColorBlack .pwSidebar__listLevel2 > li.active > a .label {
  color: var(--main-color);
}
.pwSidebar .pwTeasergroup.background-white .pwTeaser {
  background: #ffffff;
}
.pwSidebar .pwTeasergroup.teasergroup-1:not(.variant-8).borderMaincolor.background-grey .pwTeaser__container, .pwSidebar .pwTeasergroup.teasergroup-1:not(.variant-8).background-grey .pwTeaser__container {
  padding: 15px;
}
.pwSidebar .pwTeasergroup.section-carousel {
  margin-top: 0;
}
.pwSidebar .pwTeasergroup.background-grey.borderMaincolor .pwTeaser, .pwSidebar .pwTeasergroup.background-grey.borderGrey .pwTeaser {
  background: #ffffff;
  padding: 15px;
}
.pwSidebar .pwTeasergroup.background-grey.borderMaincolor .pwTeaser__container, .pwSidebar .pwTeasergroup.background-grey.borderGrey .pwTeaser__container {
  background: #eeeeee;
}
.pwSidebar__nav {
  background: #eeeeee;
  color: var(--main-color);
  margin-bottom: 40px;
}
.pwSidebar__nav.backgroundGrey .pwTeaser {
  background: #eeeeee;
}
.pwSidebar__nav.backgroundWhite .pwSidebar__listLevel2 li.active.sub {
  border-bottom: none;
}
.pwSidebar__nav.backgroundWhite .pwSidebar__listLevel2 a:hover, .pwSidebar__nav.backgroundGrey .pwSidebar__listLevel2 a:hover {
  color: var(--main-color);
}
.pwSidebar__nav a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: #333333;
}
.pwSidebar__nav a .left {
  display: none;
}
.pwSidebar__nav a .right {
  display: none;
}
.pwSidebar__nav a .pwIcon svg path {
  fill: var(--main-color);
}
.pwSidebar__nav a:hover {
  color: var(--main-color);
}
.pwSidebar__nav .pwSidebar__listLevel1 {
  margin-top: 0;
  padding-left: 0;
}
.pwSidebar__nav .pwSidebar__listLevel1:first-child > li.current, .pwSidebar__nav .pwSidebar__listLevel1:first-child > li.active {
  display: block;
}
.pwSidebar__nav .pwSidebar__listLevel1:first-child > li {
  display: none;
}
.pwSidebar__nav .pwSidebar__listLevel1 li {
  margin-bottom: 0.7rem;
}
.pwSidebar__nav .pwSidebar__listLevel1 .current > a,
.pwSidebar__nav .pwSidebar__listLevel1 .active > a {
  color: var(--main-color);
}
.pwSidebar__nav .pwSidebar__listLevel1:first-child > li {
  display: none;
}
.pwSidebar__nav .pwSidebar__listLevel1:first-child > li.current, .pwSidebar__nav .pwSidebar__listLevel1:first-child > li.active {
  display: block;
}
.pwSidebar__nav .pwSidebar__listLevel1 li ul li.active.sub {
  margin-bottom: 20px;
}
.pwSidebar__nav .pwSidebar__listLevel1 li ul li.active.sub > a {
  border-bottom: 1px solid rgba(40, 40, 40, 0.2);
  padding-bottom: 10px;
  margin-bottom: 20px;
}
.pwSidebar__nav .pwSidebar__listLevel2 {
  padding: 30px 25px 10px 25px;
}
.pwSidebar__nav .pwSidebar__listLevel2 li {
  font-size: 1.14rem;
  line-height: 1.3;
}
.pwSidebar__nav .pwSidebar__listLevel2 > li.active.sub > a .right {
  display: inline-flex;
  transform: rotate(90deg);
}
.pwSidebar__nav .pwSidebar__listLevel2 > li.active ul li {
  font-size: 1rem;
}
.pwSidebar__nav .pwSidebar__listLevel2 .current > a,
.pwSidebar__nav .pwSidebar__listLevel2 .active > a {
  font-weight: bold;
}
.pwSidebar__nav .pwSidebar__listLevel2 .current ul,
.pwSidebar__nav .pwSidebar__listLevel2 .active ul {
  display: block;
}
.pwSidebar__nav .pwSidebar__listLevel2 a .left {
  display: none;
}
.pwSidebar__nav .pwSidebar__listLevel3 {
  display: none;
  margin-left: 15px;
  margin-top: 3px;
  padding-top: 0;
  padding-bottom: 0;
}
.pwSidebar__nav > ul:first-child > li.active {
  position: relative;
}
.pwSidebar__nav > ul:first-child > li.active > a.active {
  background-color: var(--main-color);
  color: #ffffff;
  line-height: 24px;
  font-weight: 600;
  font-size: 1.29rem;
  padding: 20px 25px;
}
.pwSidebar__nav > ul:first-child > li.active::after {
  position: absolute;
  display: inline-block;
  content: "";
  border-right: 30px solid transparent;
  border-left: 30px solid transparent;
  border-top: 25px solid var(--main-color);
  border-bottom: 25px solid transparent;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
}
.pwSidebar .pwSection {
  padding-bottom: 40px;
}
@media (max-width: 991.98px) {
  .pwSidebar {
    width: 100%;
    flex-direction: column;
  }
}

@media (max-width: 991.98px) {
  .pwNavigation {
    background: var(--main-color);
    position: fixed;
    width: 100%;
    z-index: 10;
    top: 85px;
  }
  .pwNavigationDropdown {
    display: none;
  }
  .pwNavigation__nav {
    display: none;
  }
  .pwNavigation__nav > .container {
    max-width: 100%;
  }
  .pwNavigation__nav a {
    text-decoration: none;
    display: flex;
    font-size: 1.11em;
    color: #fff;
    width: 100%;
    text-align: left;
    position: relative;
    padding: 20px;
    margin: 0px;
    height: 60px;
    align-items: center;
  }
  .pwNavigation__nav a .left {
    display: none;
  }
  .pwNavigation__nav a .pwIcon {
    right: 15px;
  }
  .pwNavigation__nav.open {
    overflow-y: auto;
    height: calc(100vh - 85px);
  }
  .pwNavigation__nav.open a::after {
    content: "";
    background: rgba(255, 255, 255, 0.2);
    position: absolute;
    bottom: 0;
    left: 20px;
    height: 1px;
    width: calc(100% - 40px);
  }
  .pwNavigation__nav li.open > a,
.pwNavigation__nav li.active > a {
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 1px;
    text-decoration-thickness: 2px;
  }
  .pwNavigation__nav .pwIcon {
    display: inline-block;
    position: absolute;
    right: 0;
    width: 15px;
  }
  .pwNavigation__nav .pwIcon svg {
    transform: rotate(90deg);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
  }
  .pwNavigation__nav .pwIcon path {
    fill: white;
  }
  .pwNavigation__navLevelOne {
    display: block !important;
    justify-content: space-between;
    overflow: hidden;
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
  }
  .pwNavigation__navLevelOne__listItem {
    background: var(--main-color);
    display: block;
    position: relative;
  }
  .pwNavigation__navLevelOne__listItem:not(.sub) svg, .pwNavigation__navLevelOne__listItem.current:not(.sub) svg, .pwNavigation__navLevelOne__listItem.hasSubNav:not(.sub) svg {
    transform: rotate(180deg);
  }
  .pwNavigation__navLevelOne__listItem.open svg {
    transform: rotate(270deg);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
  }
  .pwNavigation__navLevelOne__listItem.open.hovered:before, .pwNavigation__navLevelOne__listItem.open:hover:before, .pwNavigation__navLevelOne__listItem.open.current:before, .pwNavigation__navLevelOne__listItem.open.active:before {
    position: absolute;
    height: 100%;
    width: 100%;
    display: inline-block;
    content: "";
    top: 1px;
    opacity: 0.25;
    background: #ffffff;
  }
  .pwNavigation__navLevelOne__listItem.open + .pwNavigation__navLevelOne__listItem a::before {
    content: "";
    background: rgba(255, 255, 255, 0.2);
    position: absolute;
    top: 0;
    left: 20px;
    height: 1px;
    width: calc(100% - 40px);
  }
  .pwNavigation__navLevelTwo {
    display: none;
    margin: 0;
    padding: 0 15px;
    position: relative;
    background: var(--main-color);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
  }
  .pwNavigation__navLevelTwo__listItem {
    position: relative;
  }
  .pwNavigation__navLevelTwo__listItem.active, .pwNavigation__navLevelTwo__listItem.current {
    background: var(--main-color);
    opacity: 1;
  }
  .pwNavigation__navLevelTwo__listItem.active > a, .pwNavigation__navLevelTwo__listItem.current > a {
    background: var(--main-color);
    opacity: 1;
    text-decoration: underline;
    text-underline-offset: 1px;
    text-decoration-thickness: 2px;
  }
  .pwNavigation__navLevelTwo__listItem.open + .pwNavigation__navLevelTwo__listItem a::before {
    content: "";
    background: rgba(255, 255, 255, 0.2);
    position: absolute;
    top: 0;
    left: 20px;
    height: 1px;
    width: calc(100% - 40px);
  }
  .pwNavigation__navLevelTwo__listItem a::after {
    width: calc(100% - 15px);
    left: 0;
  }
  .pwNavigation__navLevelTwo__listItem span svg {
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transition: all 300ms ease;
    -moz-transition: all 300ms ease;
    -ms-transition: all 300ms ease;
    -o-transition: all 300ms ease;
    transition: all 300ms ease;
  }
  .pwNavigation__navLevelTwo li:last-of-type a:after,
.pwNavigation__navLevelTwo li.active:last-of-type a:after,
.pwNavigation__navLevelTwo li.open:last-of-type a:after {
    background: none;
  }
  .pwNavigation__navLevelThree {
    background: var(--main-color);
    margin-top: 0;
    padding: 10px 0 10px 20px;
    display: none;
  }
  .pwNavigation__navLevelThree a {
    height: 40px;
    font-size: 14px;
  }
  .pwNavigation__navLevelThree li.active, .pwNavigation__navLevelThree li.current, .pwNavigation__navLevelThree li.open {
    font-weight: 700;
    background: var(--main-color);
  }
  .pwNavigation__navLevelThree li.active a, .pwNavigation__navLevelThree li.current a, .pwNavigation__navLevelThree li.open a {
    opacity: 1;
  }
  .pwNavigation__navLevelThree a:after {
    display: none;
  }
}
@media (min-width: 992px) {
  .pwNavigation {
    background: var(--main-color);
    width: 100%;
    z-index: 10;
    top: 0;
    height: 80px;
    position: sticky;
  }
  .pwNavigation__nav {
    height: 100%;
  }
  .pwNavigation__nav > .container,
.pwNavigation__nav > .container > .row {
    height: 100%;
  }
  .pwNavigation__nav .pwIcon {
    width: 15px;
  }
  .pwNavigation__nav li a {
    margin: 0px;
  }
  .pwNavigation__navLevelOne {
    display: flex !important;
    justify-content: space-between;
    overflow: hidden;
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
  }
  .pwNavigation__navLevelOne a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 1.11em;
    color: #ffffff;
    padding: 20px;
    width: 100%;
    z-index: 1;
  }
  .pwNavigation__navLevelOne__listItem {
    display: flex;
    flex-grow: 1;
    position: relative;
  }
  .pwNavigation__navLevelOne__listItem__label {
    font-weight: 600;
  }
  .pwNavigation__navLevelOne__listItem.hasSubNav a {
    cursor: pointer;
  }
  .pwNavigation__navLevelOne__listItem:not(.sub) svg, .pwNavigation__navLevelOne__listItem.current:not(.sub) svg, .pwNavigation__navLevelOne__listItem.hasSubNav:not(.sub) svg {
    transform: rotate(180deg);
  }
  .pwNavigation__navLevelOne__listItem.hovered:before, .pwNavigation__navLevelOne__listItem:hover:before {
    position: absolute;
    height: 100%;
    width: 100%;
    display: inline-block;
    content: "";
    top: 0;
    left: 0;
    opacity: 0.25;
    background: #ffffff;
  }
  .pwNavigation__navLevelOne__listItem.hovered::after, .pwNavigation__navLevelOne__listItem:hover::after {
    display: none;
  }
  .pwNavigation__navLevelOne__listItem::after {
    position: absolute;
    content: "";
    height: 30%;
    width: 1px;
    margin: auto;
    background-color: rgba(255, 255, 255, 0.4);
    top: 50%;
    transform: translateY(-50%);
  }
  .pwNavigation__navLevelOne__listItem:first-child::after {
    display: none;
  }
  .pwNavigation__navLevelTwo {
    display: none;
  }
  .pwNavigation .pwIcon {
    display: none;
  }
  .pwNavigation a:hover {
    color: #ffffff;
  }
  .pwNavigation a:hover span {
    color: #ffffff;
  }
  .pwNavigationDropdown {
    position: relative;
    width: 100%;
    height: 0;
    z-index: 10;
  }
  .pwNavigationDropdown__flyOut {
    top: 0;
    background: #ffffff;
    height: calc(90vh - 85px);
  }
  .pwNavigationDropdown__flyOut--expanded {
    height: auto;
  }
  .pwNavigationDropdown ul {
    width: 100%;
    padding: 20px 0 20px 0;
    position: relative;
    margin: 0;
  }
  .pwNavigationDropdown > div > div {
    background: var(--main-color);
    padding: 0 25px 0 15px;
    min-width: 140px;
    position: relative;
    opacity: 0.25;
    overflow: hidden;
    display: flex;
  }
  .pwNavigationDropdown > div ul li a {
    text-decoration: none;
    float: left;
    padding: 2px 0 0 12px;
    width: 160px;
    color: #fff;
    position: relative;
    outline: none;
  }
  .pwNavigationDropdown > div ul li a:hover {
    text-decoration: underline;
    text-underline-offset: 1px;
    text-decoration-thickness: 2px;
  }
  .pwNavigationDropdown > div ul li a:hover .label {
    opacity: 0.8;
  }
  .pwNavigationDropdown > div ul li a span.left {
    display: none;
  }
  .pwNavigationDropdown > div ul li a span.icon {
    display: none;
  }
  .pwNavigationDropdown > div.noborder > div {
    border-bottom: none;
  }
  .pwNavigationDropdown > .colsNav ul:first-child {
    margin-left: 0;
  }
  .single-reference .pwNavigation {
    display: none;
  }
  .home .pwNavigation__nav .home > a {
    background: var(--main-color);
  }
}
.pwHeader {
  background-color: transparent;
  position: absolute;
  z-index: 4;
  padding: 0;
  height: auto;
  box-shadow: none;
  /* user more qualified selector to override base rules */
}
.pwHeader > .container > .row {
  align-items: flex-start;
}
@media (max-width: 767.98px) {
  .pwHeader > .container > .row {
    align-items: center;
  }
}
.pwHeader .row {
  align-items: flex-start;
}
.pwHeader__contact a {
  color: rgb(33, 37, 41);
}
.pwHeader__contact .pwIcon {
  margin-right: 0;
}
.pwHeader__contact .pwIcon--phone svg path {
  fill: var(--main-color);
}
.pwHeader__contact .pwIcon--mail svg path {
  stroke: var(--main-color);
}
@media (max-width: 991.98px) {
  .pwHeader__contact {
    margin-top: 10px;
  }
}
.pwHeader__logo {
  position: relative;
  box-shadow: -3px 2px 22px 1px rgba(0, 0, 0, 0.29);
  -webkit-box-shadow: -3px 2px 22px 1px rgba(0, 0, 0, 0.29);
  -moz-box-shadow: -3px 2px 22px 1px rgba(0, 0, 0, 0.29);
  max-width: 200px;
}
@media (min-width: 992px) {
  .pwHeader__logo {
    height: 100%;
    max-width: 260px;
    padding: 0;
  }
}
.pwHeader__logo a {
  position: relative;
  display: flex;
  align-items: center;
  z-index: 1;
  background-color: #ffffff;
  padding: 0;
}
.pwHeader__logo a.logoBgCustomColor {
  margin: auto;
}
@media (max-width: 767.98px) {
  .pwHeader__logo a.logoBgCustomColor {
    width: 100%;
    height: 100%;
  }
}
@media (min-width: 992px) {
  .pwHeader__logo a {
    padding: 30px;
  }
}
.pwHeader__logo img {
  max-width: 100%;
}
@media (min-width: 992px) {
  .pwHeader__logo img.pwHeader__logo--customWidth, .pwHeader__logo img.pwHeader__logo--svg {
    max-height: none;
    width: 100%;
  }
}
@media (max-width: 991.98px) {
  .pwHeader__logo img {
    max-height: 75px;
  }
}
@media (max-width: 767.98px) {
  .pwHeader__logo img {
    max-height: 65px;
  }
}
@media (max-width: 991.98px) {
  .pwHeader__logo {
    box-shadow: none;
  }
}
.pwHeader .pwHeader__navTrigger > div {
  display: flex;
  height: 30px;
  width: 30px;
  justify-content: center;
  align-items: center;
  position: relative;
}
.pwHeader .pwHeader__navTrigger span {
  margin-left: 0;
}
.pwHeader .pwHeader__navTrigger.shown {
  background: var(--main-color);
  margin-right: 0;
}
.pwHeader .pwHeader__navTrigger.shown span:nth-child(1) {
  top: 49%;
}
.pwHeader .pwHeader__navTrigger.shown span:nth-child(3) {
  top: 50%;
}
@media (max-width: 991.98px) {
  .pwHeader {
    position: fixed;
    height: 95px;
    background: #ffffff;
    box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.1);
  }
  .pwHeader .pwHeader__logo {
    position: relative;
    box-shadow: none;
  }
  .pwHeader .pwHeader__logo > a.logoBgCustomColor {
    background-color: transparent !important;
  }
  .pwHeader > .container > .row {
    align-items: center;
    justify-content: flex-end;
    height: 100%;
    margin: 0;
  }
  .pwHeader > .container {
    height: 100%;
  }
  .pwHeader .pwHeader__navTrigger, .pwHeader .pwHeader__contact {
    margin-top: 0;
  }
  .pwHeader.pwNavigation__navLevelOne--expanded {
    height: 85px;
  }
}
@media (max-width: 767.98px) {
  .pwHeader {
    height: 85px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduX3BrX3dlYnNpdGVraXQtNS5jc3MiLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDQWhCO0FBQ0E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBREVKO0FDQ0E7Ozs7O0dBQUE7QUFPQTtBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QURBSjtBQ0dBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QURESjtBRTFCQTtFQUNJO0VBQ0E7QUY0Qko7O0FHOUJBOzs4Q0FBQTtBQUlBO0VBQ0k7QUhnQ0o7QUc3QlE7RUFDSTtFQUNBLGNDT0o7QUp3QlI7QUttQ0M7RUZwRU87SUFLUTtFSGdDZDtBQUNGO0FHN0JRO0VBQ0ksY0NESjtBSmdDUjtBRzVCUTtFQUNJO0FIOEJaO0FHNUJZO0VBQ0k7RUFDQTtFQUNBO0FIOEJoQjtBR3pCSTtFQUNJO0VBQ0EsNkJDakNJO0VEa0NKO0VBQ0E7RUFDQTtFQUNBLGNDckJBO0VEc0JBO0VBQ0E7RUFDQTtFQUNBO0VHekNKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QU5xRUo7QUc3QlE7RUFDSSxtQkNwQ0o7QUptRVI7QUczQkk7RUFDSTtFQUNBO0VBQ0E7RUFDQSxjQ3JDQTtFRHNDQTtFQUNBO0FINkJSO0FLVEM7RUYxQkc7SUFTUTtFSDhCVjtBQUNGO0FHNUJRO0VBQ0k7QUg4Qlo7QUcxQkk7RUFDSTtFQUNBO0FINEJSO0FHeEJRO0VBQ0k7QUgwQlo7QUdyQlE7RUFDSTtFQUNBO0VBQ0E7QUh1Qlo7O0FHakJJO0VBQ0k7RUFDQTtBSG9CUjtBR2pCSTtFQUNJO0FIbUJSOztBR2ZBO0VBQ0k7O0lBRUk7RUhrQk47QUFDRjtBT3hIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FQMEhGO0FPdkhBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QVB5SEY7QU90SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBUHdIRjtBT3JIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FQdUhGO0FRaEpBO0VBQ0k7QVJrSko7O0FROUlJO0VBQ0ksdUJKTEk7QUpzSlo7O0FRN0lBO0VBQ0k7RUFDQTtBUmdKSjs7QVE3SUE7RUFDSTtFQUNBO0FSZ0pKO0FROUlJO0VBQ0ksdUJKbkJJO0FKbUtaOztBUTVJQTtFQUNJO0VBQ0E7QVIrSUo7O0FRNUlBO0VBQ0k7QVIrSUo7O0FRNUlBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLDZCSnpDUTtBSndMWjtBUTdJSTtFQUNJLGNKNUJBO0FKMktSO0FRM0lRO0VBQ0ksY0p4Q0o7QUpxTFI7O0FTM0xBO0VBQ0MsOEJMRGlCO0FKK0xsQjtBUzVMQztFQUNDO0FUOExGOztBUzFMQTtFQUNDO0FUNkxEOztBU3hMQzs7Ozs7Ozs7OztFQUtDO0FUZ01GO0FTN0xDOztFQUNDO0FUZ01GO0FTN0xDOztFQUNDO0FUZ01GO0FTN0xDOztFQUNDO0FUZ01GO0FTN0xDOztFQUNDO0FUZ01GO0FTOUxFOztFQUNDO0FUaU1IOztBU3hMQzs7OztFQUNDO0FUOExGO0FTM0xDOzs7Ozs7OztFQUVDO0VBQ0E7QVRtTUY7QVNqTUU7Ozs7Ozs7O0VBQ0M7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUME1IO0FTeE1HOzs7Ozs7OztFQUNDO0VBQ0E7RUhtRkE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFRzNGQTtFQUNBO0VBQ0E7RUFDQTtBVHdOSjtBU3BOSTs7Ozs7Ozs7RUFDQztBVDZOTDtBUzFOSTs7Ozs7Ozs7RUFDQztFQUNBO0FUbU9MO0FTN05DOzs7O0VBQ0M7RUFDQTtBVGtPRjtBU2hPRTs7OztFQUNDO0VBQ0E7QVRxT0g7QVNuT0c7Ozs7RUFDQztFQUNBO0VBQ0E7RUFDQTtFQUNBO0FUd09KOztBU2pPQztFQUNDO0VBQ0E7QVRvT0Y7QVNsT0U7RUFDQztBVG9PSDs7QVMvTkE7QUFDQTtFQUNDO0FUa09EO0FTaE9DO0VBQ0M7QVRrT0Y7O0FTOU5BO0VBQ0M7QVRpT0Q7QVMvTkM7RUFDQztBVGlPRjs7QVM3TkE7RUFDQztJQUNDO0VUZ09BO0VTN05EO0lBQ0M7RVQrTkE7RVM1TkQ7SUFDQztFVDhOQTtBQUNGO0FTM05BO0FBQ0E7RUFDQztFQUNBO0FUNk5EOztBUzFOQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVQ2TkQ7O0FTMU5BOztFQUVDO0VBQ0E7RUFDQTtBVDZORDs7QVMxTkE7QUFPQzs7Ozs7Ozs7Ozs7O0VBRUM7RUFDQTtFQUNBO0FUaU9GO0FTOU5DOzs7Ozs7RUFDQztBVHFPRjs7QVNqT0E7Ozs7RUFJQyx3QkxuTVc7QUp1YVo7O0FTak9BO0VBQ0M7RUFDQTtBVG9PRDtBU2xPQztFQUNDO0FUb09GO0FLcFdDO0VJK0hBO0lBR0U7RVRzT0Q7QUFDRjs7QVNqT0M7RUFDQyx5QkxyTVU7QUp5YVo7QVNqT0c7RUFDQyw2QkxyTmM7QUp3YmxCO0FTL05FO0VBQ0MsY0w3TUs7QUo4YVI7QVM3TkM7RUFDQyx5Qkx2Tks7QUpzYlA7QVM3TkU7RUFDQyxhTHJOSztBSm9iUjtBUzNOQztFQUNDLHlCTDNOVTtBSndiWjtBUzFOQztFQUNDO0VBQ0E7QVQ0TkY7QVMxTkU7RUFDQztBVDROSDs7QVN0TkM7RUFDQztBVHlORjtBU3ROQztFQUNDO0VBQ0E7QVR3TkY7QVNyTkc7RUFDQyx3QkxsUVE7QUp5ZFo7O0FTak5BO0VBQ0M7QVRvTkQ7O0FTak5BO0VBQ0M7QVRvTkQ7O0FTak5BO0VBQ0M7QVRvTkQ7QVNuTkM7RUFDQztBVHFORjs7QVNqTkE7RUFDQztFQUNBO0FUb05EOztBU2pOQTtFQUNDO0VBQ0E7RUFDQTtFQUNBO0FUb05EOztBU2hOQztFQUNDO0FUbU5GOztBUy9NQTtFQUNDO0VBQ0E7RUFDQTtBVGtORDs7QVMvTUE7RUFDQztFQUNBO0FUa05EOztBUy9NQTtFQUNDO0FUa05EOztBUy9NQTtFQUNDLGNBeFRjO0FUMGdCZjs7QUtoY0M7RUlrUEE7SUFDQztFVGtOQTtBQUNGO0FLdGNDO0VJd1BBO0lBQ0M7SUFDQTtFVGlOQTtFUy9NQTtJQUNDO0VUaU5EO0FBQ0YsQztBVTNoQkEsZ0JBQWdCO0FDR1o7RUFDSTtBRERSO0FDSUk7RUFDSTtBREZSO0FDS0k7RUFDSTtBREhSO0FDS1E7RUFDSSxhQ0VKO0FGTFI7O0FDVUk7O0VBQ0k7QUROUjtBQ1NJOztFQUNJO0FETlI7QUNRUTs7RUFDSSxhQ2JKO0FGUVI7O0FBZEE7QUFFQTs7RUFFSSxlRTJCYTtBRlhqQjs7QUFiQTtFQUNJO0VBQ0E7RUFDQTtFQUNBLHdCRXJCUTtBRnFDWjs7QUFiQTtFR2dDQztBSGZEOztBQWJBOzs7O0VBSUksd0JFaENRO0FGZ0RaOztBQVBROzs7OztFSStHSjtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VKdkhRO0VBQ0E7QUFxQlo7O0FBaEJBO0VBQ0k7QUFtQko7QUFqQkk7RUFDSTtBQW1CUjtBQWpCUTtFQUNJO0VBQ0E7QUFtQlo7QUtkQztFTFZHO0lBU1E7RUFtQlY7QUFDRjtBQWhCSTtFQUNJO0FBa0JSO0FLVEM7RUwxQkQ7SUFxQlEsaUJNbkVhO0VOcUZuQjtBQUNGO0FLZEM7RUwxQkQ7SUF5QlEsaUJNdEVhO0VOeUZuQjtBQUNGOztBS2hDQztFTGlCRDtJQUVRO0VBa0JOO0FBQ0Y7O0FBYlE7RUFDSTtBQWdCWjtBQVpJO0VBQ0kseUJFN0VBO0FGMkZSO0FBWlE7RUFDSSx3QkVoR0E7QUY4R1o7QUFYUTtFQUNJLHVCRXBHQTtBRmlIWjs7QU9oSEM7RUh1Skc7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFRy9KRDtFQUNBO0FQMEhIOztBUTdIQTtFQUNJO0FSZ0lKO0FRN0hRO0VKbUpKO0VBQ0E7RUFFQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUkzSlE7RUFDQTtBUnNJWjtBUWpJUTtFQUNJLHVCTmRBO0FGaUpaO0FRL0hJO0VBQ0k7QVJpSVI7QVEvSFE7RUFDSTtFQUNBO0FSaUlaO0FROUhRO0VBQ0k7RUFDQTtBUmdJWjtBUTVIWTtFQUNJLGFOakJSO0FGK0lSO0FRekhJO0VDREE7RUFDQTtFREVJO0VBQ0E7RUFDQTtBUjRIUjtBS3hHQztFR3hCRztJQ0dJO0VUaUlOO0FBQ0Y7QVEvSFE7RUFDSTtFQUNBO0VBQ0E7QVJpSVo7QUtsSEM7RUdsQk87SUFLUTtFUm1JZDtBQUNGO0FRaElRO0VBQ0k7QVJrSVo7QUs3R0M7RUdyQ0c7SUFvQlE7SUFDQTtJQUNBO0VSa0lWO0FBQ0Y7QVE5SFE7RUFDSTtBUmdJWjtBUTlIUTtFQUNJO0FSZ0laO0FRNUhJO0VBQ0kseUJOM0RJO0VNNERKO0FSOEhSO0FRNUhRO0VBQ0k7QVI4SFo7QVExSEk7RUFDSTtBUjRIUjs7QVF4SEE7RUFDSTtFQUNBO0VBNEpBO0VBdUJBO0FSdERKO0FRMUhRO0VKd0ZKO0FKcUNKO0FJcENJO0VBQ0k7QUpzQ1I7QUlwQ1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKc0NaO0FRcElZO0VKb0dSO0FKbUNKO0FJbENJO0VBQ0k7QUpvQ1I7QUlsQ1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FKb0NaO0FRNUlnQjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0FSOElwQjtBUTNJd0I7RUFDSSx1Qk41R2hCO0FGeVBaO0FReElnQjtFQUNJO0VBQ0E7RUFDQTtBUjBJcEI7QVF4SWdCO0VBQ0k7RUFDQTtBUjBJcEI7QVF2SWdCO0VBQ0k7QVJ5SXBCO0FRcklZO0VBQ0k7RUFDQTtBUnVJaEI7QVFuSWdCO0VBQ0k7QVJxSXBCO0FRaklZO0VBQ0k7QVJtSWhCO0FRN0hnQjtFQUNJO0FSK0hwQjtBUTNIb0I7RUFDSTtBUjZIeEI7QVEzSHdCO0VBQ0k7QVI2SDVCO0FRbkhvQjtFQUNJO0FScUh4QjtBUWhIb0I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBUmtIeEI7QVEvRzRCO0VBQ0ksYU5uS3hCO0FGb1JSO0FRdEdZO0VBQ0k7QVJ3R2hCO0FRaEdZO0VBQ0k7QVJrR2hCO0FRdkZvQjtFQUNJLG1DTnBOWjtFTXFOWSxjTnJNaEI7QUY4UlI7QVF2RndCO0VKL0RwQjtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0FKc0pKO0FReEZ3QjtFQUNJLGFOak5wQjtBRjJTUjtBUWhGNEI7RUFDSSxhTi9OckI7QUZpVFg7QVF2RVE7RUFDSTtBUnlFWjtBUXRFZ0I7RUFDSTtBUndFcEI7QVFwRVk7RUFDSTtBUnNFaEI7QUs1UEM7RUd5TFc7SUFFUTtFUnFFbEI7QUFDRjtBUTdEWTtFQUNJO0FSK0RoQjtBUTVEWTtFQUNJO0VBQ0E7RUFDQTtBUjhEaEI7QVEzRFk7RUFDSTtFQUNBO0FSNkRoQjtBUXREWTtFQUNJO0VBQ0E7RUFDQTtBUndEaEI7QVF0RGdCO0VBQ0k7RUFDQTtFQUNBO0FSd0RwQjtBUXJEZ0I7RUFDSTtBUnVEcEI7QVFwRGdCO0VBQ0k7RUFDQTtFQUNBO0FSc0RwQjtBUXBEb0I7RUFDSSxtQ052VFo7QUY2V1o7QVFwRHdCO0VBQ0kseUJOalRwQjtBRnVXUjtBUWxEb0I7RUFDSTtBUm9EeEI7QVE5Q2dCO0VBQ0k7QVJnRHBCO0FRekNRO0VKeFFKO0VJMFFRO0FSMkNaO0FRekNZO0VBQ0k7RUFDQTtBUjJDaEI7O0FRbkNRO0VBQ0kseUJONVVKO0VNNlVJO0VBQ0E7QVJzQ1o7QVFuQ1E7RUEyREk7QVJyQlo7QVFyQ1k7RUE4Q0k7QVJOaEI7QVF0Q29CO0VBQ0k7QVJ3Q3hCO0FRckNvQjtFQUNJO0VBQ0E7RUFDQTtBUnVDeEI7QVFwQ29CO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUnNDeEI7QVFwQ3dCO0VBQ0k7RUFDQTtBUnNDNUI7QVFwQzRCO0VBQ0k7QVJzQ2hDO0FRbENnQztFQUNJO0FSb0NwQztBUS9Cd0I7RUFDSTtFQUNBLHdCTnRZaEI7RU11WWdCO0FSaUM1QjtBUTVCZ0I7RUFDSTtBUjhCcEI7QVExQmdCO0VBQ0k7QVI0QnBCO0FReEJvQjtFQUNJO0FSMEJ4QjtBUWpCb0I7RUFDSTtBUm1CeEI7QVFiZ0I7RUFDSTtFQUNBO0FSZXBCO0FRVlE7RUFDSTtBUllaO0FLaFhDO0VHdVdPO0lBRVE7RVJXZDtBQUNGO0FRUFk7RUFDSTtFQUNBO0VBQ0E7QVJTaEI7O0FRRkk7O0VBRUk7QVJLUjtBSzVZQztFR3FZRzs7SUFLUTtFUk9WO0FBQ0Y7QUtsWkM7RUdxWUc7O0lBU1E7RVJTVjtBQUNGO0FRTFE7RUFDSTtBUk9aO0FRSFk7RUFDSTtFQUNBO0FSS2hCO0FRSGdCO0VBQ0ksd0JOM2RSO0FGZ2VaO0FRQWdCO0VBQ0ksdUJOamVSO0FGbWVaO0FRR2dCO0VKelZaO0VBQ0E7RUFDQTtBSnlWSjtBSzFhQztFRythRztJQUVRO0VSSFY7QUFDRjtBUU1JO0VBQ0ksY04zZUE7QUZ1ZVI7O0FRYW9CO0VBQ0k7RUFDQTtBUlZ4QjtBUWFvQjtFQUNJO0VBQ0E7QVJYeEI7QVFhd0I7RUFDSTtFQUNBO0FSWDVCO0FRYTRCO0VBQ0k7QVJYaEM7QVFnQjRCO0VBQ0ksdUJOamhCcEI7QUZtZ0JaO0FRc0J3QjtFQUNJLGNOMWdCcEI7QUZzZlI7QVF1QndCO0VBQ0ksbUNOOWhCaEI7RU0raEJnQixjTi9nQnBCO0FGMGZSO0FRd0JnQztFQUNJLGFObmhCNUI7QUY2ZlI7QVFnQ0k7RUFDSTtBUjlCUjtBUWlDWTtFQUNJLDhCTi9pQkU7QUZnaEJsQjtBUWtDWTtFQUVJO0FSakNoQjtBUThDb0I7RUFDSTtBUjVDeEI7QVErQ29CO0VBQ0k7RUFDQTtBUjdDeEI7QVErQ3dCO0VBQ0ksbUNON2tCaEI7QUZnaUJaOztBVS9oQlE7RUFDSTtBVmtpQlo7QVVoaUJZO0VBQ0ksbUNSTEo7QUZ1aUJaO0FVaGlCZ0I7RUFDSSx5QlJDWjtBRmlpQlI7QVU3aEJRO0VBQ0k7QVYraEJaOztBV3ZpQkM7RUFDRTtBWDBpQkg7O0FZL2lCSTtFQUNJLHdCVkhJO0FGcWpCWjtBWWhqQlE7RUFDSSxjVkdKO0FGK2lCUjs7QVkzaUJJOztFVDRCSDtFQUNBO0FIb2hCRDtBWTdpQkk7O0VUNkJIO0VBQ0E7RVM1Qk87RUFDQTtBWmlqQlI7QVk5aUJJOztFVDRCSDtFQUNBO0VTM0JPO0VBQ0E7QVprakJSO0FZL2lCSTs7RUFDSTtFQUNBO0Faa2pCUjtBWS9pQkk7Ozs7OztFQUdJO0Fab2pCUjtBWWpqQkk7O0VBQ0k7QVpvakJSOztBYTdsQkk7RUFDSTtBYmdtQlI7QWE3bEJJO0VBQ0k7QWIrbEJSOztBY3JtQkE7QUFFSTtFQUNJO0FkdW1CUjtBY2xtQlk7RUFDSTtBZG9tQmhCO0Fjam1CWTtFQUNJO0FkbW1CaEI7O0FjN2xCQTtBQUNBO0VBQ0ksK0JacEJRO0FGb25CWjs7QWM1bEJJO0VBQ0k7QWQrbEJSO0FjNWxCSTtFQUNJO0VBQ0E7QWQ4bEJSO0FLampCQztFU3pDTztJQUVRO0VkNGxCZDtBQUNGO0FjemxCUTtFQUNJO0FkMmxCWjtBS3pqQkM7RVM5Qkc7SUFFUTtFZHlsQlY7QUFDRjtBY3JsQlE7RUFDSTtFQUNBO0VBQ0EsNkJadkRBO0VZd0RBO0VBQ0E7RVZ6RFI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSmlwQko7QWN6bEJZO0VBQ0k7RVY3RFo7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSnlwQko7QWM1bEJZO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBZDhsQmhCO0FjNWxCZ0I7RUFDSTtFVjVFaEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSjJxQko7QWM5bEJZO0VBQ0k7QWRnbUJoQjtBYzdsQlk7RUFDSTtFQUNBO0VBQ0E7QWQrbEJoQjtBYzVsQlk7RUFDSTtFQUNBO0VBQ0E7QWQ4bEJoQjtBYzNsQlk7RUFDSTtFQUNBO0FkNmxCaEI7QWMxbEJZO0VBQ0k7QWQ0bEJoQjtBY3hsQlE7RUFDSTtBZDBsQlo7QWN2bEJROztFQUVJO0VBQ0E7RUFDQTtFQUNBO0FkeWxCWjtBY3RsQlE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBZHdsQlo7QUt4b0JDO0VTcURPOztJQUdRO0VkcWxCZDtBQUNGO0FLOW9CQztFUzZERztJQUVRO0VkbWxCVjtBQUNGO0FLbnBCQztFU2tFTztJQUVRO0lBQ0E7RWRtbEJkO0FBQ0Y7QUt6cEJDO0VTeUVPO0lBRVE7RWRrbEJkO0FBQ0Y7O0FjN2tCQTtFQUNJO0FkZ2xCSjtBYzlrQkk7RUFDSTtBZGdsQlI7O0FjNWtCQTtFQUNJO0FkK2tCSjs7QWM1a0JBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QWQra0JKO0FLaHJCQztFUzZGRDtJQU1RO0lBQ0E7RWRpbEJOO0FBQ0Y7O0FjOWtCQTs7RUFFSTtFQUNBO0VBQ0E7QWRpbEJKOztBYzlrQkE7RUFDSTtBZGlsQko7O0FjOWtCQTtFQUNJO0VBQ0E7RUFDQTtBZGlsQko7QUt2c0JDO0VTbUhEO0lBS1E7RWRtbEJOO0FBQ0Y7O0FjaGxCQTtFQUNJO0FkbWxCSjs7QWNobEJBO0VBQ0k7QWRtbEJKOztBZTV4QmdCO0VBQ0k7RUFDQSxtQ2JMUjtBRm95Qlo7QWV2eEJZO0VBQ0kseUJiQ0o7QUZ3eEJaO0FldnhCZ0I7RUFDSTtFQUNBLDhCYmZGO0FGd3lCbEI7QWV0eEJnQjtFQUNJLDhCYm5CRjtBRjJ5QmxCO0FlcHhCb0I7RUFDSSx1QmIzQlo7QUZpekJaO0FlbHhCZ0I7RUFDSTtFQUNBLHdCYmpDUjtBRnF6Qlo7QWVoeEJZO0VBQ0kseUJidkJKO0FGeXlCWjs7QWdCeHpCSTtFQUNJO0FoQjJ6QlI7QWdCeHpCSTtFQUNJO0FoQjB6QlI7QUtqd0JDO0VXckRPO0lBQ0k7RWhCeXpCVjtFZ0J0ekJNO0lBQ0k7RWhCd3pCVjtBQUNGO0FLendCQztFVzNDTztJQUNJO0VoQnV6QlY7RWdCcHpCTTtJQUNJO0VoQnN6QlY7QUFDRjs7QWlCNTBCQTtFQUVJLGFBTmlCO0VBZ0JqQjtBakJxMEJKO0FLdHhCQztFWTNERDtJQUtRLGFBUmE7RWpCdzFCbkI7QUFDRjtBSzN4QkM7RVkzREQ7SUFTUSxhQVhjO0VqQjQxQnBCO0FBQ0Y7QWlCNzBCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCKzBCWjtBaUIzMEJJO0VBQ0k7QWpCNjBCUjtBaUIxMEJJO0VBQ0k7RUFDQSxXZlZZO0FGczFCcEI7QUtqekJDO0VZN0JHO0lBS1E7RWpCNjBCVjtBQUNGOztBS3R6QkM7RVlsQkc7SUFFUTtFakIyMEJWO0FBQ0Y7QWlCeDBCSTtFQUNJO0VBQ0E7QWpCMDBCUjs7QWlCcjBCSTtFQUNJO0FqQncwQlI7O0FpQm4wQkk7RUFDSTtBakJzMEJSOztBa0J0NEJJO0VBQ0k7QWxCeTRCUjtBa0J0NEJJO0VBQ0k7QWxCdzRCUjtBa0JyNEJJO0VBQ0k7QWxCdTRCUjtBS3IwQkM7RWE1RUQ7SUFjUTtJQUNBO0VsQnU0Qk47QUFDRjs7QW1CcjVCRTtFQUNEO0FuQnc1QkQ7QW1CdDVCQztFZm9KRztFQUNBO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VlNUpEO0VBQ0E7RUFDQTtBbkIrNUJIOztBb0J0NkJBO0VBQ0k7QXBCeTZCSjtBb0JyNkJRO0VBQ0ksd0JsQlBBO0FGODZCWjtBb0JsNkJRO0VBQ0ksd0JsQmJBO0FGaTdCWjtBb0I3NUJnQjtFQUNJLHdCbEJyQlI7QUZvN0JaO0FvQnY1QlE7RUFDSSxtQmxCZEo7QUZ1NkJSO0FvQnI1Qlk7RUFDSTtBcEJ1NUJoQjtBb0JuNUJRO0VBQ0k7QXBCcTVCWjtBb0JqNUJZO0VBQ0ksbUJsQjdCUjtFa0I4QlE7QXBCbTVCaEI7QW9CajVCZ0I7RUFDSSxtQmxCbENSO0FGcTdCWjtBb0I3NEJJO0VBQ0ksbUJsQnpDSTtFa0IwQ0osd0JsQnpESTtFa0IwREo7QXBCKzRCUjtBb0I1NEJZO0VBQ0ksbUJsQi9DSjtBRjY3Qlo7QW9CeDRCZ0I7RUFDSTtBcEIwNEJwQjtBb0JuNEJZO0VBQ0ksd0JsQjdFSjtBRms5Qlo7QW9CajRCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCbTRCWjtBb0JqNEJZO0VBQ0k7QXBCbTRCaEI7QW9CaDRCWTtFQUNJO0FwQms0QmhCO0FvQjkzQmdCO0VBQ0ksdUJsQmxHUjtBRmsrQlo7QW9CNTNCWTtFQUNJLHdCbEJ2R0o7QUZxK0JaO0FvQjEzQlE7RUFDSTtFQUNBO0FwQjQzQlo7QW9CMTNCWTtFQUVJO0FwQjIzQmhCO0FvQngzQlk7RUFDSTtBcEIwM0JoQjtBb0J2M0JZO0VBQ0k7QXBCeTNCaEI7QW9CdDNCWTs7RUFFSSx3QmxCOUhKO0FGcy9CWjtBb0JyM0JZO0VBQ0k7QXBCdTNCaEI7QW9CcjNCZ0I7RUFFSTtBcEJzM0JwQjtBb0JsM0JZO0VBQ0k7QXBCbzNCaEI7QW9CbDNCZ0I7RUFDSTtFQUNBO0VBQ0E7QXBCbzNCcEI7QW9CLzJCUTtFQUNJO0FwQmkzQlo7QW9CLzJCWTtFWDlGUjtFQUNBO0FUZzlCSjtBb0I3MkJvQjtFQUNJO0VBQ0E7QXBCKzJCeEI7QW9CMzJCZ0I7RVhyR1o7QVRtOUJKO0FvQnoyQlk7O0VBRUk7QXBCMjJCaEI7QW9CeDJCWTs7RUFFSTtBcEIwMkJoQjtBb0J2MkJZO0VBQ0k7QXBCeTJCaEI7QW9CcjJCUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBCdTJCWjtBb0JwMkJRO0VBQ0k7QXBCczJCWjtBb0JwMkJZO0VBQ0ksbUNsQnBNSjtFT21EUixjUG5DSTtFT29DSjtFQUNBO0VBQ0E7RVdnSlk7QXBCeTJCaEI7QW9CdDJCWTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQncyQmhCO0FvQm4yQkk7RUFDSTtBcEJxMkJSO0FLbi9CQztFZTFFRDtJQTROUTtJQUNBO0VwQnEyQk47QUFDRjs7QUt6L0JDO0VnQjNFRztJQUNJLDZCbkJESTtJbUJFSjtJQUNBO0lBQ0E7SUFDQSxTZkRhO0VOeWtDbkI7RXFCdGtDTTtJQUNJO0VyQndrQ1Y7RXFCcmtDTTtJQUNJO0VyQnVrQ1Y7RXFCcmtDVTtJQUNJO0VyQnVrQ2Q7RXFCcGtDVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXJCc2tDZDtFcUJwa0NjO0lBQ0k7RXJCc2tDbEI7RXFCbmtDYztJQUNJO0VyQnFrQ2xCO0VxQmprQ1U7SUFDSTtJQUNBO0VyQm1rQ2Q7RXFCamtDYztJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyQm1rQ2xCO0VxQjdqQ2M7O0lBQ0k7SWpCbUZoQjtJQUNBO0lBQ0E7RUo4K0JGO0VxQjlqQ1U7SUFDSTtJQUNBO0lBQ0E7SUFDQTtFckJna0NkO0VxQjlqQ2M7SUFDSTtJakJ0RWhCO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RUp1b0NGO0VxQmprQ2M7SUFDSTtFckJta0NsQjtFcUIvakNVO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyQmlrQ2Q7RXFCL2pDYztJQUNJLDZCbkJ4RlI7SW1CeUZRO0lBQ0E7RXJCaWtDbEI7RXFCL2pDa0I7SUFHSTtFckIrakN0QjtFcUI1akNrQjtJQUNJO0lqQm5HcEI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFSmtxQ0Y7RXFCempDMEI7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBLG1CbkJyR3hCO0VGZ3FDTjtFcUJ0akMwQjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VyQndqQzlCO0VxQmhqQ1U7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBLDZCbkI5SUo7SUVBUjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VKaXNDRjtFcUJwakNjO0lBQ0k7RXJCc2pDbEI7RXFCcGpDa0I7SUFFSSw2Qm5CdEpaO0ltQnVKWTtFckJxakN0QjtFcUJuakNzQjtJQUNJLDZCbkIxSmhCO0ltQjJKZ0I7SWpCZHhCO0lBQ0E7SUFDQTtFSm9rQ0Y7RXFCampDMEI7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFckJtakM5QjtFcUI3aUNzQjtJQUNJO0lBQ0E7RXJCK2lDMUI7RXFCM2lDa0I7SWpCckVoQjtJQUNBO0lBQ0E7SUFDQTtJQW5IQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VKdXVDRjtFcUJoakNjOzs7SUFHSTtFckJrakNsQjtFcUI5aUNVO0lBQ0ksNkJuQm5NSjtJbUJvTUk7SUFDQTtJQUNBO0VyQmdqQ2Q7RXFCOWlDYztJQUNJO0lBQ0EsZW5CaktIO0VGaXRDZjtFcUI1aUNrQjtJQUdJO0lBQ0EsNkJuQmxOWjtFRjh2Q1Y7RXFCMWlDc0I7SUFDSTtFckI0aUMxQjtFcUJ2aUNjO0lBQ0k7RXJCeWlDbEI7QUFDRjtBS3ZzQ0M7RWlCOURHO0lBQ0ksNkJwQkRJO0lvQkVKO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRCd3dDTjtFc0J0d0NNO0lBQ0k7RXRCd3dDVjtFc0J0d0NVOztJQUVJO0V0Qnd3Q2Q7RXNCcndDVTtJQUNJO0V0QnV3Q2Q7RXNCcHdDVTtJQUNJO0V0QnN3Q2Q7RXNCbndDVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFdEJxd0NkO0VzQm53Q2M7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0EsY3BCdEJaO0lvQnVCWTtJQUNBO0lBQ0E7RXRCcXdDbEI7RXNCbHdDYztJQUNJO0lBQ0E7SUFDQTtFdEJvd0NsQjtFc0Jsd0NrQjtJQUNJO0V0Qm93Q3RCO0VzQmp3Q2tCO0lBQ0k7RXRCbXdDdEI7RXNCaHdDa0I7SUFHSTtFdEJnd0N0QjtFc0IzdkNzQjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQSxtQnBCMURwQjtFRnV6Q047RXNCMXZDc0I7SUFDSTtFdEI0dkMxQjtFc0J4dkNrQjtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRCMHZDdEI7RXNCdHZDc0I7SUFDSTtFdEJ3dkMxQjtFc0JsdkNVO0lBQ0k7RXRCb3ZDZDtFc0JodkNNO0lBQ0k7RXRCa3ZDVjtFc0IvdUNNO0lBQ0ksY3BCL0ZKO0VGZzFDTjtFc0IvdUNVO0lBQ0ksY3BCbEdSO0VGbTFDTjtFc0I1dUNFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RXRCOHVDTjtFc0I1dUNNO0lBQ0k7SUFDQSxtQnBCL0dKO0lvQmdISTtFdEI4dUNWO0VzQjV1Q1U7SUFDSTtFdEI4dUNkO0VzQjF1Q007SUFDSTtJQUNBO0lBQ0E7SUFDQTtFdEI0dUNWO0VzQnh1Q1U7SUFDSSw2QnBCaEpKO0lvQmlKSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRCMHVDZDtFc0J2dUNVO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXRCeXVDZDtFc0J2dUNjO0lsQnJCWjtJQUNBO0lBQ0E7RUordkNGO0VzQjF1Q2tCO0lBQ0k7RXRCNHVDdEI7RXNCeHVDYztJQUNJO0V0QjB1Q2xCO0VzQnZ1Q2M7SUFDSTtFdEJ5dUNsQjtFc0JydUNVO0lBQ0k7RXRCdXVDZDtFc0JudUNNO0lBQ0k7RXRCcXVDVjtFc0JqdUNFO0lBQ0k7RXRCbXVDTjtFc0JodUNFO0lBQ0ksNkJwQmpNSTtFRm02Q1Y7QUFDRjtBdUJuNkNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBdUdBO0F2Qjh6Q0o7QXVCbjZDSTtFQUNJO0F2QnE2Q1I7QUtyMkNDO0VrQmpFRztJQUlRO0V2QnM2Q1Y7QUFDRjtBdUJuNkNJO0VBQ0k7QXZCcTZDUjtBdUJoNkNRO0VBQ0k7QXZCazZDWjtBdUIvNUNRO0VBQ0k7QXZCaTZDWjtBdUI5NUNnQjtFQUNJLHVCckJqQ1I7QUZpOENaO0F1QjM1Q2dCO0VBQ0kseUJyQnZDUjtBRm84Q1o7QUt6M0NDO0VrQnJERztJQXVCUTtFdkIyNUNWO0FBQ0Y7QXVCeDVDSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCMDVDUjtBS2w1Q0M7RWtCYkc7SUFTUTtJQUNBO0lBQ0E7RXZCMDVDVjtBQUNGO0F1Qng1Q1E7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCckJwREo7RXFCcURJO0F2QjA1Q1o7QXVCeDVDWTtFQUNJO0F2QjA1Q2hCO0FLdjVDQztFa0JKVztJQUlRO0lBQ0E7RXZCMjVDbEI7QUFDRjtBSzE2Q0M7RWtCQ087SUFrQlE7RXZCMjVDZDtBQUNGO0F1Qng1Q1E7RUFDSTtBdkIwNUNaO0FLbDdDQztFa0IyQmU7SUFDSTtJQUNBO0V2QjA1Q2xCO0FBQ0Y7QUszNkNDO0VrQlVPO0lBV1E7RXZCMDVDZDtBQUNGO0FLaDdDQztFa0JVTztJQWVRO0V2QjI1Q2Q7QUFDRjtBS3I3Q0M7RWtCMUJHO0lBeURRO0V2QjA1Q1Y7QUFDRjtBdUJwNUNRO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F2QnM1Q1o7QXVCbjVDUTtFQUNJO0F2QnE1Q1o7QXVCbDVDUTtFQUNJLDZCckIvSEE7RXFCZ0lBO0F2Qm81Q1o7QXVCajVDZ0I7RUFDSTtBdkJtNUNwQjtBdUJoNUNnQjtFQUNJO0F2Qms1Q3BCO0FLLzhDQztFa0IxRUQ7SUE4SVE7SUFDQSxZakI3SWE7SWlCOEliLG1CckJqSUE7SXFCa0lBO0V2Qis0Q047RXVCNzRDTTtJQUNJO0lBQ0E7RXZCKzRDVjtFdUI1NENVO0lBQ0k7RXZCODRDZDtFdUIxNENNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7RXZCNDRDVjtFdUJ6NENNO0lBQ0k7RXZCMjRDVjtFdUJ4NENNO0lBQ0k7RXZCMDRDVjtFdUJ2NENNO0lBQ0ksWWpCMUtTO0VObWpEbkI7QUFDRjtBSzcrQ0M7RWtCMUVEO0lBa0xRLFlqQi9LYTtFTndqRG5CO0FBQ0YsQyIsInNvdXJjZXMiOlsid2VicGFjazovL2Zyb250ZW5kLy4vZ2xvYmFsLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9iYXNlL193ZWJmb250cy5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vZ2xvYmFsL19icm93c2VyLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9nbG9iYWwvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL2luY2x1ZGVzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL2luY2x1ZGVzL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vaW5jbHVkZXMvX21peGlucy5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vZ2xvYmFsL190eXBvLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9nbG9iYWwvX2ljb25zLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9nbG9iYWwvX2xheW91dC5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vZGVzaWduNS5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vYnV0dG9ucy5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4uLy4uL2luY2x1ZGVzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uLi8uLi9pbmNsdWRlcy9fdGV4dHN0eWxlcy5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4uLy4uL2luY2x1ZGVzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uLi8uLi9pbmNsdWRlcy9fYnJlYWtwb2ludHMuc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vdmlld3MvdGFibGUuc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL3ZpZXdzL3RlYXNlcmdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi90ZXh0c3R5bGVzLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi92aWV3cy9jZXJ0aWZpY2F0ZS5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vdmlld3MvYWNjb3JkaW9uLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi92aWV3cy90ZXh0aW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL3ZpZXdzL2Jhbm5lci5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vdmlld3MvZm9ybS5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vdmlld3MvcmVmZXJlbmNlcy5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vdmlld3Mvc3dpcGVyLW5hdmlnYXRpb24uc2NzcyIsIndlYnBhY2s6Ly9mcm9udGVuZC8uL3ZpZXdzL3N0YWdlLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi92aWV3cy9kaXJlY3Rpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi92aWV3cy9nYWxsZXJ5LnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9wYXJ0aWFscy9zaWRlYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9wYXJ0aWFscy9uYXZpZ2F0aW9uL25hdmlnYXRpb25Nb2JpbGUvbmF2aWdhdGlvbi5zY3NzIiwid2VicGFjazovL2Zyb250ZW5kLy4vcGFydGlhbHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uRGVza3RvcC9uYXZpZ2F0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vZnJvbnRlbmQvLi9wYXJ0aWFscy9oZWFkZXIuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiBOb3RvIFNhbnMgfCBSZWd1bGFyICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIuLy4uLy4uL2ZvbnRzL05vdG9fU2Fucy9Ob3RvU2Fucy1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cbi8qIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTm90byBTYW5zJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBzcmM6IHVybCgnLi4vLi4vLi4vZm9udHMvTm90b19TYW5zL05vdG9TYW5zLVJlZ3VsYXJJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xufSAqL1xuLyogTm90byBTYW5zIHwgQm9sZCAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2Fuc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKFwiLi8uLi8uLi9mb250cy9Ob3RvX1NhbnMvTm90b1NhbnMtQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zXCI7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgc3JjOiB1cmwoXCIuLy4uLy4uL2ZvbnRzL05vdG9fU2Fucy9Ob3RvU2Fucy1Cb2xkSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cbmltZyB7XG4gIC8qIHByZXZlbnQgZWRnZSB0byBzaG93IHZpc3VhbCBzZWFyY2ggaWNvbiAqL1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyogQGltcG9ydCAnLi4vLi4vc3R5bGVzL2luY2x1ZGVzL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuLi8uLi9zdHlsZXMvaW5jbHVkZXMvbWl4aW5zJztcbkBpbXBvcnQgJy4uLy4uL3N0eWxlcy9pbmNsdWRlcy9icmVha3BvaW50cyc7ICovXG4ucHdCdXR0b24ge1xuICAvKiBoaW50OiBub3QgZXZlcnkgYnV0dG9uIGNvbnRhaW5zIGEgKGUuZy4gZnVsbHkgbGlua2VkIHRlYXNlcikgKi9cbn1cbi5wd0J1dHRvbi5idXR0b24tYmFjayBhIHtcbiAgd2lkdGg6IGF1dG87XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gIC5wd0J1dHRvbi5idXR0b24tYmFjayBhIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG59XG4ucHdCdXR0b24uYnV0dG9uLWJhY2sgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLnB3QnV0dG9uLmJ1dHRvbi1iYWNrIGEgc3Bhbi5sZWZ0IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5wd0J1dHRvbi5idXR0b24tYmFjayBhIHNwYW4ubGVmdCAucHdJY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xufVxuLnB3QnV0dG9uIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYmFja2dyb3VuZDogdmFyKC0tbWFpbi1jb2xvcik7XG4gIHdpZHRoOiBhdXRvO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDEycHggMTdweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xufVxuLnB3QnV0dG9uIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xufVxuLnB3QnV0dG9uIC5sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucHdCdXR0b24gLmxhYmVsIHtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgfVxufVxuLnB3QnV0dG9uIC5sYWJlbCAucHdJY29uIHtcbiAgcmlnaHQ6IGF1dG87XG59XG4ucHdCdXR0b24gLnB3SWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucHdCdXR0b24tLW5vVGV4dCBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi5wd0J1dHRvbi5wd0J1dHRvbi0tdGV4dCBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMzMzO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucHdCdXR0b25CYWNrIC5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5wd0J1dHRvbkJhY2sgLnJpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5idXR0b24gYSAucmlnaHQsXG4uYnV0dG9uLWJhY2sgYSAubGVmdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoXCIuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vZm9udHMvTm90b1NhbnMvTm90b1NhbnMtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uLy4uL2ZvbnRzL05vdG9TYW5zL05vdG9TYW5zLVJlZ3VsYXIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJOb3RvIFNhbnNcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnRzL05vdG9TYW5zL05vdG9TYW5zLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vLi4vZm9udHMvTm90b1NhbnMvTm90b1NhbnMtQm9sZC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2Fuc1wiO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKFwiLi4vLi4vZm9udHMvTm90b1NhbnMvTm90b1NhbnMtQm9sZEl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1Cb2xkSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJOb3RvIFNhbnNcIjtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybChcIi4uLy4uL2ZvbnRzL05vdG9TYW5zL05vdG9TYW5zLUl0YWxpYy5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xufVxuLnB3SWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnB3SWNvbi0tYW5nbGUtY2lyY2xlLWRvd24gc3ZnIGNpcmNsZSB7XG4gIGZpbGw6IHZhcigtLW1haW4tY29sb3IpO1xufVxuXG4ucHdJY29uLS1hbmdsZS1yaWdodCBzdmcge1xuICB3aWR0aDogN3B4O1xuICBoZWlnaHQ6IDEycHg7XG59XG5cbi5wd0ljb24tLWFuZ2xlLXJpZ2h0LWRvdWJsZSBzdmcge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xufVxuLnB3SWNvbi0tYW5nbGUtcmlnaHQtZG91YmxlIHN2ZyBwYXRoIHtcbiAgZmlsbDogdmFyKC0tbWFpbi1jb2xvcik7XG59XG5cbi5wd0ljb24tLWFycm93LXJpZ2h0LXRoaW4gc3ZnIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cblxuLnB3SWNvbi0tcGhvbmUtc3Ryb2tlIHN2ZyBwYXRoIHtcbiAgc3Ryb2tlOiBub25lO1xufVxuXG4uZW5sYXJnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMC42MjVyZW07XG4gIGJvdHRvbTogMC42MjVyZW07XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1tYWluLWNvbG9yKTtcbn1cbi5lbmxhcmdlIC5mYS1zZWFyY2g6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4uZW5sYXJnZTpob3ZlciAuZmEtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG5ib2R5IHtcbiAgY29sb3I6IHZhcigtLWZvbnQtY29sb3IsICMzMzMpO1xufVxuYm9keSAqIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zXCI7XG59XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4ucHdUZXh0IGgxOmZpcnN0LWNoaWxkLFxuLnB3VGV4dCBoMjpmaXJzdC1jaGlsZCxcbi5wd1RleHQgaDM6Zmlyc3QtY2hpbGQsXG4ucHdUZXh0IGg0OmZpcnN0LWNoaWxkLFxuLnB3VGV4dCBoNTpmaXJzdC1jaGlsZCxcbi5wd1RleHRJbWFnZSBoMTpmaXJzdC1jaGlsZCxcbi5wd1RleHRJbWFnZSBoMjpmaXJzdC1jaGlsZCxcbi5wd1RleHRJbWFnZSBoMzpmaXJzdC1jaGlsZCxcbi5wd1RleHRJbWFnZSBoNDpmaXJzdC1jaGlsZCxcbi5wd1RleHRJbWFnZSBoNTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ucHdUZXh0ID4gaDEsXG4ucHdUZXh0SW1hZ2UgPiBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDAuN2VtO1xufVxuLnB3VGV4dCA+IGgzLFxuLnB3VGV4dEltYWdlID4gaDMge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG4ucHdUZXh0IC5hbGlnbi1jZW50ZXIsXG4ucHdUZXh0SW1hZ2UgLmFsaWduLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5wd1RleHQgLnB3QnV0dG9uLFxuLnB3VGV4dEltYWdlIC5wd0J1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDEuNzlyZW07XG59XG4ucHdUZXh0IC5wd0J1dHRvbiA+IGEsXG4ucHdUZXh0SW1hZ2UgLnB3QnV0dG9uID4gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnB3VGV4dCBvbCxcbi5wd1RleHRJbWFnZSBvbCxcbi5wd1RhYmxlIG9sLFxuLnB3VGVhc2VyIG9sIHtcbiAgY291bnRlci1yZXNldDogbnVtYmVycztcbn1cbi5wd1RleHQgdWwsXG4ucHdUZXh0IG9sLFxuLnB3VGV4dEltYWdlIHVsLFxuLnB3VGV4dEltYWdlIG9sLFxuLnB3VGFibGUgdWwsXG4ucHdUYWJsZSBvbCxcbi5wd1RlYXNlciB1bCxcbi5wd1RlYXNlciBvbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5wd1RleHQgdWwgbGksXG4ucHdUZXh0IG9sIGxpLFxuLnB3VGV4dEltYWdlIHVsIGxpLFxuLnB3VGV4dEltYWdlIG9sIGxpLFxuLnB3VGFibGUgdWwgbGksXG4ucHdUYWJsZSBvbCBsaSxcbi5wd1RlYXNlciB1bCBsaSxcbi5wd1RlYXNlciBvbCBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMjVweDtcbn1cbi5wd1RleHQgdWwgbGk6OmJlZm9yZSxcbi5wd1RleHQgb2wgbGk6OmJlZm9yZSxcbi5wd1RleHRJbWFnZSB1bCBsaTo6YmVmb3JlLFxuLnB3VGV4dEltYWdlIG9sIGxpOjpiZWZvcmUsXG4ucHdUYWJsZSB1bCBsaTo6YmVmb3JlLFxuLnB3VGFibGUgb2wgbGk6OmJlZm9yZSxcbi5wd1RlYXNlciB1bCBsaTo6YmVmb3JlLFxuLnB3VGVhc2VyIG9sIGxpOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLyogUmVwbGFjZW1lbnQgZm9yIHN2ZyBkYXRhIHdpdGhpbiBjb250ZW50L2JhY2tncm91bmQgb2YgcHNldWRvZWxlbWVudHMgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbiAgY29udGVudDogXCJcIjtcbiAgLXdlYmtpdC1tYXNrOiB1cmwoXCIuLi8uLi9pY29ucy9hcnJvdy10aGluLXJpZ2h0LnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgbWFzazogdXJsKFwiLi4vLi4vaWNvbnMvYXJyb3ctdGhpbi1yaWdodC5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG4gIC13ZWJraXQtbWFzay1zaXplOiBjb3ZlcjtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiA0cHg7XG59XG4ucHdUZXh0IHVsIGxpIGEgc3Bhbixcbi5wd1RleHQgb2wgbGkgYSBzcGFuLFxuLnB3VGV4dEltYWdlIHVsIGxpIGEgc3Bhbixcbi5wd1RleHRJbWFnZSBvbCBsaSBhIHNwYW4sXG4ucHdUYWJsZSB1bCBsaSBhIHNwYW4sXG4ucHdUYWJsZSBvbCBsaSBhIHNwYW4sXG4ucHdUZWFzZXIgdWwgbGkgYSBzcGFuLFxuLnB3VGVhc2VyIG9sIGxpIGEgc3BhbiB7XG4gIGNvbG9yOiBibGFjaztcbn1cbi5wd1RleHQgdWwgbGkgYTpob3Zlcixcbi5wd1RleHQgb2wgbGkgYTpob3Zlcixcbi5wd1RleHRJbWFnZSB1bCBsaSBhOmhvdmVyLFxuLnB3VGV4dEltYWdlIG9sIGxpIGE6aG92ZXIsXG4ucHdUYWJsZSB1bCBsaSBhOmhvdmVyLFxuLnB3VGFibGUgb2wgbGkgYTpob3Zlcixcbi5wd1RlYXNlciB1bCBsaSBhOmhvdmVyLFxuLnB3VGVhc2VyIG9sIGxpIGE6aG92ZXIge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLnB3VGV4dCBvbCxcbi5wd1RleHRJbWFnZSBvbCxcbi5wd1RhYmxlIG9sLFxuLnB3VGVhc2VyIG9sIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogbnVtYmVycztcbn1cbi5wd1RleHQgb2wgbGksXG4ucHdUZXh0SW1hZ2Ugb2wgbGksXG4ucHdUYWJsZSBvbCBsaSxcbi5wd1RlYXNlciBvbCBsaSB7XG4gIGNvdW50ZXItaW5jcmVtZW50OiBudW1iZXJzO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG59XG4ucHdUZXh0IG9sIGxpOjpiZWZvcmUsXG4ucHdUZXh0SW1hZ2Ugb2wgbGk6OmJlZm9yZSxcbi5wd1RhYmxlIG9sIGxpOjpiZWZvcmUsXG4ucHdUZWFzZXIgb2wgbGk6OmJlZm9yZSB7XG4gIC13ZWJraXQtbWFzazogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbnRlbnQ6IGNvdW50ZXIobnVtYmVycykgXCIuXCI7XG4gIG1hc2s6IG5vbmU7XG4gIHRvcDogMDtcbn1cblxuLnB3VGV4dEltYWdlLS1mbG9hdGVkIG9sIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnB3VGV4dEltYWdlLS1mbG9hdGVkIG9sIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIGJhc2Ugc3R5bGUgbG9nb3MgKGdldCBvdmVyd3JpdGVuIGlmIGRldmljZS1yYXRpbzogMikgKi9cbi5kZWZhdWx0LWxvZ28ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kZWZhdWx0LWxvZ28uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnJldGluYS1sb2dvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5yZXRpbmEtbG9nby5zaG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gIC5kZWZhdWx0LWxvZ28ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnJldGluYS1sb2dvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5way0tLWZvb3Rlcl9fZm9vdGVyMSAucmV0aW5hLWxvZ28gaW1nIHtcbiAgICBpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDtcbiAgfVxufVxuLyogRWxsaXAgUGx1Zy1JbiAoY3VycmVudGx5IHVzZWQgb24gRGVzaWduIDEwIC8gVGVhc2VyZ3JvdXAgNCkgKi9cbi5lbGxpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5lbGxpcC1saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmVsbGlwLFxuLmVsbGlwLWxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi8qIHByZXZlbnQgc3R5bGUgb3ZlcnJpZGUgd2l0aGluIHRleHRtb2R1bGUgKi9cbmgxIHAsXG5oMSBhLFxuaDIgcCxcbmgyIGEsXG5oMyBwLFxuaDMgYSxcbmg0IHAsXG5oNCBhLFxuaDUgcCxcbmg1IGEsXG5oNiBwLFxuaDYgYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuaDEgcCxcbmgyIHAsXG5oMyBwLFxuaDQgcCxcbmg1IHAsXG5oNiBwIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5oMSxcbmgyLFxuaDUsXG5oNiB7XG4gIGNvbG9yOiB2YXIoLS1tYWluLWNvbG9yKTtcbn1cblxuLnB3TWFpbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnB3TWFpbl9fY29udGVudCB7XG4gIC8qIHJlbGV2YW50IGbDvHIgRDEtRDMgKi9cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAucHdNYWluX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5wd0FyZWEtLWJhbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7XG59XG4ucHdBcmVhLS1iYW5uZXIgLnB3U3dpcGVyX19idXR0b24gc3ZnIHBhdGgge1xuICBmaWxsOiB2YXIoLS1mb250LWNvbG9yLCAjMzMzKTtcbn1cbi5wd0FyZWEtLWJhbm5lciAucHdUZWFzZXJncm91cCAucHdUZWFzZXIge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5wd0FyZWEtLWJhbm5lcjIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xufVxuLnB3QXJlYS0tYmFubmVyMiAucHdTd2lwZXJfX2J1dHRvbiBzdmcgZyB7XG4gIGZpbGw6ICNmZmZmZmY7XG59XG4ucHdBcmVhLnNlby10ZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbn1cbi5wd0FyZWFfX2NvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogNDVweDtcbiAgcGFkZGluZy1ib3R0b206IDQ1cHg7XG59XG4ucHdBcmVhX19jb250ZW50IC5wd1NlY3Rpb24ge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLnB3QnJlYWRjcnVtYnMgdWwge1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuLnB3QnJlYWRjcnVtYnNfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5wd0JyZWFkY3J1bWJzX19pdGVtW2FyaWEtY3VycmVudD1wYWdlXSAucHdCcmVhZGNydW1ic19fbGFiZWwge1xuICBjb2xvcjogdmFyKC0tbWFpbi1jb2xvcik7XG59XG5cbi5wd1NlY3Rpb24ge1xuICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTtcbn1cblxuLnB3TWFpbl9fY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnB3Q29udGVudCB7XG4gIC8qIGxvc2UgSFRNTC1FbGVtZW50ZSAqL1xufVxuLnB3Q29udGVudCA+IC5jb250YWluZXIgKyAucHdTZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogMy43NXJlbTtcbn1cblxuLnB3U2VjdGlvbi5zZWN0aW9uLWJhbm5lciBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmNvbnRlbnQgPiAuY29udGVudC5uby1ib3gge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnB3QnJlYWRjcnVtYnMgLnJvdyA+ICoge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4ucHdNYWluID4gLnN0YWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnB3TWFpbiA+IC5zdGFnZSA+IC5zZWN0aW9uLXN0YWdlID4gLnNsaWRlcyB7XG4gIHdpZHRoOiA5NjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5wd01haW4gPiAuc3RhZ2UgPiAuc2VjdGlvbi1zdGFnZSA+IC5zbGlkZXMgLnNsaWRlIHtcbiAgd2lkdGg6IDk2MHB4O1xufVxuXG4uY2FwdGlvbiBwIHtcbiAgY29sb3I6ICM0ODQ4NDg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgfVxuICAuY29udGFpbmVyIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufSIsIi8qIE5vdG8gU2FucyB8IFJlZ3VsYXIgKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTm90byBTYW5zJztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBzcmM6IHVybCgnLi8uLi8uLi9mb250cy9Ob3RvX1NhbnMvTm90b1NhbnMtUmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG59XG5cbi8qIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTm90byBTYW5zJztcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBzcmM6IHVybCgnLi4vLi4vLi4vZm9udHMvTm90b19TYW5zL05vdG9TYW5zLVJlZ3VsYXJJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xufSAqL1xuXG4vKiBOb3RvIFNhbnMgfCBCb2xkICovXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ05vdG8gU2Fucyc7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgc3JjOiB1cmwoJy4vLi4vLi4vZm9udHMvTm90b19TYW5zL05vdG9TYW5zLUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ05vdG8gU2Fucyc7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgc3JjOiB1cmwoJy4vLi4vLi4vZm9udHMvTm90b19TYW5zL05vdG9TYW5zLUJvbGRJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xufSIsImltZyB7XG4gICAgLyogcHJldmVudCBlZGdlIHRvIHNob3cgdmlzdWFsIHNlYXJjaCBpY29uICovXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4iLCIvKiBAaW1wb3J0ICcuLi8uLi9zdHlsZXMvaW5jbHVkZXMvdmFyaWFibGVzJztcbkBpbXBvcnQgJy4uLy4uL3N0eWxlcy9pbmNsdWRlcy9taXhpbnMnO1xuQGltcG9ydCAnLi4vLi4vc3R5bGVzL2luY2x1ZGVzL2JyZWFrcG9pbnRzJzsgKi9cblxuLnB3QnV0dG9uIHtcbiAgICAvKiBoaW50OiBub3QgZXZlcnkgYnV0dG9uIGNvbnRhaW5zIGEgKGUuZy4gZnVsbHkgbGlua2VkIHRlYXNlcikgKi9cblxuICAgICYuYnV0dG9uLWJhY2sge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEgc3Bhbi5sZWZ0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIC5wd0ljb24ge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtYWluY29sb3I7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTdweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnB3SWNvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJi0tbm9UZXh0IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5wd0J1dHRvbi0tdGV4dCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wd0J1dHRvbkJhY2sge1xuICAgIC5sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAucmlnaHQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLmJ1dHRvbiBhIC5yaWdodCxcbiAgICAuYnV0dG9uLWJhY2sgYSAubGVmdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG4iLCIvLyBDb2xvcnNcbiRtYWluY29sb3I6IHZhcigtLW1haW4tY29sb3IpO1xuJHNlY29uZGFyeWNvbG9yOiB2YXIoLS1zZWNvbmQtY29sb3IpO1xuJHRoaXJkY29sb3I6IHZhcigtLXRoaXJkLWNvbG9yKTtcbiR0ZXh0LWJhc2UtY29sb3I6IHZhcigtLWZvbnQtY29sb3IsICMzMzMpO1xuXG4kbWFpbmNvbG9yNTBvcGFjaXR5OiByZ2JhKDAsIDc0LCAxNDMsIDAuNSk7XG4kYmxhY2s1MG9wYWNpdHk6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiRmb250LXdlaWdodC1ub3JtYWw6IDQwMDtcblxuJGJsYWNrOiAjMDAwMDAwO1xuJG1haW5jb2xvclJHQjogcmdiKDE5OCwgMzUsIDQ3KTtcbiRncmV5OiAjMzMzMzMzICFkZWZhdWx0O1xuJG1pZGRsZWdyZXk6ICM1MzUzNTMgIWRlZmF1bHQ7XG4kZGFya2dyZXk6ICMyODI4MjggIWRlZmF1bHQ7XG4kZGFya2VybGlnaHRncmV5OiAjZDNkM2QzICFkZWZhdWx0O1xuJGxpZ2h0Z3JleTogI2VlZWVlZSAhZGVmYXVsdDtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibHVlOiAjMDQ2M2M3O1xuJHNlcGVyYXRvcjogI2Q5ZDlkOTtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vIEdyaWQgYnJlYWtwb2ludHMgKGNvcGllZCBmcm9tIGJvb3RzdHJhcClcblxuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1yb3ctY29sdW1uczogNjtcbiRncmlkLWd1dHRlci13aWR0aDogMzBweDtcblxuJGdyaWQtYnJlYWtwb2ludHM6IChcblx0eHM6IDAsXG5cdHNtOiA1NzZweCxcblx0bWQ6IDc2OHB4LFxuXHRsZzogOTkycHgsXG5cdHhsOiAxMTQwcHgsXG5cdHhsLTEyMDA6IDEyMDBweCxcblx0eHhsOiAxNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLyBUeXBvZ3JhcGh5XG5cbi8vJGZvbnQtZmFtaWx5LWJhc2U6IFwiTm90byBTYW5zXCIsIEFyaWFsLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuXG4kZm9udC1zaXplLWJhc2U6IDE0cHggIWRlZmF1bHQ7XG5cbiRoZWFkZXJTdmdXaWR0aDogMjBweDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcblxuJGNvZGUtZm9udC1zaXplOiAwLjg3NWVtO1xuJHNtYWxsLWZvbnQtc2l6ZTogMC44NzVlbTtcbiRzdWItc3VwLWZvbnQtc2l6ZTogMC43NWVtO1xuIiwiLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vL1xuLy8gICAgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsKSlcbi8vICAgIG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludC1uYW1lczogbWFwLWtleXMoJGJyZWFrcG9pbnRzKSkge1xuICAkbjogaW5kZXgoJGJyZWFrcG9pbnQtbmFtZXMsICRuYW1lKTtcbiAgQGlmIG5vdCAkbiB7XG5cdEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC5cbi8vIFRoZSBtYXhpbXVtIHZhbHVlIGlzIHJlZHVjZWQgYnkgMC4wMnB4IHRvIHdvcmsgYXJvdW5kIHRoZSBsaW1pdGF0aW9ucyBvZlxuLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHZpZXdwb3J0cyB3aXRoIGZyYWN0aW9uYWwgd2lkdGhzLlxuLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9tZWRpYXF1ZXJpZXMtNC8jbXEtbWluLW1heFxuLy8gVXNlcyAwLjAycHggcmF0aGVyIHRoYW4gMC4wMXB4IHRvIHdvcmsgYXJvdW5kIGEgY3VycmVudCByb3VuZGluZyBidWcgaW4gU2FmYXJpLlxuLy8gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzgyNjFcbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1heChtZCwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgXCItc21cIlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQHJldHVybiBpZihicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKSA9PSBudWxsLCBcIlwiLCBcIi0tI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuXHRAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuXHQgIEBjb250ZW50O1xuXHR9XG4gIH0gQGVsc2Uge1xuXHRAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcblx0QG1lZGlhIChtYXgtd2lkdGg6ICRtYXgpIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9IEBlbHNlIHtcblx0QGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgdGhhdCBzcGFucyBtdWx0aXBsZSBicmVha3BvaW50IHdpZHRocy5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBiZXR3ZWVuIHRoZSBtaW4gYW5kIG1heCBicmVha3BvaW50c1xuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtYmV0d2VlbigkbG93ZXIsICR1cHBlciwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbG93ZXIsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCR1cHBlciwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuXHRAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuXHQgIEBjb250ZW50O1xuXHR9XG4gIH1cbn1cblxuLy8gTWVkaWEgYmV0d2VlbiB0aGUgYnJlYWtwb2ludCdzIG1pbmltdW0gYW5kIG1heGltdW0gd2lkdGhzLlxuLy8gTm8gbWluaW11bSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQsIGFuZCBubyBtYXhpbXVtIGZvciB0aGUgbGFyZ2VzdCBvbmUuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgb25seSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCwgbm90IHZpZXdwb3J0cyBhbnkgd2lkZXIgb3IgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46ICBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogIGJyZWFrcG9pbnQtbWF4KCRuZXh0KTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuXHRAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuXHQgIEBjb250ZW50O1xuXHR9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9XG59XG4iLCJAbWl4aW4gdHJhbnNpdGlvbiB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbn1cblxuQG1peGluIHRyYW5zaXRpb241MDBtcyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbn1cblxuQG1peGluIHRyaWFuZ2xlLXVwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogLTFweDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuXG4gICAgYm9yZGVyLXJpZ2h0OiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCAjMkMyQzJDO1xuXG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgei1pbmRleDogMTtcblxuICAgIC8qIGhvdmVyIGFuaW1hdGlvbiAqL1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG59XG5cblxuQG1peGluIGZvbnQtYWxpYXNpbmcge1xuICAgIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbkBtaXhpbiBib3gtc2hhZG93IHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA1cHggMCByZ2IoMCAwIDAgLyAzMCUpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDVweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiKDAgMCAwIC8gMzAlKTtcbn1cblxuQG1peGluIHNjYWxlVXAge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuQG1peGluIGZsZXhDZW50ZXJYWSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1peGluIGZsZXhDZW50ZXJYIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1peGluIGZsZXhDZW50ZXJZIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWl4aW4gcm90YXRlMGRlZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xufVxuXG5AbWl4aW4gcm90YXRlNDVkZWcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbkBtaXhpbiByb3RhdGU5MGRlZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbn1cblxuQG1peGluIHJvdGF0ZTE4MGRlZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbkBtaXhpbiByb3RhdGVOZWdhdGl2ZTQ1ZGVnIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuQG1peGluIHJvdGF0ZU5lZ2F0aXZlOTBkZWcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuXG5AbWl4aW4gcm90YXRlTmVnYXRpdmUxODBkZWcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cblxuQG1peGluIGFic29sdXRlSG9yaXpvbnRhbENlbnRlclkge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuQG1peGluIGFic29sdXRlQ2VudGVyWFkge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyBsZWZ0OiAwOyBib3R0b206IDA7IHJpZ2h0OiAwO1xufVxuXG5AbWl4aW4gYm9yZGVyUmFkaXVzMjVweCB7XG4gICAgYm9yZGVyLXJhZGl1czogMjVweDtcbn1cblxuQG1peGluIGQ0dW5kZXJsaW5lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDFweDtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG59XG5cbkBtaXhpbiBpbWdGbHVpZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG5AbWl4aW4gcHNldWRvRWxlbWVudFN2ZygkaWNvbk5hbWUsICRjb2xvcikge1xuICAgIC8qIFJlcGxhY2VtZW50IGZvciBzdmcgZGF0YSB3aXRoaW4gY29udGVudC9iYWNrZ3JvdW5kIG9mIHBzZXVkb2VsZW1lbnRzICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI3skY29sb3J9O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICAtd2Via2l0LW1hc2s6IHVybChcIi4uLy4uL2ljb25zLyN7ICRpY29uTmFtZSB9LnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgICBtYXNrOiB1cmwoXCIuLi8uLi9pY29ucy8jeyAkaWNvbk5hbWUgfS5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG5cbiAgICAtd2Via2l0LW1hc2stc2l6ZTogY292ZXI7XG4gICAgbWFzay1zaXplOiBjb3Zlcjtcbn1cblxuQG1peGluIGltYWdlLW9iamVjdC1maXQtY292ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbkBtaXhpbiB1bnNldC1pbWFnZS1vYmplY3QtZml0LWNvdmVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuQG1peGluIHRlYXNlckJvcmRlckJvdHRvbSgkYm9yZGVyY29sb3IpIHtcbiAgICAvKiBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKXsgKi9cbiAgICAucHdUZWFzZXJfX2NvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICN7JGJvcmRlcmNvbG9yfTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiB0ZWFzZXJCb3JkZXJUb3AoJGJvcmRlcmNvbG9yKSB7XG4gICAgLyogQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSl7ICovXG4gICAgLnB3VGVhc2VyX19jb250YWluZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI3skYm9yZGVyY29sb3J9O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGN1YmljVGVhc2VySGVhZGxpbmVJY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbmNvbG9yO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjJweDtcblxuICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgIH1cbn1cbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ05vdG8gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiAgdXJsKCcuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCcuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1SZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgdXJsKCcuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1SZWd1bGFyLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJylcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnTm90byBTYW5zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IHVybCgnLi4vLi4vZm9udHMvTm90b1NhbnMvTm90b1NhbnMtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksICB1cmwoJy4uLy4uL2ZvbnRzL05vdG9TYW5zL05vdG9TYW5zLUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoJy4uLy4uL2ZvbnRzL05vdG9TYW5zL05vdG9TYW5zLUJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKVxufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdOb3RvIFNhbnMnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKCcuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1Cb2xkSXRhbGljLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksdXJsKCcuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1Cb2xkSXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKVxufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdOb3RvIFNhbnMnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogdXJsKCcuLi8uLi9mb250cy9Ob3RvU2Fucy9Ob3RvU2Fucy1JdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSx1cmwoJy4uLy4uL2ZvbnRzL05vdG9TYW5zL05vdG9TYW5zLUl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJylcbn1cblxuJGZvbnQtd2VpZ2h0LWJvbGQ6IDcwMDtcbiIsIi5wd0ljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnB3SWNvbi0tYW5nbGUtY2lyY2xlLWRvd24gc3ZnIHtcbiAgICBjaXJjbGUge1xuICAgICAgICBmaWxsOiAkbWFpbmNvbG9yO1xuICAgIH1cbn1cblxuLnB3SWNvbi0tYW5nbGUtcmlnaHQgc3ZnIHtcbiAgICB3aWR0aDogN3B4O1xuICAgIGhlaWdodDogMTJweDtcbn1cblxuLnB3SWNvbi0tYW5nbGUtcmlnaHQtZG91YmxlIHN2ZyB7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuXG4gICAgcGF0aCB7XG4gICAgICAgIGZpbGw6ICRtYWluY29sb3I7XG4gICAgfVxufVxuXG4ucHdJY29uLS1hcnJvdy1yaWdodC10aGluIHN2ZyB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xufVxuXG4ucHdJY29uLS1waG9uZS1zdHJva2Ugc3ZnIHBhdGgge1xuICAgIHN0cm9rZTogbm9uZTtcbn1cblxuLmVubGFyZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwLjYyNXJlbTtcbiAgICBib3R0b206IDAuNjI1cmVtO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogJG1haW5jb2xvcjtcblxuICAgIC5mYS1zZWFyY2g6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgLmZhLXNlYXJjaDpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi9pbmNsdWRlcy92YXJpYWJsZXNcIjtcblxuJGNhcHRpb25Db2xvcjogIzQ4NDg0ODtcblxuYm9keSB7XG5cdGNvbG9yOiAkdGV4dC1iYXNlLWNvbG9yO1xuXG5cdCoge1xuXHRcdGZvbnQtZmFtaWx5OiBcIk5vdG8gU2Fuc1wiO1xuXHR9XG59XG5cbnVsIHtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuXG4ucHdUZXh0LFxuLnB3VGV4dEltYWdlIHtcblx0aDE6Zmlyc3QtY2hpbGQsXG5cdGgyOmZpcnN0LWNoaWxkLFxuXHRoMzpmaXJzdC1jaGlsZCxcblx0aDQ6Zmlyc3QtY2hpbGQsXG5cdGg1OmZpcnN0LWNoaWxkIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG5cblx0PiBoMSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMC43ZW07XG5cdH1cblxuXHQ+IGgzIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxZW07XG5cdH1cblxuXHQuYWxpZ24tY2VudGVyIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQucHdCdXR0b24ge1xuXHRcdG1hcmdpbi10b3A6IHRvUmVtKDI1cHgpO1xuXG5cdFx0PiBhIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHR9XG5cdH1cbn1cblxuLnB3VGV4dCxcbi5wd1RleHRJbWFnZSxcbi5wd1RhYmxlLFxuLnB3VGVhc2VyIHtcblx0b2wge1xuXHRcdGNvdW50ZXItcmVzZXQ6IG51bWJlcnM7XG5cdH1cblxuXHR1bCxcblx0b2wge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXG5cdFx0bGkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRAaW5jbHVkZSBwc2V1ZG9FbGVtZW50U3ZnKFwiYXJyb3ctdGhpbi1yaWdodFwiLCAkbWFpbmNvbG9yKTtcblx0XHRcdFx0aGVpZ2h0OiAyMHB4O1xuXHRcdFx0XHR3aWR0aDogMjBweDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0dG9wOiA0cHg7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRjb2xvcjogYmxhY2s7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRvbCB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRjb3VudGVyLXJlc2V0OiBudW1iZXJzO1xuXG5cdFx0bGkge1xuXHRcdFx0Y291bnRlci1pbmNyZW1lbnQ6IG51bWJlcnM7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdC13ZWJraXQtbWFzazogbm9uZTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGNvbnRlbnQ6IGNvdW50ZXIobnVtYmVycykgXCIuXCI7XG5cdFx0XHRcdG1hc2s6IG5vbmU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnB3VGV4dEltYWdlLS1mbG9hdGVkIHtcblx0b2wge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0bGkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG59XG5cbi8qIGJhc2Ugc3R5bGUgbG9nb3MgKGdldCBvdmVyd3JpdGVuIGlmIGRldmljZS1yYXRpbzogMikgKi9cbi5kZWZhdWx0LWxvZ28ge1xuXHRkaXNwbGF5OiBibG9jaztcblxuXHQmLmhpZGRlbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4ucmV0aW5hLWxvZ28ge1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdCYuc2hvd24ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcblx0LmRlZmF1bHQtbG9nbyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5yZXRpbmEtbG9nbyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdC5way0tLWZvb3Rlcl9fZm9vdGVyMSAucmV0aW5hLWxvZ28gaW1nIHtcblx0XHRpbWFnZS1yZW5kZXJpbmc6IHBpeGVsYXRlZDtcblx0fVxufVxuXG4vKiBFbGxpcCBQbHVnLUluIChjdXJyZW50bHkgdXNlZCBvbiBEZXNpZ24gMTAgLyBUZWFzZXJncm91cCA0KSAqL1xuLmVsbGlwIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLmVsbGlwLWxpbmUge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHR3b3JkLXdyYXA6IG5vcm1hbDtcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uZWxsaXAsXG4uZWxsaXAtbGluZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLyogcHJldmVudCBzdHlsZSBvdmVycmlkZSB3aXRoaW4gdGV4dG1vZHVsZSAqL1xuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcblx0cCxcblx0YSB7XG5cdFx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7XG5cdFx0Zm9udC1zaXplOiBpbmhlcml0O1xuXHRcdGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG59XG5cbmgxLFxuaDIsXG5oNSxcbmg2IHtcblx0Y29sb3I6ICRtYWluY29sb3I7XG59XG5cbi5wd01haW4ge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmX19jb250ZW50IHtcblx0XHQvKiByZWxldmFudCBmw7xyIEQxLUQzICovXG5cdFx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH1cblx0fVxufVxuXG4ucHdBcmVhIHtcblx0Ji0tYmFubmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRncmV5O1xuXG5cdFx0LnB3U3dpcGVyX19idXR0b24ge1xuXHRcdFx0c3ZnIHBhdGgge1xuXHRcdFx0XHRmaWxsOiAkdGV4dC1iYXNlLWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5wd1RlYXNlcmdyb3VwIC5wd1RlYXNlciB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0fVxuXG5cdCYtLWJhbm5lcjIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuXG5cdFx0LnB3U3dpcGVyX19idXR0b24gc3ZnIGcge1xuXHRcdFx0ZmlsbDogJHdoaXRlO1xuXHRcdH1cblx0fVxuXG5cdCYuc2VvLXRleHQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodGdyZXk7XG5cdH1cblxuXHQmX19jb250ZW50IHtcblx0XHRwYWRkaW5nLXRvcDogNDVweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNDVweDtcblxuXHRcdC5wd1NlY3Rpb24ge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG59XG5cbi5wd0JyZWFkY3J1bWJzIHtcblx0dWwge1xuXHRcdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdH1cblxuXHQmX19pdGVtIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0JlthcmlhLWN1cnJlbnQ9XCJwYWdlXCJdIHtcblx0XHRcdC5wd0JyZWFkY3J1bWJzX19sYWJlbCB7XG5cdFx0XHRcdGNvbG9yOiAkbWFpbmNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ucHdTZWN0aW9uIHtcblx0cGFkZGluZy1ib3R0b206IDMuNzVyZW07XG59XG5cbi5wd01haW5fX2NvbnRhaW5lciB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wd0NvbnRlbnQge1xuXHQvKiBsb3NlIEhUTUwtRWxlbWVudGUgKi9cblx0PiAuY29udGFpbmVyICsgLnB3U2VjdGlvbiB7XG5cdFx0bWFyZ2luLXRvcDogMy43NXJlbTtcblx0fVxufVxuXG4ucHdTZWN0aW9uLnNlY3Rpb24tYmFubmVyIGltZyB7XG5cdG1heC13aWR0aDogMTAwJTtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG4uY29udGVudCA+IC5jb250ZW50Lm5vLWJveCB7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4ucHdCcmVhZGNydW1icyB7XG5cdC5yb3cgPiAqIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHR9XG59XG5cbi5wd01haW4gPiAuc3RhZ2Uge1xuXHR3aWR0aDogMTAwJTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHdNYWluID4gLnN0YWdlID4gLnNlY3Rpb24tc3RhZ2UgPiAuc2xpZGVzIHtcblx0d2lkdGg6IDk2MHB4O1xuXHRtYXJnaW46IDAgYXV0bztcbn1cblxuLnB3TWFpbiA+IC5zdGFnZSA+IC5zZWN0aW9uLXN0YWdlID4gLnNsaWRlcyAuc2xpZGUge1xuXHR3aWR0aDogOTYwcHg7XG59XG5cbi5jYXB0aW9uIHAge1xuXHRjb2xvcjogJGNhcHRpb25Db2xvcjtcbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG5cdC5jb250YWluZXIge1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcblx0LmNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1heC13aWR0aDogY2FsYygxMDAlIC0gJGdyaWQtZ3V0dGVyLXdpZHRoKTtcblxuXHRcdC5jb250YWluZXIge1xuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdH1cblx0fVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AaW1wb3J0IFwiLi8uLi8uLi9pbmNsdWRlcy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLy4uLy4uL2luY2x1ZGVzL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwiLi8uLi8uLi9pbmNsdWRlcy9taXhpbnNcIjtcbkBpbXBvcnQgXCIuLy4uLy4uL2luY2x1ZGVzL3V0aWxzL2dldC1lbmNvZGVkLXN2Z1wiO1xuXG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuL3RleHRzdHlsZXNcIjtcbkBpbXBvcnQgXCIuL2J1dHRvbnNcIjtcblxuLyogLS0tLS0tLS0gQkFTRSBTVFlMRVMgLS0tLS0tLS0gKi9cblxuaHRtbCxcbmJvZHkge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xufVxuXG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiBhdXRvO1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGF1dG87XG4gICAgY29sb3I6ICRtYWluY29sb3I7XG59XG5cbmgxIHtcbiAgICBAaW5jbHVkZSB0ZXh0LXN0eWxlLWgxO1xufVxuXG5oMSxcbmgyLFxuaDUsXG5oNiB7XG4gICAgY29sb3I6ICRtYWluY29sb3I7XG59XG5cbi5wd1RleHQsXG4ucHdUZXh0SW1hZ2UsXG4ucHdUYWJsZSxcbi5wd1RlYXNlcixcbi5wd0Zvcm0ge1xuICAgIHVsIGxpIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb0VsZW1lbnRTdmcoXCJhcnJvdy1yaWdodC1zaG9ydFwiLCAkbWFpbmNvbG9yKTtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHdNYWluIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcblxuICAgICAgICAmLm9uZS1jb2wge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkaGVhZGVySGVpZ2h0VGFibGV0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICB9XG5cbn1cblxuLnB3U2lkZWJhciArIC5wd0NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMyNXB4KTtcbiAgICB9XG59XG5cbi5wd0FyZWEge1xuICAgICYtLXN0YWdlIHtcbiAgICAgICAgJjplbXB0eSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWZvb3RlclRlYXNlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAucHdCY05ld3MgLm5ld3MtaGVhZGVyIGgyLCAucHdCY05ld3MgLm5ld3MtaGVhZGVyIC5wd0J1dHRvbiAubGFiZWwge1xuICAgICAgICAgICAgY29sb3I6ICRtYWluY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAucHdCY05ld3MgLm5ld3MtaGVhZGVyIC5wd0J1dHRvbiAucHdJY29uIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6ICRtYWluY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbXBvcnQgXCJ2aWV3cy90ZXh0XCI7XG5AaW1wb3J0IFwidmlld3MvdGFibGVcIjtcbkBpbXBvcnQgXCJ2aWV3cy90ZWFzZXJncm91cFwiO1xuQGltcG9ydCBcInZpZXdzL2NlcnRpZmljYXRlXCI7XG5AaW1wb3J0IFwidmlld3MvYWNjb3JkaW9uXCI7XG5AaW1wb3J0IFwidmlld3MvdGV4dGltYWdlXCI7XG5AaW1wb3J0IFwidmlld3MvYmFubmVyXCI7XG5AaW1wb3J0IFwidmlld3MvZm9ybVwiO1xuQGltcG9ydCBcInZpZXdzL3JlZmVyZW5jZXNcIjtcbkBpbXBvcnQgXCJ2aWV3cy9zd2lwZXItbmF2aWdhdGlvblwiO1xuQGltcG9ydCBcInZpZXdzL3N0YWdlXCI7XG5AaW1wb3J0IFwidmlld3MvZGlyZWN0aW9uc1wiO1xuQGltcG9ydCBcInZpZXdzL2dhbGxlcnlcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9zaWRlYmFyXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uTW9iaWxlL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9uYXZpZ2F0aW9uL25hdmlnYXRpb25EZXNrdG9wL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9oZWFkZXJcIjtcbiIsIkBpbXBvcnQgXCIuLy4uLy4uLy4uL3N0eWxlcy9pbmNsdWRlcy92YXJpYWJsZXNcIjtcblxuLnB3QnV0dG9uIHtcbiAgICAucmlnaHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICB9XG5cbiAgICAubGFiZWwge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cblxuICAgIC5wd0ljb24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgc3ZnIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHdUZXh0IC5wd0J1dHRvbixcbi5wd1RleHRJbWFnZSAucHdCdXR0b24ge1xuICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDE3cHg7XG4gICAgfVxuXG4gICAgLnB3SWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBDb2xvcnNcbiRtYWluY29sb3I6IHZhcigtLW1haW4tY29sb3IpO1xuJHNlY29uZGFyeWNvbG9yOiB2YXIoLS1zZWNvbmQtY29sb3IpO1xuJHRoaXJkY29sb3I6IHZhcigtLXRoaXJkLWNvbG9yKTtcbiR0ZXh0LWJhc2UtY29sb3I6IHZhcigtLWZvbnQtY29sb3IsICMzMzMpO1xuXG4kbWFpbmNvbG9yNTBvcGFjaXR5OiByZ2JhKDAsIDc0LCAxNDMsIDAuNSk7XG4kYmxhY2s1MG9wYWNpdHk6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiRmb250LXdlaWdodC1ub3JtYWw6IDQwMDtcblxuJGJsYWNrOiAjMDAwMDAwO1xuJG1haW5jb2xvclJHQjogcmdiKDE5OCwgMzUsIDQ3KTtcbiRncmV5OiAjMzMzMzMzICFkZWZhdWx0O1xuJG1pZGRsZWdyZXk6ICM1MzUzNTMgIWRlZmF1bHQ7XG4kZGFya2dyZXk6ICMyODI4MjggIWRlZmF1bHQ7XG4kZGFya2VybGlnaHRncmV5OiAjZDNkM2QzICFkZWZhdWx0O1xuJGxpZ2h0Z3JleTogI2VlZWVlZSAhZGVmYXVsdDtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibHVlOiAjMDQ2M2M3O1xuJHNlcGVyYXRvcjogI2Q5ZDlkOTtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG5cbi8vIEdyaWQgYnJlYWtwb2ludHMgKGNvcGllZCBmcm9tIGJvb3RzdHJhcClcblxuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1yb3ctY29sdW1uczogNjtcbiRncmlkLWd1dHRlci13aWR0aDogMzBweDtcblxuJGdyaWQtYnJlYWtwb2ludHM6IChcblx0eHM6IDAsXG5cdHNtOiA1NzZweCxcblx0bWQ6IDc2OHB4LFxuXHRsZzogOTkycHgsXG5cdHhsOiAxMTQwcHgsXG5cdHhsLTEyMDA6IDEyMDBweCxcblx0eHhsOiAxNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLyBUeXBvZ3JhcGh5XG5cbi8vJGZvbnQtZmFtaWx5LWJhc2U6IFwiTm90byBTYW5zXCIsIEFyaWFsLCBcIkhlbHZldGljYVwiLCBzYW5zLXNlcmlmO1xuXG4kZm9udC1zaXplLWJhc2U6IDE0cHggIWRlZmF1bHQ7XG5cbiRoZWFkZXJTdmdXaWR0aDogMjBweDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcblxuJGNvZGUtZm9udC1zaXplOiAwLjg3NWVtO1xuJHNtYWxsLWZvbnQtc2l6ZTogMC44NzVlbTtcbiRzdWItc3VwLWZvbnQtc2l6ZTogMC43NWVtO1xuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLy4uLy4uL3N0eWxlcy9pbmNsdWRlcy9taXhpbnNcIjtcblxuQGltcG9ydCBcIi4vLi4vaW5jbHVkZXMvYnJlYWtwb2ludHNcIjtcbkBpbXBvcnQgXCIuLy4uL2luY2x1ZGVzL21peGluc1wiO1xuXG5AZnVuY3Rpb24gdG9SZW0oJHZhbHVlKSB7XG5cdCRyZW06IG1hdGguZGl2KHJvdW5kKG1hdGguZGl2KCR2YWx1ZSwgJGZvbnQtc2l6ZS1iYXNlKSAqIDEwMCksIDEwMCk7XG5cdEByZXR1cm4gI3skcmVtfXJlbTtcbn1cblxuQG1peGluIGZvbnQtYWxpYXNpbmcge1xuXHRmb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AbWl4aW4gaGVhZGxpbmUtYmFzZS1zdHlsZSB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiBub25lOyAvKiBpUGhvbmUgQnVnOiBQcmV2ZW50IGZvbnQtc2l6ZSB0byBleHBsb2RlIG9uIG9yaWVudGF0aW9uIGNoYW5nZSAqL1xuXHRAaW5jbHVkZSBmb250LWFsaWFzaW5nO1xufVxuXG5AbWl4aW4gYmFzZS1mb250LXN0eWxlIHtcblx0Zm9udC1zaXplOiB0b1JlbSgxNHB4KTtcblx0bGluZS1oZWlnaHQ6IHRvUmVtKDIzcHgpO1xuXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblx0XHRmb250LXNpemU6IHRvUmVtKDEzcHgpO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXHRcdGZvbnQtc2l6ZTogdG9SZW0oMTRweCk7XG5cdH1cbn1cblxuLy8gaGVhZGxpbmUgc3R5bGUgZDEtZDhcbkBtaXhpbiBoZWFkbGluZS1zdHlsZS1oMSB7XG5cdGZvbnQtc2l6ZTogMi4yNXJlbTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuQG1peGluIGhlYWRsaW5lLXN0eWxlLWgyIHtcblx0Zm9udC1zaXplOiAxLjc1cmVtO1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuXG5AbWl4aW4gaGVhZGxpbmUtc3R5bGUtaDMge1xuXHRmb250LXNpemU6IDEuMjVyZW07XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtaXhpbiB0ZXh0LXN0eWxlLWgxIHtcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAyLjU7XG59XG5AbWl4aW4gdGV4dC1zdHlsZS1oMiB7XG5cdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICogMjtcbn1cbkBtaXhpbiB0ZXh0LXN0eWxlLWgzIHtcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAxLjc1O1xufVxuQG1peGluIHRleHQtc3R5bGUtaDQge1xuXHRmb250LXNpemU6ICRmb250LXNpemUtYmFzZSAqIDEuNTtcbn1cbkBtaXhpbiB0ZXh0LXN0eWxlLWg1IHtcblx0Zm9udC1zaXplOiAkZm9udC1zaXplLWJhc2UgKiAxLjI1O1xufVxuQG1peGluIHRleHQtc3R5bGUtaDYge1xuXHRmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbn1cblxuQG1peGluIHNtYWxsLXRleHQge1xuXHRmb250LXNpemU6IHRvUmVtKDE0cHgpO1xufVxuXG5AbWl4aW4gc2lkZWJhci10ZXh0LWZpcnN0LWxldmVsIHtcblx0Zm9udC1zaXplOiB0b1JlbSgxNnB4KTtcblx0Y29sb3I6ICR3aGl0ZTtcbn1cblxuQG1peGluIHNpZGViYXItdGV4dC1maXJzdC1sZXZlbC1hY3RpdmUge1xuXHRmb250LXNpemU6IHRvUmVtKDE4cHgpO1xufVxuXG5AbWl4aW4gc2lkZWJhci10ZXh0LXNlY29uZC1sZXZlbCB7XG5cdGZvbnQtc2l6ZTogdG9SZW0oMTZweCk7XG5cdGNvbG9yOiAkd2hpdGU7XG59XG5cbkBtaXhpbiBzaWRlYmFyLXRleHQtdGhpcmQtbGV2ZWwge1xuXHRmb250LXNpemU6IHRvUmVtKDE1cHgpO1xuXHRjb2xvcjogJHdoaXRlO1xufVxuXG5AbWl4aW4gZm9vdGVyLWhlYWRsaW5lIHtcblx0Zm9udC1zaXplOiB0b1JlbSgxNHB4KTtcblxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cdFx0Zm9udC1zaXplOiB0b1JlbSgxNXB4KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcblx0XHRmb250LXNpemU6IHRvUmVtKDE4cHgpO1xuXHR9XG59XG5cbkBtaXhpbiBmb290ZXItYmFzZS10ZXh0IHtcblx0Zm9udC1zaXplOiB0b1JlbSgxMnB4KTtcblxuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cdFx0Zm9udC1zaXplOiB0b1JlbSgxNHB4KTtcblx0fVxufVxuXG5AbWl4aW4gaW1hZ2V0ZXh0LWhlYWRsaW5lIHtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Zm9udC1zaXplOiB0b1JlbSgxOHB4KTtcblx0bGluZS1oZWlnaHQ6IHRvUmVtKDI1cHgpO1xuXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcblx0XHRmb250LXNpemU6IHRvUmVtKDI0cHgpO1xuXHRcdGxpbmUtaGVpZ2h0OiB0b1JlbSgzOHB4KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblx0XHRmb250LXNpemU6IHRvUmVtKDI4cHgpO1xuXHR9XG59XG4iLCJAbWl4aW4gdHJhbnNpdGlvbiB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZTtcbn1cblxuQG1peGluIHRyYW5zaXRpb241MDBtcyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbn1cblxuQG1peGluIHRyaWFuZ2xlLXVwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogLTFweDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuXG4gICAgYm9yZGVyLXJpZ2h0OiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCAjMkMyQzJDO1xuXG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgei1pbmRleDogMTtcblxuICAgIC8qIGhvdmVyIGFuaW1hdGlvbiAqL1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG59XG5cblxuQG1peGluIGZvbnQtYWxpYXNpbmcge1xuICAgIGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbkBtaXhpbiBib3gtc2hhZG93IHtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCA1cHggMCByZ2IoMCAwIDAgLyAzMCUpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDVweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4IDAgcmdiKDAgMCAwIC8gMzAlKTtcbn1cblxuQG1peGluIHNjYWxlVXAge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuQG1peGluIGZsZXhDZW50ZXJYWSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1peGluIGZsZXhDZW50ZXJYIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuQG1peGluIGZsZXhDZW50ZXJZIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWl4aW4gcm90YXRlMGRlZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xufVxuXG5AbWl4aW4gcm90YXRlNDVkZWcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbkBtaXhpbiByb3RhdGU5MGRlZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbn1cblxuQG1peGluIHJvdGF0ZTE4MGRlZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbkBtaXhpbiByb3RhdGVOZWdhdGl2ZTQ1ZGVnIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuQG1peGluIHJvdGF0ZU5lZ2F0aXZlOTBkZWcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuXG5AbWl4aW4gcm90YXRlTmVnYXRpdmUxODBkZWcge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cblxuQG1peGluIGFic29sdXRlSG9yaXpvbnRhbENlbnRlclkge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuQG1peGluIGFic29sdXRlQ2VudGVyWFkge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyBsZWZ0OiAwOyBib3R0b206IDA7IHJpZ2h0OiAwO1xufVxuXG5AbWl4aW4gYm9yZGVyUmFkaXVzMjVweCB7XG4gICAgYm9yZGVyLXJhZGl1czogMjVweDtcbn1cblxuQG1peGluIGQ0dW5kZXJsaW5lIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDFweDtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG59XG5cbkBtaXhpbiBpbWdGbHVpZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG5AbWl4aW4gcHNldWRvRWxlbWVudFN2ZygkaWNvbk5hbWUsICRjb2xvcikge1xuICAgIC8qIFJlcGxhY2VtZW50IGZvciBzdmcgZGF0YSB3aXRoaW4gY29udGVudC9iYWNrZ3JvdW5kIG9mIHBzZXVkb2VsZW1lbnRzICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI3skY29sb3J9O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICAtd2Via2l0LW1hc2s6IHVybChcIi4uLy4uL2ljb25zLyN7ICRpY29uTmFtZSB9LnN2Z1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgICBtYXNrOiB1cmwoXCIuLi8uLi9pY29ucy8jeyAkaWNvbk5hbWUgfS5zdmdcIikgbm8tcmVwZWF0IDUwJSA1MCU7XG5cbiAgICAtd2Via2l0LW1hc2stc2l6ZTogY292ZXI7XG4gICAgbWFzay1zaXplOiBjb3Zlcjtcbn1cblxuQG1peGluIGltYWdlLW9iamVjdC1maXQtY292ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbkBtaXhpbiB1bnNldC1pbWFnZS1vYmplY3QtZml0LWNvdmVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuQG1peGluIHRlYXNlckJvcmRlckJvdHRvbSgkYm9yZGVyY29sb3IpIHtcbiAgICAvKiBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKXsgKi9cbiAgICAucHdUZWFzZXJfX2NvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICN7JGJvcmRlcmNvbG9yfTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiB0ZWFzZXJCb3JkZXJUb3AoJGJvcmRlcmNvbG9yKSB7XG4gICAgLyogQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSl7ICovXG4gICAgLnB3VGVhc2VyX19jb250YWluZXIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI3skYm9yZGVyY29sb3J9O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGN1YmljVGVhc2VySGVhZGxpbmVJY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbmNvbG9yO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjJweDtcblxuICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweClcbi8vXG4vLyBUaGUgbWFwIGRlZmluZWQgaW4gdGhlIGAkZ3JpZC1icmVha3BvaW50c2AgZ2xvYmFsIHZhcmlhYmxlIGlzIHVzZWQgYXMgdGhlIGAkYnJlYWtwb2ludHNgIGFyZ3VtZW50IGJ5IGRlZmF1bHQuXG5cbi8vIE5hbWUgb2YgdGhlIG5leHQgYnJlYWtwb2ludCwgb3IgbnVsbCBmb3IgdGhlIGxhc3QgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20pXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuXHRAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1heCBhbmQgJG1heCA+IDAsICRtYXggLSAuMDIsIG51bGwpO1xufVxuXG4vLyBSZXR1cm5zIGEgYmxhbmsgc3RyaW5nIGlmIHNtYWxsZXN0IGJyZWFrcG9pbnQsIG90aGVyd2lzZSByZXR1cm5zIHRoZSBuYW1lIHdpdGggYSBkYXNoIGluIGZyb250LlxuLy8gVXNlZnVsIGZvciBtYWtpbmcgcmVzcG9uc2l2ZSB1dGlsaXRpZXMuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeCh4cywgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9IEBlbHNlIHtcblx0QGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gTWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIGxhcmdlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgbmFycm93ZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICBAaWYgJG1heCB7XG5cdEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbiAgfSBAZWxzZSB7XG5cdEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcblx0QG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuXHRAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcblx0ICBAY29udGVudDtcblx0fVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG5cdEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCwgJGJyZWFrcG9pbnRzKSB7XG5cdCAgQGNvbnRlbnQ7XG5cdH1cbiAgfVxufVxuIiwiQGltcG9ydCBcIi4vLi4vLi4vaW5jbHVkZXMvdmFyaWFibGVzXCI7XG5cbiRmb250LWZhbWlseS1iYXNlOiBcIk5vdG8gU2Fuc1wiLCBBcmlhbCwgXCJIZWx2ZXRpY2FcIiwgc2Fucy1zZXJpZjtcblxuJGhlYWRlckhlaWdodFRhYmxldDogOTVweDtcbiRoZWFkZXJIZWlnaHRNb2JpbGU6IDg1cHg7XG4iLCIucHdUYWJsZSB7XG4gIHVsIGxpIHtcblx0JjpiZWZvcmUge1xuXHQgIEBpbmNsdWRlIHBzZXVkb0VsZW1lbnRTdmcoXCJhcnJvdy1yaWdodC1zaG9ydFwiLCAkbWFpbmNvbG9yKTtcblx0ICBoZWlnaHQ6IDE0cHg7XG5cdCAgd2lkdGg6IDE0cHg7XG5cdH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4ucHdUZWFzZXIge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICB1bCBsaSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBzZXVkb0VsZW1lbnRTdmcoXCJhcnJvdy1yaWdodC1zaG9ydFwiLCAkbWFpbmNvbG9yKTtcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnB3SWNvbiB7XG4gICAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgIGZpbGw6ICRtYWluY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHdCdXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnB3SWNvbiB7XG4gICAgICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faGVhZGxpbmUge1xuICAgICAgICBAaW5jbHVkZSB0ZWFzZXItaGVhZGxpbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwOyAvKiBub3R3ZW5kaWcgZsO8ciBrbGVpbmUgdGVhc2VyIHdpZSA0LXNwYWx0aWdlKi9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wd0ljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIC8qIG92ZXJyaWRlIGg0LXN0eWxlICh0b28gc21hbGwpICovXG4gICAgICAgICAgICBmb250LXNpemU6IHRvUmVtKDE1cHgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAucHdCdXR0b24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodGdyZXk7XG4gICAgICAgIHBhZGRpbmc6IG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aCwgMik7XG5cbiAgICAgICAgPiAucm93IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlICsgJGdyaWQtZ3V0dGVyLXdpZHRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLnB3VGVhc2VyZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IC0xNXB4O1xuXG4gICAgJi50ZWFzZXJncm91cC0xIHtcbiAgICAgICAgLnB3VGVhc2VyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRlYXNlckJvcmRlckJvdHRvbSgkbGlnaHRncmV5KTtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGVhc2VyQm9yZGVyVG9wKCRsaWdodGdyZXkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgICAgICAucHdCdXR0b24ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aCwgMikgKiAtMSk7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgLnB3SWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmhhcy1idXR0b24gLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2hlYWRsaW5lIHtcbiAgICAgICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLnZhcmlhbnQtOCkge1xuICAgICAgICAgICAgLnB3VGVhc2VyIHtcbiAgICAgICAgICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICAucHdCdXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudmFyaWFudC04IHtcbiAgICAgICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgPiAucm93IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgLnB3QnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnZhcmlhbnQtMSxcbiAgICAgICAgJi52YXJpYW50LTEtMyxcbiAgICAgICAgJi52YXJpYW50LTEtNCB7XG4gICAgICAgICAgICAmLm5vLWJ1dHRvbiAucHdUZWFzZXJfX3RleHQgLnB3QnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRlYXNlcmdyb3VwLTUsXG4gICAgJi50ZWFzZXJncm91cC02IHtcbiAgICAgICAgLnB3VGVhc2VyIHtcbiAgICAgICAgICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRlYXNlcmdyb3VwLTIsXG4gICAgJi50ZWFzZXJncm91cC0zLFxuICAgICYudGVhc2VyZ3JvdXAtNCB7XG4gICAgICAgICY6bm90KC52YXJpYW50LTgpIHtcbiAgICAgICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC5wd1RlYXNlcl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB1bCBsaTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwc2V1ZG9FbGVtZW50U3ZnKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImFycm93LXJpZ2h0LXNob3J0XCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaG92ZXItZm9udGNvbG9yLWRhcmsge1xuICAgICAgICAgICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnB3SWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkZGFya2dyZXk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogNi1zcGFsdGlnIChIZXJzdGVsbGVybG9nb3MpICovXG4gICAgJi50ZWFzZXJncm91cC02IHtcbiAgICAgICAgLnB3VGVhc2VyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDdweDtcblxuICAgICAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAucHdUZWFzZXJfX2ltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZWFzZXItaW5uZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIERlZmF1bHQ6IFRleHQgYXVzZ2VibGVuZGV0ICovXG4gICAgJjpub3QoLnZhcmlhbnQtOCk6bm90KC50ZWFzZXJncm91cC0xKTpub3QoLnB3Q2VydGlmaWNhdGUpIHtcbiAgICAgICAgLnB3VGVhc2VyIHtcbiAgICAgICAgICAgICZfX2hlYWRsaW5lIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wd0J1dHRvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLThweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi52YXJpYW50LTgge1xuICAgICAgICAucHdUZWFzZXIge1xuICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnB3QnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW5jb2xvcjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19oZWFkbGluZSB7XG4gICAgICAgICAgICAgICAgLnB3SWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi50ZWFzZXJncm91cC0zLnZhcmlhbnQtMyB7XG4gICAgICAgIC5wd1RlYXNlcl9faWNvbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4Q2VudGVyWDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAyMHB4KTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHdTaWRlYmFyIHtcbiAgICAucHdUZWFzZXJncm91cCB7XG4gICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50ZWFzZXJncm91cC0xIHtcbiAgICAgICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmhhcy1idXR0b24gLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucHdCdXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLyogcmVtb3ZlIGJvcmRlcnMgaW4gc2lkZWJhciAqL1xuICAgICAgICAgICAgICAgIC5wd1RlYXNlcl9fY29udGFpbmVyOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIC5wd1RlYXNlcl9fY29udGFpbmVyOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyogQmlsZCBsaW5rcywgVGV4dCByZWNodHMgKi9cbiAgICAgICAgICAgICYudmFyaWFudC0xLFxuICAgICAgICAgICAgJi52YXJpYW50LTEtNCB7XG4gICAgICAgICAgICAgICAgLnB3VGVhc2VyIHtcbiAgICAgICAgICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYmFja2dyb3VuZC13aGl0ZSB7XG4gICAgICAgICAgICAgICAgLnB3VGVhc2VyX19jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uLWNhcm91c2VsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi50ZWFzZXJncm91cC0xOm5vdCguc2VjdGlvbi1jYXJvdXNlbCkge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1zb2NpYWxtZWRpYSB7XG4gICAgICAgICAgICAucHdUZWFzZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHdCY05ld3Mge1xuICAgIC5uZXdzLWhlYWRlcixcbiAgICAucHdTd2lwZXJUZWFzZXJncm91cCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmV3cy1oZWFkZXIge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnB3QnV0dG9uIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wd0ljb24ge1xuICAgICAgICAgICAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGQ0dW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wd1N3aXBlclRlYXNlcmdyb3VwIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NhcHRpb24ge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbn1cblxuLnB3QXJlYSB7XG4gICAgJi0tZm9vdGVyVGVhc2VyIHtcbiAgICAgICAgLnB3QmNOZXdzIHtcbiAgICAgICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAucHdCdXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw6ICRtYWluY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmX19oZWFkbGluZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJl9fY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3ZnIHBhdGgge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tYmFubmVyIC5wd1RlYXNlcmdyb3VwLnRlYXNlcmdyb3VwLTMudmFyaWFudC0zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAucHdUZWFzZXIge1xuICAgICAgICAgICAgJjpob3ZlciAucHdUZWFzZXJfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWJhc2UtY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2NvbnRhaW5lcixcbiAgICAgICAgICAgICY6aG92ZXIgLnB3VGVhc2VyX19jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19pbWcge1xuICAgICAgICAgICAgICAgIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2NvbnRhaW5lciAucHdCdXR0b24ge1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wd0J1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuQGltcG9ydCBcIi4vLi4vLi4vLi4vc3R5bGVzL2luY2x1ZGVzL3RleHRzdHlsZXNcIjtcblxuQG1peGluIHNtYWxsLXRleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTJweCk7XG59XG5cbkBtaXhpbiBzaWRlYmFyLXRleHQtZmlyc3QtbGV2ZWwge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTZweCk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbn1cblxuQG1peGluIHNpZGViYXItdGV4dC1maXJzdC1sZXZlbC1hY3RpdmUge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMThweCk7XG59XG5cbkBtaXhpbiBmb290ZXItaGVhZGxpbmUge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTRweCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdG9SZW0oMTVweCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBmb250LXNpemU6IHRvUmVtKDE4cHgpO1xuICAgIH1cbn1cblxuQG1peGluIGZvb3Rlci1iYXNlLXRleHQge1xuICAgIGZvbnQtc2l6ZTogdG9SZW0oMTJweCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdG9SZW0oMTRweCk7XG4gICAgfVxufVxuXG5AbWl4aW4gdGVhc2VyLWhlYWRsaW5lIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDE0cHgpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogdG9SZW0oMTZweCk7XG4gICAgfVxufVxuXG5AbWl4aW4gdGV4dC1zdHlsZS1uYXYtbGluay1sZXZlbC1vbmUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNnB4KTtcbn1cblxuQG1peGluIHRleHQtc3R5bGUtc2lkZWJhci1hY3RpdmUtcGFyZW50IHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxOHB4KTtcbn1cblxuQG1peGluIHRleHQtc3R5bGUtc2lkZWJhci1sZXZlbC0yIHtcbiAgICBmb250LXNpemU6IHRvUmVtKDE2cHgpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbkBtaXhpbiB0ZXh0LXN0eWxlLXNpZGViYXItbGV2ZWwtMyB7XG4gICAgZm9udC1zaXplOiB0b1JlbSgxNHB4KTtcbn1cbiIsIi5wd0NlcnRpZmljYXRlIHtcbiAgICAmX19pdGVtIHtcbiAgICAgICAgLnB3QnV0dG9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRtYWluY29sb3I7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5maWxlaW5mbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uLy4uLy4uL3N0eWxlcy9pbmNsdWRlcyc7XG5cblxuLnB3QWNjb3JkaW9uIHtcblxuICAmX19idXR0b25Ub2dnbGUge1xuXG5cdCYgc3ZnIHBhdGgge1xuXHQgIGZpbGw6IHZhcigtLW1haW4tY29sb3IpO1xuXHR9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zdHlsZXMvaW5jbHVkZXNcIjtcblxuLnB3VGV4dEltYWdlIC5wd0ltYWdlIHtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRtYWluY29sb3I7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHdUZXh0LFxuLnB3VGV4dEltYWdlIHtcbiAgICBoMSB7XG4gICAgICAgIEBpbmNsdWRlIGhlYWRsaW5lLXN0eWxlLWgxO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgaGVhZGxpbmUtc3R5bGUtaDI7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgaGVhZGxpbmUtc3R5bGUtaDM7XG4gICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuOHJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICBoMSArIGgyLFxuICAgIGgxICsgaDMsXG4gICAgaDIgKyBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuM3JlbTtcbiAgICB9XG5cbiAgICAucHdCdXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIH1cbn1cbiIsIi5wd0NvbnRlbnRDb250YWluZXIgLnB3QmFubmVyIHtcbiAgICAucHdTd2lwZXJCYW5uZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAucHdTd2lwZXJfX2J1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLyogQ2hlY2tib3gtU3R5bGluZyAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICArIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlZWVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBSYWRpby1CdXR0b25zICovXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGFjY2VudC1jb2xvcjogJG1haW5jb2xvcjtcbn1cblxuLnB3Rm9ybSB7XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgLmZvcm0taGludCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIH1cblxuICAgIC5yb3c6bm90KC5jaGVja2JveCkge1xuICAgICAgICAmIC5pbnB1dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQ6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0aW5wdXQgaW5wdXQge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucm93IHtcbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluY29sb3I7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wd0ljb24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubGFiZWwtcmFkaW8ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbnRhY3QtZm9ybSAucm93IHtcbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJvdyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoLmNoZWNrYm94KSAuaW5wdXQge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHdDb250ZW50Om9ubHktY2hpbGQgLnB3Rm9ybSAudGV4dGlucHV0IHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcblxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgfVxufVxuXG4ucHdDb250ZW50Om9ubHktY2hpbGQgLnB3Rm9ybSAudGV4dGFyZWEge1xuICAgIG1hcmdpbjogMDtcbn1cblxuZm9ybTpub3QoLnB3U3VydmV5KSAucm93IGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgIH1cbn1cblxuZm9ybSAucm93IGlucHV0OmZvY3VzLFxuZm9ybSAucm93IHRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogI2JiYjtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMTBweCAjZGRkO1xufVxuXG4uc2VjdGlvbiBwOmZpcnN0LWNoaWxkLmZvcm0taGludCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuZm9ybSAucmFkaW8tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG59XG5cbmZvcm0gLnJhZGlvLWNvbnRhaW5lciBsYWJlbCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG59XG5cbmZvcm0gLnJvdyAuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG59XG4iLCIucHdSZWZlcmVuY2VzIHtcbiAgICAmX19vdmVydmlldyB7XG4gICAgICAgICZfX3JlZmVyZW5jZSB7XG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMTVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWdyYXkge1xuICAgICAgICAucHdSZWZlcmVuY2VzX19vdmVydmlld19fcmVmZXJlbmNlIHtcbiAgICAgICAgICAgIC5zbGlkZS10ZXh0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRncmV5O1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0ZXh0LWJhc2UtY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGV4dC1iYXNlLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5nYWxsZXJ5LWluZm8ge1xuICAgICAgICAgICAgICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxsOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmdhbGxlcnktY291bnQge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRtYWluY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaW1hZ2UgYSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0Z3JleTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5wd1N3aXBlcl9fYnV0dG9uIHtcbiAgICAmLS1wcmV2IHtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgIH1cblxuICAgICYtLW5leHQge1xuICAgICAgICByaWdodDogMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgJi0tcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tbmV4dCB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgJi0tcHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAtMzVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IC0zNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiJHN0YWdlSGVpZ2h0X21vYmlsZTogMjAwcHg7XG4kc3RhZ2VIZWlnaHRfdGFibGV0OiAzMzBweDtcbiRzdGFnZUhlaWdodF9kZXNrdG9wOiAzMzBweDtcblxuLnB3U3RhZ2Uge1xuICAgICRzZWxmOiAmO1xuICAgIGhlaWdodDogJHN0YWdlSGVpZ2h0X21vYmlsZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgaGVpZ2h0OiAkc3RhZ2VIZWlnaHRfdGFibGV0O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgaGVpZ2h0OiAkc3RhZ2VIZWlnaHRfZGVza3RvcDtcbiAgICB9XG5cbiAgICAvKiBhYmdlZHVua2VsdCwgZGEgTmF2aWdhdGlvbiBzZWxiZSBGYXJiZSBoYXQgKi9cbiAgICAmX19tYWluY29sb3Ige1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC41KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpZGVzIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjkwcHg7XG4gICAgfVxuXG4gICAgJl9fdGV4dGJveENvbnRlbnQge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogJGdyaWQtZ3V0dGVyLXdpZHRoO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucHdBcmVhLS1zdGFnZSAucHdTdGFnZSB7XG4gICAgLnNsaWRlIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtc3RhZ2Uge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogbWF0aC5kaXYoJGdyaWQtZ3V0dGVyLXdpZHRoLCAyKTtcbiAgICB9XG59XG5cbi5wd01haW5fX2NvbnRlbnQgLnB3U3RhZ2Uge1xuICAgICYucGFyYWxsYXgge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtO1xuICAgIH1cbn1cblxuLnB3QXJlYS0tc3RhZ2Uge1xuICAgIC5wd1ZpZGVvU3RhZ2UgPiAuY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG4iLCIucHdEaXJlY3Rpb25zIHtcbiAgICAubWFwIHtcbiAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICRtYWluY29sb3I7XG4gICAgfVxuXG4gICAgLnB3SWZyYW1lUGxhY2Vob2xkZXItLWNvb2tpZSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAuY29tcGFueWluZm8ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IG1hdGguZGl2KCRncmlkLWd1dHRlci13aWR0aCwgMikgKiAtMTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBtYXRoLmRpdigkZ3JpZC1ndXR0ZXItd2lkdGgsIDIpICogLTE7XG4gICAgfVxufVxuIiwiXG4ucHdHYWxsZXJ5IHtcbiAgdWwgbGkge1xuXHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cblx0JjpiZWZvcmUge1xuXHQgIEBpbmNsdWRlIHBzZXVkb0VsZW1lbnRTdmcoXCJhcnJvdy1yaWdodC1zaG9ydFwiLCAkbWFpbmNvbG9yKTtcblx0ICBoZWlnaHQ6IDE0cHg7XG5cdCAgd2lkdGg6IDE0cHg7XG5cdCAgdG9wOiA0cHg7XG5cdH1cbiAgfVxuXG59XG4iLCIkdHJpYW5nbGUtc2l6ZTogMjVweDtcblxuLnB3U2lkZWJhciB7XG4gICAgd2lkdGg6IDMyNXB4O1xuICAgICRzZWxmOiAmO1xuXG4gICAgJi5mb250Q29sb3JCbGFjayB7XG4gICAgICAgIC5wd1NpZGViYXJfX25hdiAucHdTaWRlYmFyX19saXN0TGV2ZWwyID4gbGkuY3VycmVudCA+IGEgLmxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbWFpbmNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5mb250Q29sb3JXaGl0ZSB7XG4gICAgICAgIC5wd1NpZGViYXJfX25hdiAucHdTaWRlYmFyX19saXN0TGV2ZWwyID4gbGkuY3VycmVudCA+IGEgLmxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbWFpbmNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5mb250Q29sb3JXaGl0ZSwgJi5mb250Q29sb3JCbGFjayB7XG4gICAgICAgIC5wd1NpZGViYXJfX2xpc3RMZXZlbDIge1xuICAgICAgICAgICAgPiBsaS5hY3RpdmUge1xuICAgICAgICAgICAgICAgID4gYSAubGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHdUZWFzZXJncm91cCB7XG5cbiAgICAgICAgJi5iYWNrZ3JvdW5kLXdoaXRlIC5wd1RlYXNlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAmLnRlYXNlcmdyb3VwLTE6bm90KC52YXJpYW50LTgpLmJvcmRlck1haW5jb2xvci5iYWNrZ3JvdW5kLWdyZXksICYudGVhc2VyZ3JvdXAtMTpub3QoLnZhcmlhbnQtOCkuYmFja2dyb3VuZC1ncmV5ICB7XG4gICAgICAgICAgICAucHdUZWFzZXJfX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbi1jYXJvdXNlbCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5iYWNrZ3JvdW5kLWdyZXkuYm9yZGVyTWFpbmNvbG9yLCAmLmJhY2tncm91bmQtZ3JleS5ib3JkZXJHcmV5IHtcbiAgICAgICAgICAgIC5wd1RlYXNlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAmX19jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRncmV5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodGdyZXk7XG4gICAgICAgIGNvbG9yOiAkbWFpbmNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICAgICYuYmFja2dyb3VuZEdyZXkge1xuICAgICAgICAgICAgLnB3VGVhc2VyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbGlnaHRncmV5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5iYWNrZ3JvdW5kV2hpdGUge1xuICAgICAgICAgICAgLnB3U2lkZWJhcl9fbGlzdExldmVsMiB7XG4gICAgICAgICAgICAgICAgbGkuYWN0aXZlLnN1YiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmJhY2tncm91bmRXaGl0ZSwgJi5iYWNrZ3JvdW5kR3JleSB7XG4gICAgICAgICAgICAucHdTaWRlYmFyX19saXN0TGV2ZWwyIGE6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiAjMzMzMzMzO1xuXG4gICAgICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICBzdmcgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGZpbGw6ICRtYWluY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG1haW5jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICN7JHNlbGZ9X19saXN0TGV2ZWwxIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQgPiBsaS5jdXJyZW50LFxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCA+IGxpLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQgPiBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuN3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN1cnJlbnQgPiBhLFxuICAgICAgICAgICAgLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkID4gbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmLmN1cnJlbnQsXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGxpIHVsIGxpLmFjdGl2ZS5zdWIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZGFya2dyZXksIDAuMik7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICN7JHNlbGZ9X19saXN0TGV2ZWwyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMjVweCAxMHB4IDI1cHg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXN0eWxlLXNpZGViYXItbGV2ZWwtMjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBsaS5hY3RpdmUge1xuICAgICAgICAgICAgICAgICYuc3ViIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHVsIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1zdHlsZS1zaWRlYmFyLWxldmVsLTM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY3VycmVudCA+IGEsXG4gICAgICAgICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jdXJyZW50IHVsLFxuICAgICAgICAgICAgLmFjdGl2ZSB1bCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYgYSAubGVmdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICN7JHNlbGZ9X19saXN0TGV2ZWwzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IHVsOmZpcnN0LWNoaWxkID4gbGkuYWN0aXZlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgPiBhLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0ZXh0LXN0eWxlLXNpZGViYXItYWN0aXZlLXBhcmVudDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDI1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnB3U2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG59XG4iLCJAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAucHdOYXZpZ2F0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogJG1haW5jb2xvcjtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHRvcDogJGhlYWRlckhlaWdodE1vYmlsZTtcblxuICAgICAgICAmRHJvcGRvd24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX25hdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICA+IC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjExZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gJGhlYWRlckhlaWdodE1vYmlsZSk7XG5cbiAgICAgICAgICAgICAgICBhOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsaS5vcGVuLFxuICAgICAgICAgICAgbGkuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkNHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wd0ljb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmTGV2ZWxPbmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAmX19saXN0SXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLnN1Yikgc3ZnLFxuICAgICAgICAgICAgICAgICAgICAmLmN1cnJlbnQ6bm90KC5zdWIpIHN2ZyxcbiAgICAgICAgICAgICAgICAgICAgJi5oYXNTdWJOYXY6bm90KC5zdWIpIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5ob3ZlcmVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICYuY3VycmVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgKyAucHdOYXZpZ2F0aW9uX19uYXZMZXZlbE9uZV9fbGlzdEl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZMZXZlbFR3byB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcblxuICAgICAgICAgICAgICAgICZfX2xpc3RJdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGQ0dW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICsgLnB3TmF2aWdhdGlvbl9fbmF2TGV2ZWxUd29fX2xpc3RJdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNXB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcm90YXRlTmVnYXRpdmU5MGRlZztcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGxpOmxhc3Qtb2YtdHlwZSBhOmFmdGVyLFxuICAgICAgICAgICAgICAgIGxpLmFjdGl2ZTpsYXN0LW9mLXR5cGUgYTphZnRlcixcbiAgICAgICAgICAgICAgICBsaS5vcGVuOmxhc3Qtb2YtdHlwZSBhOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZMZXZlbFRocmVlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDEwcHggMjBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgJi5jdXJyZW50LFxuICAgICAgICAgICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluY29sb3I7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgLnB3TmF2aWdhdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRtYWluY29sb3I7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICAgICAgPiAuY29udGFpbmVyID4gLnJvdyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZMZXZlbE9uZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMWVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19saXN0SXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmhhc1N1Yk5hdiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bm90KC5zdWIpIHN2ZyxcbiAgICAgICAgICAgICAgICAgICAgJi5jdXJyZW50Om5vdCguc3ViKSBzdmcsXG4gICAgICAgICAgICAgICAgICAgICYuaGFzU3ViTmF2Om5vdCguc3ViKSBzdmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuaG92ZXJlZCxcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmTGV2ZWxUd28ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHdOYXZpZ2F0aW9uRHJvcGRvd24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAgICZfX2ZseU91dCB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoOTB2aCAtICRoZWFkZXJIZWlnaHRNb2JpbGUpO1xuXG4gICAgICAgICAgICAmLS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDAgMjBweCAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRtYWluY29sb3I7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAyNXB4IDAgMTVweDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwgbGkgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAwIDAgMTJweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTYwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZDR1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzcGFuLmxlZnQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHNwYW4uaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm5vYm9yZGVyID4gZGl2IHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29sc05hdiB1bDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaW5nbGUtcmVmZXJlbmNlIC5wd05hdmlnYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ob21lIC5wd05hdmlnYXRpb25fX25hdiAuaG9tZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbWFpbmNvbG9yO1xuICAgIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLnB3SGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogNDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAkc2VsZjogJjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgPiAuY29udGFpbmVyID4gLnJvdyB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5yb3cge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICAmX19jb250YWN0IHtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2IoMzMsIDM3LCA0MSk7XG4gICAgICAgIH1cblxuICAgICAgICAucHdJY29uIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAgICAgJi0tcGhvbmUge1xuICAgICAgICAgICAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogJG1haW5jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLW1haWwge1xuICAgICAgICAgICAgICAgIHN2ZyBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlOiAkbWFpbmNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJveC1zaGFkb3c6IC0zcHggMnB4IDIycHggMXB4IHJnYmEoMCwwLDAsMC4yOSk7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogLTNweCAycHggMjJweCAxcHggcmdiYSgwLDAsMCwwLjI5KTtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiAtM3B4IDJweCAyMnB4IDFweCByZ2JhKDAsMCwwLDAuMjkpO1xuICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgIC8vd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI2MHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgJi5sb2dvQmdDdXN0b21Db2xvciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKG1kKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgICAgICAgICAmLnB3SGVhZGVyX19sb2dvLS1jdXN0b21XaWR0aCwgJi5wd0hlYWRlcl9fbG9nby0tc3ZnIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKCRoZWFkZXJIZWlnaHRUYWJsZXQgLSAgMjBweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoJGhlYWRlckhlaWdodE1vYmlsZSAtICAyMHB4KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKGxnKSB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAvKiB1c2VyIG1vcmUgcXVhbGlmaWVkIHNlbGVjdG9yIHRvIG92ZXJyaWRlIGJhc2UgcnVsZXMgKi9cbiAgICAjeyAkc2VsZiB9X19uYXZUcmlnZ2VyIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2hvd24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJG1haW5jb2xvcjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDQ5JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihsZykge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodFRhYmxldDtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAzcHggM3B4IDVweCByZ2IoMCAwIDAgLyAxMCUpO1xuXG4gICAgICAgIC5wd0hlYWRlcl9fbG9nbyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICAgICAgICAvLyBvdmVycml0ZSBpbmxpbmUgY3NzIGZvciBsb2dvIGN1c3RvbSBiZyBjb2xvclxuICAgICAgICAgICAgPiBhLmxvZ29CZ0N1c3RvbUNvbG9yIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyID4gLnJvdyB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAjeyAkc2VsZiB9X19uYXZUcmlnZ2VyLCAjeyAkc2VsZiB9X19jb250YWN0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLnB3TmF2aWdhdGlvbl9fbmF2TGV2ZWxPbmUtLWV4cGFuZGVkIHtcbiAgICAgICAgICAgIGhlaWdodDogJGhlYWRlckhlaWdodE1vYmlsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bihtZCkge1xuICAgICAgICBoZWlnaHQ6ICRoZWFkZXJIZWlnaHRNb2JpbGU7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/