/**
 * Swiper 4.3.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2018 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: June 5, 2018
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

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

.swiper-container-multirow > .swiper-wrapper {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

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

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
}

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

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  -o-transition-property: transform, height;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform;
}

/* 3D Effects */
.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

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

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* IE10 Windows Phone 8 Fixes */
.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

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

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

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

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

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

.swiper-slide-zoomed {
  cursor: move;
}

/* Preloader */
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  -ms-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite;
}

.swiper-lazy-preloader:after {
  display: block;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat;
}

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

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

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

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

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

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

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

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

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

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

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

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

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}

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

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

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

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

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

.swiper-container-coverflow .swiper-wrapper {
  /* Windows 8 IE 10 fix */
  -ms-perspective: 1200px;
}

/* open-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 300;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-300italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 400;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 500;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 500;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 600;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 700;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 800;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* open-sans-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 800;
  src: url("/theme/public/assets/fonts/open-sans-v44-latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
:root {
  --gap: 20px;
  --2gap: calc(2 * var(--gap));
  --3gap: calc(3 * var(--gap));
  --4gap: calc(4 * var(--gap));
  --5gap: calc(5 * var(--gap));
  --halfgap: calc(var(--gap) / 2);
  --quartergap: calc(var(--gap) / 4);
  --contentMaxWidth: 1600px;
  --contentMaxWidthWide: 2000px;
}

:root {
  --gridContainerPaddingTop: 1;
  --gridContainerPaddingBottom: 1;
}

.gridContainer {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--2gap);
  margin: 0 auto;
  max-width: var(--contentMaxWidth);
  position: relative;
  padding-top: calc(var(--gap) * var(--gridContainerPaddingTop));
  padding-bottom: calc(var(--gap) * var(--gridContainerPaddingBottom));
}
@media screen and (min-width: 768px) {
  .gridContainer .gridItem--1 {
    grid-column: 1;
  }
  .gridContainer .gridItem--2 {
    grid-column: 2;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--50_50 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--25_75 {
    grid-template-columns: 25fr 75fr;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--75_25 {
    grid-template-columns: 75fr 25fr;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--33_66 {
    grid-template-columns: calc(33.3333% - 1.3333333333 * var(--gap)) 1fr;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--66_33 {
    grid-template-columns: 1fr calc(33.3333% - 1.3333333333 * var(--gap));
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--33_33_33 {
    grid-template-columns: repeat(2, 1fr);
  }
  .gridContainer--33_33_33 .gridItem--3 {
    grid-column: 1;
  }
}
@media screen and (min-width: 992px) {
  .gridContainer--33_33_33 {
    grid-template-columns: repeat(3, 33.3333fr);
  }
  .gridContainer--33_33_33 .gridItem--3 {
    grid-column: 3;
  }
}
@media screen and (min-width: 768px) {
  .gridContainer--33_33_33.col1empty {
    grid-template-columns: repeat(2, 1fr);
  }
  .gridContainer--33_33_33.col1empty .gridItem--2 {
    grid-column: 1;
  }
  .gridContainer--33_33_33.col1empty .gridItem--3 {
    grid-column: 2;
  }
}
@media screen and (min-width: 992px) {
  .gridContainer--33_33_33.col1empty {
    grid-template-columns: repeat(3, 33.3333fr);
  }
  .gridContainer--33_33_33.col1empty .gridItem--2 {
    grid-column: 2;
  }
  .gridContainer--33_33_33.col1empty .gridItem--3 {
    grid-column: 3;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--50_25_25 {
    grid-template-columns: repeat(2, 1fr);
  }
  .gridContainer--50_25_25 .gridItem--1 {
    grid-column: 1/span 2;
  }
  .gridContainer--50_25_25 .gridItem--2 {
    grid-column: 1;
    grid-row: 2;
  }
  .gridContainer--50_25_25 .gridItem--3 {
    grid-column: 2;
    grid-row: 2;
  }
}
@media screen and (min-width: 992px) {
  .gridContainer--50_25_25 {
    grid-template-columns: repeat(4, 1fr);
  }
  .gridContainer--50_25_25 .gridItem--2 {
    grid-column: 3;
    grid-row: auto;
  }
  .gridContainer--50_25_25 .gridItem--3 {
    grid-column: 4;
    grid-row: auto;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--25_25_50 {
    grid-template-columns: repeat(2, 1fr);
  }
  .gridContainer--25_25_50 .gridItem--3 {
    grid-column: 1/span 2;
    grid-row: 2;
  }
}
@media screen and (min-width: 992px) {
  .gridContainer--25_25_50 {
    grid-template-columns: repeat(4, 1fr);
  }
  .gridContainer--25_25_50 .gridItem--3 {
    grid-column: 3/span 2;
    grid-row: auto;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--15_70_15 {
    grid-template-columns: 15fr 70fr 15fr;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--25_25_25_25 {
    grid-template-columns: repeat(2, 1fr);
  }
  .gridContainer--25_25_25_25 .gridItem--3 {
    grid-column: 1;
    grid-row: 2;
  }
  .gridContainer--25_25_25_25 .gridItem--4 {
    grid-column: 2;
    grid-row: 2;
  }
}
@media screen and (min-width: 992px) {
  .gridContainer--25_25_25_25 {
    grid-template-columns: repeat(4, 1fr);
  }
  .gridContainer--25_25_25_25 .gridItem--3 {
    grid-column: 3;
    grid-row: auto;
  }
  .gridContainer--25_25_25_25 .gridItem--4 {
    grid-column: 4;
    grid-row: auto;
  }
}

@media screen and (min-width: 768px) {
  .gridContainer--15_35_35_15 {
    grid-template-columns: 15fr 35fr 35fr 15fr;
  }
}

.gridContainer--wide {
  max-width: var(--contentMaxWidthWide);
}

.gridContainer--vCenter .gridItem {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}

.gridItem > :first-child {
  padding-top: 0;
}
.gridItem > :last-child:not(.btn) {
  padding-bottom: 0;
}
@media screen and (min-width: 768px) {
  .gridItem {
    order: initial !important;
  }
}

.container {
  margin: 0 auto;
  max-width: var(--contentMaxWidth);
  position: relative;
}
@media screen and (min-width: 768px) {
  .container {
    padding-top: calc(2 * var(--gap));
  }
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

label {
  display: block;
}
label.form_warning {
  color: #a94442;
}
input[type=radio] + label {
  display: inline;
}

input[type=text],
input[type=password],
input[type=email],
textarea {
  width: 100%;
  border: 1px solid #edeeed;
  padding: 4px;
}

select {
  width: 100%;
  border-color: #edeeed;
  border-style: solid;
  border-width: 1px;
  padding: 3px 4px 4px 4px;
}

.radio label,
.checkbox label {
  display: flex;
  align-items: flex-start;
}
.radio label input,
.checkbox label input {
  position: relative;
  top: 0.2em;
  margin-right: 0.5rem;
}

.form_warning li {
  font-weight: bold;
  color: #a94442;
}

label.error {
  display: block;
  padding: 0.1em 0.6em;
  background: #a94442;
  color: #fff;
}

.form-group {
  padding-bottom: var(--gap);
}
.form-group.has-error * {
  border-color: red;
}

.alert {
  padding: calc(0.5 * var(--gap)) calc(0.5 * var(--gap));
  margin-bottom: var(--gap);
  border-width: 1px;
  border-style: solid;
  border-radius: 0.2em;
}
.alert .formcheckbox,
.alert ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.alert li {
  margin: 0;
}
.alert li + li {
  padding-top: 0.25em;
}

.alert-success {
  background-color: #dff0d8 !important;
  border-color: #d0e9c6 !important;
  color: #3c763d !important;
}
.alert-success * {
  color: #fff !important;
}

.alert-info {
  background-color: #d8d9da !important;
  border-color: #d8d9da !important;
  color: #030304 !important;
}
.alert-info * {
  color: #030304 !important;
}
.alert-info a,
.alert-info a:hover {
  text-decoration: underline;
}
.alert-info label.error {
  color: #fff !important;
}

.alert-warning {
  background-color: #fcf8e3 !important;
  border-color: #faf2cc !important;
  color: #8a6d3b !important;
}
.alert-warning * {
  color: #8a6d3b !important;
}

.alert-danger {
  background-color: #f2dede !important;
  border-color: #ebcccc !important;
  color: #a94442 !important;
}
.alert-danger * {
  color: #a94442 !important;
}

[name=rex_ycom_auth_stay] {
  float: left;
  margin-right: 0.2em;
  position: relative;
  top: 0.3em;
}

.datenschutz-checkbox-wrapper + label.error {
  margin-top: calc(-1 * var(--gap));
  margin-bottom: var(--gap);
}

.form-group-submit {
  display: flex;
  justify-content: flex-end;
}
.form-group-submit .btn {
  margin: 0;
}

.formGridContainer {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0 var(--gap);
  position: relative;
}

@media screen and (min-width: 768px) {
  .formGridContainer--50_50 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (min-width: 768px) {
  .formGridContainer--10_45_45 {
    grid-template-columns: 10fr 45fr 45fr;
  }
}

.formGridContainer--submit {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.formGridContainer--submit button {
  margin: 0;
}

nav.pagination {
  padding: 1rem;
}
@media screen and (min-width: 768px) {
  nav.pagination {
    padding: 2rem;
  }
}
nav.pagination ul {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
}
nav.pagination li {
  padding: 0 0 0 0.25rem !important;
}
nav.pagination a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #e6eceb;
  color: #916f4b;
  width: 2rem;
  height: 2rem;
  line-height: 2rem;
  border-radius: 0.2rem;
  text-decoration: none;
}
nav.pagination a:hover {
  background: #00768E;
  color: #fff;
  text-decoration: none;
}
nav.pagination .active a {
  background: #00768E;
  color: #fff;
}
nav.pagination .next svg path,
nav.pagination .prev svg path {
  fill: #916f4b;
}
nav.pagination .next:hover svg path,
nav.pagination .prev:hover svg path {
  fill: #fff;
}
nav.pagination .disabled a {
  background: #e6eceb;
  color: #fff;
  cursor: default;
}
nav.pagination .disabled a:hover {
  background: #e6eceb;
  color: #fff;
}
nav.pagination .disabled svg path {
  fill: #fff;
}
nav.pagination .disabled:hover svg path {
  fill: #fff;
}
nav.pagination svg {
  height: 1rem;
}

.download__item + .download__item {
  margin-top: var(--gap);
}

.download__itemLink {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.download__itemIcon {
  flex: 0 0 2rem;
}
.download__itemIcon svg {
  display: block;
  height: 2rem;
  width: auto;
}

.module {
  padding: 0 var(--gap);
}
@media screen and (min-width: 992px) {
  .module {
    padding: 0 var(--2gap);
  }
}
.module .image {
  max-width: 500px;
}
@media screen and (min-width: 768px) {
  .module .image {
    max-width: none;
  }
}
.module .image__caption {
  line-height: 1.3;
  padding-top: 0.25rem;
  font: normal normal 400 0.85rem/1.4 "Open Sans", sans-serif;
}
.module .gallery .isotopeGridSizer {
  width: calc(50% - var(--halfgap) / 2);
}
.module .gallery .isotopeTile {
  width: calc(50% - var(--halfgap) / 2);
  margin-bottom: var(--halfgap);
  padding: 0;
}
@media screen and (min-width: 992px) {
  .module .gallery .isotopeGridSizer {
    width: calc(33.33% - 1.3333333333 * var(--halfgap));
  }
  .module .gallery .isotopeTile {
    width: calc(33.33% - 1.3333333333 * var(--halfgap));
  }
}
.module .gallery.firstImage2Col .isotopeTile:first-child {
  width: 100%;
}
.module .gallery {
  /*
  @include mq(500px) {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
  }
  @include mq(m) {
      grid-template-columns: repeat(3, 1fr);
  }
  */
  /*
  .lightbox-image {
      position: relative;
      &:hover {
          img {
              filter: blur(15px);
          }
          .image-ratio {
              &:after {
                  content: '+';
                  position: absolute;
                  left: 0;
                  top: 0;
                  right: 0;
                  bottom: 0;
                  color: #fff;
                  font-size: 8rem;
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  font-style: normal;
              }
          }
      }
  }*/
}
.module .videoWrapper.hasRatio {
  position: relative;
}
.module .videoWrapper.hasRatio video {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.module .videoRatio {
  display: block;
  width: 100%;
}
.module video {
  width: 100%;
  display: block;
}

.module20 h2 {
  padding-bottom: calc(0.5 * var(--gap));
}
.module20 a, .module20 a:hover {
  text-decoration: none;
  display: block;
}
.module20 a *, .module20 a:hover * {
  text-decoration: none;
}

.header {
  background: #fff;
}

.header__inner {
  margin: 0 auto;
  width: 100%;
  max-width: var(--contentMaxWidth);
  display: flex;
  align-items: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  .header__inner {
    justify-content: center;
  }
}

.header__logo {
  display: block;
  position: relative;
  z-index: 100;
  pointer-events: auto;
  width: 200px;
  padding: var(--gap);
}
@media screen and (min-width: 768px) {
  .header__logo {
    width: 300px;
  }
}
@media screen and (min-width: 992px) {
  .header__logo {
    width: 350px;
    padding-top: var(--2gap);
    padding-bottom: var(--2gap);
  }
}
@media screen and (min-width: 1200px) {
  .header__logo {
    width: 400px;
  }
}
.header__nav {
  z-index: 20;
  width: 100%;
  display: none;
}
@media screen and (min-width: 992px) {
  .header__nav {
    display: block;
  }
}
.header__nav ul.level0 {
  width: 100%;
  margin: 0 auto;
  display: grid;
  padding: 0;
  grid-template-columns: 1fr 1fr 1fr;
}
.header__nav li {
  position: relative;
}
.header__nav li.level0 div.level1 {
  display: none;
}
.header__nav li.level0 div.level1.visible {
  display: block;
}
.header__nav li.level0:hover div.level1 {
  display: block;
}
.header__nav li.level1:last-child > a {
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.header__nav li.level1.hasChildren a {
  border-bottom: 0;
}
.header__nav a {
  background: #00768E;
  border: 1px solid #B8923F;
  border-top: 0;
  border-bottom: 0;
}
.header__nav a * {
  color: #fff;
}
.header__nav a:hover {
  background: #f4f5ef;
}
.header__nav a:hover * {
  color: #00768E;
}
.header__nav a.current, .header__nav a.active {
  background: #B8923F;
}
.header__nav a.current:hover *, .header__nav a.active:hover * {
  color: #fff;
}
.header__nav span {
  display: inline-block;
}
.header__nav a.level0 {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.7em var(--gap) 0.4em var(--gap);
  text-align: center;
  font-size: 1.4rem;
  height: 100%;
  border: 0;
}
.header__nav a.level1 {
  display: block;
  padding: 1rem var(--halfgap) 1rem var(--halfgap);
  font-size: 1.2rem;
  text-align: center;
}
.header__nav a.level2 {
  display: block;
  padding: 0.25rem var(--halfgap) 0.25rem var(--halfgap);
  text-align: center;
}
.header__nav div.level1 {
  position: absolute;
  left: 0;
  right: 0;
  border-bottom: 1px solid #B8923F;
  border-bottom-left-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}
.header__nav div.level1__inner {
  margin: 0 auto;
  max-width: var(--contentMaxWidthWide);
}
.header__nav div.level1__inner:before {
  content: "";
  background: rgba(0, 0, 0, 0.7);
  position: absolute;
  width: 50%;
  right: 0;
  top: var(--2gap);
  bottom: 0;
}
.header__nav div.level1__innerContent {
  display: flex;
  justify-content: flex-end;
  padding: var(--5gap) 0 0 var(--2gap);
  height: 100vh;
  height: calc(var(--slideshowHeight) + var(--2gap));
  pointer-events: all;
  width: 50%;
  margin-left: auto;
}
.header__nav .level1__templateColor {
  display: inline-block;
  width: var(--2gap);
  height: 1.2em;
  position: relative;
  margin-left: var(--gap);
  top: 0.3em;
}
.header__nav .level1__templateColor--noColor {
  border-bottom: 1px solid #fff;
  height: 0;
  top: -0.25em;
}

.footer {
  background: #00768E;
}
.footer * {
  color: #fff;
}

.footerNav li {
  padding-left: 2rem;
  position: relative;
}
.footerNav li:before {
  content: ".";
  position: absolute;
  left: calc(1rem - 2px);
}
.footerNav * {
  color: #fff;
}

.footerNav__inner {
  display: flex;
  flex-wrap: wrap;
  padding-top: var(--gap);
  padding-bottom: var(--gap);
  max-width: calc(var(--contentMaxWidth) + var(--4gap));
  margin: 0 auto;
}
.footerNav__inner p {
  margin: 0;
  padding: 0;
}
.footerNav__inner ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}

.offscreen {
  --gap: 20px;
  --2gap: 40px;
  --3gap: 60px;
  --4gap: 80px;
  --halfgap: 10px;
  --quartergap: 5px;
  position: fixed;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 201;
  overflow: auto;
}
.offscreen::-webkit-scrollbar {
  display: none;
}
.offscreen {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.offscreen *, .offscreen *:hover {
  color: #030304;
}
.offscreen {
  background: #00768E;
  right: -100%;
  transition: right 0.25s;
}
.offscreen.visible {
  right: 0;
}
@media screen and (min-width: 768px) {
  .offscreen {
    width: 25rem;
    right: -25rem;
    transition: right 0.25s;
  }
  .offscreen.visible {
    right: 0;
  }
}

.offscreen__inner {
  height: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 1200px) {
  .offscreen__inner {
    margin: 0 auto;
    max-width: var(--contentMaxWidth);
  }
}

.offscreen__logo {
  position: relative;
  z-index: 1;
}
.offscreen__logo svg path {
  -webkit-filter: none;
  filter: none;
}

.offscreen__nav {
  width: 100%;
  float: none;
  clear: both;
  padding: 9rem var(--gap) var(--2gap) var(--gap);
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .offscreen__nav {
    padding-top: 10rem;
  }
}
@media screen and (min-width: 1200px) {
  .offscreen__nav {
    padding-top: 13rem;
  }
}
.offscreen__nav ul.level1 {
  padding-top: var(--quartergap);
}
@media screen and (min-width: 992px) {
  .offscreen__nav ul.level1 {
    padding-top: 7px;
    display: none;
    height: 0;
  }
}
.offscreen__nav li {
  position: relative;
}
.offscreen__nav li.current, .offscreen__nav li.active {
  z-index: 1;
}
.offscreen__nav li.level0 {
  padding-bottom: var(--gap);
}
@media screen and (min-width: 992px) {
  .offscreen__nav li.level0 {
    position: relative;
    padding-bottom: var(--halfgap);
  }
  .offscreen__nav li.level0.active ul.level1, .offscreen__nav li.level0.current ul.level1 {
    display: block;
  }
}
.offscreen__nav li.level0 + li {
  margin-top: 1rem;
}
@media screen and (min-width: 992px) {
  .offscreen__nav li.level1 {
    padding-bottom: var(--halfgap);
  }
}
.offscreen__nav a {
  overflow: hidden;
  display: flex;
  justify-content: center;
  font: normal normal 600 1.4rem/1.1 "Open Sans", sans-serif;
  padding: 0.2rem 0;
}
.offscreen__nav a span {
  position: relative;
  color: #fff;
}
.offscreen__nav a:hover span {
  color: #fff;
}
.offscreen__nav a.level0 {
  position: relative;
}
@media screen and (min-width: 992px) {
  .offscreen__nav a.level0.active span, .offscreen__nav a.level0.current span {
    position: relative;
  }
}
.navToggler__bar {
  fill: none;
  stroke: #D7A24B;
  stroke-linecap: round;
  stroke-width: 4px;
}
a:hover .navToggler__bar {
  stroke: #B8923F;
}

.offscreen__toggle {
  cursor: pointer;
  display: none;
  position: absolute;
  top: var(--2gap);
  right: var(--2gap);
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  z-index: 22;
  display: flex;
  align-items: center;
  justify-content: center;
}
.offscreen__toggle:hover {
  background: none transparent;
}
.offscreen__toggle.visible {
  display: flex;
}
@media screen and (min-width: 992px) {
  .offscreen__toggle {
    top: var(--2gap);
    right: var(--2gap);
  }
}
.offscreen__toggle svg {
  display: block;
}
.offscreen__toggle svg path {
  stroke: #fff;
}
.offscreen__toggle i {
  display: block;
  width: 60%;
  height: 3px;
  border-radius: 1px;
  background: #fff;
}
.offscreen__toggle i + i {
  margin-top: 6px;
}

.offscreen__toggle--close {
  width: auto;
  display: flex;
  align-items: center;
  gap: 1em;
  color: #fff;
}
.offscreen__toggle--close img {
  height: 1em;
  width: auto;
}
.offscreen__toggle--close.visible {
  display: flex;
}
.offscreen__toggle--close:hover {
  color: #fff;
  text-decoration: none;
}

.langNav {
  text-transform: uppercase;
}

.jump2Content {
  width: 2.7rem;
}
.jump2Content svg path,
.jump2Content svg polygon {
  fill: #00768E;
}

.moduleSwiper {
  padding-bottom: calc(2 * var(--gap));
  position: relative;
}

@media screen and (min-width: 1200px) {
  .swiper-container:before, .swiper-container:after {
    content: "";
    background: #fff;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: calc(110px + var(--2gap));
    z-index: 11;
  }
  .swiper-container:after {
    right: 0;
    left: auto;
  }
}

.swiper-container__wrapper {
  position: relative;
  overflow: hidden;
  background: #f5f5f4;
  height: calc(100vh - var(--2gap));
}

.swiper-slide {
  height: auto;
  overflow: hidden;
  position: relative;
}
.swiper-slide figure {
  text-align: center;
}
@media screen and (min-width: 1200px) {
  .swiper-slide figure {
    padding-left: calc(110px + var(--4gap));
    padding-right: calc(110px + var(--4gap));
  }
}

.swiper-slide [class^=swiper-slide-background],
.swiper-slide [class^=swiper-slide-background] div {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
}

.sliderControls.sliderControls--header {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: 2;
  padding: 0 var(--gap) var(--gap) var(--gap);
}
@media screen and (min-width: 768px) {
  .sliderControls.sliderControls--header {
    padding: 0 var(--2gap) var(--gap) var(--2gap);
  }
}
.sliderControls.sliderControls--header button {
  width: calc(5rem + 4px);
  height: calc(5rem + 4px);
}
.sliderControls.sliderControls--header button .arrowLeftIcon__icon,
.sliderControls.sliderControls--header button .arrowRightIcon__icon {
  stroke: #fff;
}
.sliderControls.sliderControls--header button:hover .arrowLeftIcon__icon,
.sliderControls.sliderControls--header button:hover .arrowRightIcon__icon {
  stroke: #fff;
}

.sliderControls--headerInner {
  width: 100%;
  margin: 0 auto;
  max-width: var(--contentMaxWidth);
  display: flex;
  justify-content: flex-start;
}
.sliderControls--headerInner .swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  border: 1px solid #fff;
  background: #fff;
  opacity: 1;
}
.sliderControls--headerInner .swiper-pagination-bullet-active {
  background: #000;
  border-color: #000;
}

.swiperText {
  position: absolute;
  left: 0;
  top: var(--gap);
  padding: 1.5em var(--gap) 0.3em var(--gap);
  z-index: 1;
  background: rgba(255, 255, 255, 0.7);
  border-top-right-radius: 0.5rem;
  border-bottom-right-radius: 0.5rem;
}

.swiperText__inner span {
  font: normal normal 300 1.8rem/1.2 "Open Sans", sans-serif;
  color: #00768E;
  font-size: 3rem;
  padding: 0;
}

.swiper-pagination {
  position: relative;
  display: flex;
  gap: 5px;
}

.swiper__background {
  position: relative;
  max-width: var(--contentMaxWidth);
  margin: 0 auto;
  padding: 0 0 var(--2gap) 0;
}

.swiper__buttons {
  display: flex;
  gap: var(--gap);
  justify-content: space-between;
}
@media screen and (min-width: 1200px) {
  .swiper__buttons {
    position: absolute;
    top: var(--3gap);
    left: 0;
    right: 0;
    height: 0;
    z-index: 1;
  }
}

.swiper-button-prev, .swiper-button-next {
  position: relative;
  width: auto;
  height: auto;
  left: auto;
  right: auto;
  bottom: 0;
  top: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
}

.swiper-container[data-type=header] .swiper-slide {
  height: calc(100vh - var(--2gap));
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
}
@media screen and (min-width: 1200px) {
  .swiper-container[data-type=header]:before, .swiper-container[data-type=header]:after {
    display: none;
  }
}

@media screen and (min-width: 1200px) {
  .swiper-container__wrapper--blogOverview .swiper-container[data-type=header] .swiper-slide {
    background: url(/theme/public/assets/img/bg_h2.png) repeat-y center center;
  }
}

.swiper-container__wrapper--noimage .swiper-container[data-type=header] .swiper-slide {
  min-height: 0;
  max-width: var(--contentMaxWidth);
  margin: 0 auto;
}
.swiper-container__wrapper--noimage .swiper-container[data-type=header] .swiper-slide h1 {
  text-align: center;
  width: 100%;
  max-width: none;
  font-size: 6rem;
}
@media screen and (min-width: 992px) {
  .swiper-container__wrapper--noimage .swiper-container[data-type=header] .swiper-slide h1 {
    font-size: 8rem;
  }
}
.swiper-container__wrapper--noimage .swiper-container[data-type=header] .swiper-slide h1 {
  text-transform: uppercase;
  font-weight: 400;
  background: #fff;
  margin-top: var(--2gap);
  padding-top: var(--2gap);
  padding-bottom: var(--4gap);
}
@media screen and (min-width: 992px) {
  .swiper-container__wrapper--noimage .swiper-container[data-type=header] {
    padding: 0 var(--2gap);
  }
}
@media screen and (min-width: 992px) {
  .swiper-container__wrapper--noimage .swiper-container[data-type=header] .header__logo {
    width: 300px;
    margin-left: 0 !important;
  }
}

/*
Inhalt der /PhotoSwipe-4.1.3/src/css/_main-settings.scss
 */
/*
Kopie der /PhotoSwipe-4.1.3/src/css/default-skin/default-skin.scss
- :before,:after und background raus
- svg kram rein
 */
.pswp {
  position: relative;
}
.pswp .pswp__caption__center {
  max-width: none;
  text-align: center;
}

.pswp__button {
  line-height: 1em;
}
.pswp__button svg {
  width: 0.8em;
}

.pswp__button--arrow--left svg,
.pswp__button--arrow--right svg,
.pswp__button--fs svg {
  width: 1em;
}

.pswp__button--zoom svg.minus {
  display: none;
}

.pswp--zoomed-in .pswp__button--zoom svg.minus {
  display: inline-block;
}

.pswp--zoomed-in .pswp__button--zoom svg.plus {
  display: none;
}

.pswp__button--fs svg.compress-wide {
  display: none;
}

.pswp--fs .pswp__button--fs svg.compress-wide {
  display: inline-block;
}

.pswp--fs .pswp__button--fs svg.expand-wide {
  display: none;
}

/*

	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  transition: opacity 0.2s;
  box-shadow: none;
}
.pswp__button:focus, .pswp__button:hover {
  opacity: 1;
}
.pswp__button:active {
  outline: none;
  opacity: 0.9;
}
.pswp__button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1;
}

.pswp__button--fs {
  display: none;
}

.pswp--supports-fs .pswp__button--fs {
  display: block;
}

.pswp__button--zoom {
  display: none;
}

.pswp--zoom-allowed .pswp__button--zoom {
  display: block;
}

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden;
}

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute;
}

.pswp__button--arrow--left {
  left: 0;
}

.pswp__button--arrow--right {
  right: 0;
}

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__share-modal--hidden {
  display: none;
}

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  transform: translateY(6px);
  transition: transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}
.pswp__share-tooltip a {
  display: block;
  padding: 8px 12px;
  color: #000;
  text-decoration: none;
  font-size: 14px;
  line-height: 18px;
}
.pswp__share-tooltip a:hover {
  text-decoration: none;
  color: #000;
}
.pswp__share-tooltip a:first-child {
  /* round corners on the first/last list item */
  border-radius: 2px 2px 0 0;
}
.pswp__share-tooltip a:last-child {
  border-radius: 0 0 2px 2px;
}

.pswp__share-modal--fade-in {
  opacity: 1;
}
.pswp__share-modal--fade-in .pswp__share-tooltip {
  transform: translateY(0);
}

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px;
}

a.pswp__share--facebook:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid rgba(0, 0, 0, 0);
  border-bottom-color: #FFF;
  pointer-events: none;
}
a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF;
}
a.pswp__share--facebook:hover:before {
  border-bottom-color: #3E5C9A;
}

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF;
}

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D;
}

a.pswp__share--download:hover {
  background: #DDD;
}

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px;
}

/*

	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px;
}
.pswp__caption small {
  font-size: 11px;
  color: #BBB;
}

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC;
}

.pswp__caption--empty {
  display: none;
}

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden;
}

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr;
}

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px;
}

.pswp__preloader--active {
  opacity: 1;
}

.pswp--css_animation .pswp__preloader--active {
  opacity: 1;
}
.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
  animation: clockwise 500ms linear infinite;
}
.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
  animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
}
.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0;
}
.pswp--css_animation .pswp__preloader__cut {
  /*
      The idea of animating inner circle is based on Polymer ("material") loading indicator
       by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
  */
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden;
}
.pswp--css_animation .pswp__preloader__donut {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right;
  }
}
@keyframes clockwise {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes donut-rotate {
  0% {
    transform: rotate(0);
  }
  50% {
    transform: rotate(-140deg);
  }
  100% {
    transform: rotate(0);
  }
}
/*

	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  visibility: visible;
  opacity: 1;
  z-index: 1550;
}

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%;
}

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible;
}

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5);
}

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3);
}

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0;
}
.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0;
}

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001;
}

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none;
}

.pswp__element--disabled {
  display: none !important;
}

.pswp--minimal--dark .pswp__top-bar {
  background: none;
}

#skiptocontent a {
  padding: 0.5rem;
  position: absolute;
  top: -3rem;
  left: 0;
  color: white;
  border-right: 1px solid white;
  border-bottom: 1px solid white;
  border-bottom-right-radius: 0.5rem;
  background: #BF1722;
  transition: top 1s ease-out;
  z-index: 100;
}
#skiptocontent a:focus {
  position: absolute;
  left: 0;
  top: 0;
  outline-color: transparent;
  -webkit-transition: top 0.1s ease-in;
  transition: top 0.1s ease-in;
}

@media (prefers-reduced-motion: reduce) {
  #skiptocontent a {
    transition-duration: 0.001ms !important;
  }
}
/* ie11 */
_:-ms-fullscreen svg,
:root svg {
  display: none !important;
}
_:-ms-fullscreen .header,
:root .header {
  padding: 20px;
}
_:-ms-fullscreen .header__inner,
:root .header__inner {
  display: block !important;
}
_:-ms-fullscreen .header__nav,
:root .header__nav {
  display: block !important;
}
_:-ms-fullscreen .header__nav ul.level0,
:root .header__nav ul.level0 {
  justify-content: flex-start !important;
}
_:-ms-fullscreen .header__nav ul.level0 > li,
:root .header__nav ul.level0 > li {
  margin-right: 2em;
}
_:-ms-fullscreen .header__nav ul.level1,
:root .header__nav ul.level1 {
  width: auto !important;
}
_:-ms-fullscreen .gridContainer,
:root .gridContainer {
  padding: 20px;
  max-width: 1200px;
}
_:-ms-fullscreen .image,
:root .image {
  max-width: 400px !important;
}

@media screen and (min-width: 992px) {
  :root {
    --gap: 30px;
  }
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

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

html {
  color: #030304;
  overflow-y: scroll;
  position: relative;
  font: normal normal 400 16px/1.6 "Open Sans", sans-serif;
}
@media screen and (min-width: 768px) {
  html {
    font-size: 18px;
  }
}
@media screen and (min-width: 992px) {
  html {
    font-size: 20px;
  }
}
@media screen and (min-width: 1600px) {
  html {
    font-size: 22px;
  }
}

body {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
}

h1 {
  color: #00768E;
  font: normal normal 300 1.8rem/1.2 "Open Sans", sans-serif;
  text-align: center;
  margin: 0;
}
@media screen and (min-width: 992px) {
  h1 {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 1600px) {
  h1 {
    font-size: 2.6rem;
  }
}

.siteTitleWrapper {
  background: #D7A24B;
}
.siteTitleWrapper h1 {
  color: #fff;
  text-align: center;
}

h2,
h3.testimonial__headline {
  color: #00768E;
  font: normal normal 300 1.8rem/1.2 "Open Sans", sans-serif;
  padding: calc(0.5 * var(--gap)) 0 var(--gap) 0;
  margin: 0;
}
h2.right,
h3.testimonial__headline.right {
  text-align: right;
  background: url(/theme/public/assets/img/bg_h2.png) repeat-x left center;
}
h2.right span,
h3.testimonial__headline.right span {
  background: #fff;
  padding: 0 0 0 var(--2gap);
}
@media screen and (min-width: 992px) {
  h2,
  h3.testimonial__headline {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 1600px) {
  h2,
  h3.testimonial__headline {
    font-size: 2.6rem;
  }
}

h3 {
  font: normal normal 400 1.4rem/1.3 "Open Sans", sans-serif;
  padding: 0 0 var(--gap) 0;
  margin: 0;
}
@media screen and (min-width: 768px) {
  h3 {
    font-size: 2.2rem;
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 992px) {
  h3 {
    font-size: 3rem;
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 1600px) {
  h3 {
    font-size: 3rem;
    font-size: 1.4rem;
  }
}

h4 {
  font: normal normal 500 1rem/1.3 "Open Sans", sans-serif;
  padding: 0 0 var(--gap) 0;
  margin: 0;
}

p {
  padding: 0 0 var(--gap) 0;
  margin: 0;
}

hr {
  width: 100%;
  height: 0;
  display: block;
  border: 0;
  border-top: 1px solid #d8d9da;
  margin: 0;
  padding: 0 0 var(--gap) 0;
}

ul {
  margin: 0;
  padding-bottom: var(--gap);
}

ol {
  margin: 0;
  padding-bottom: var(--gap);
}

a {
  text-decoration: none;
  cursor: pointer;
  color: #D7A24B;
}

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

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  display: block;
}

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

table {
  width: auto;
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0;
  padding: 0 0 var(--gap) 0;
}

td {
  padding: 0 1rem 0 0;
}

strong,
b {
  font-weight: 600;
}

em,
i {
  font-style: italic;
}

iframe {
  border: 0;
}

figure {
  margin: 0;
  padding: 0 0 var(--gap) 0;
  width: 100%;
}

blockquote {
  margin: 0;
  padding: 0 0 var(--gap) 0;
}

.js .lazyload,
.js .lazyloading {
  opacity: 0;
}
.js .lazyloaded {
  opacity: 1;
  transition: opacity 300ms;
}

img[data-sizes=auto] {
  width: 100%;
  max-width: none;
}

.image-ratio {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
}
.image-ratio i {
  display: block;
  width: 100%;
  pointer-events: none;
}
.image-ratio i:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.image-ratio img {
  position: absolute;
  left: 0;
  top: 0;
}

.fa-svg {
  pointer-events: none;
}

nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
nav li {
  margin: 0;
  padding: 0;
}
nav a, nav a:hover {
  text-decoration: none;
}

.clear {
  clear: both;
  width: 100%;
  float: none;
}

.image__caption {
  padding: 0.2rem;
}

.datenschutz-checkbox-wrapper {
  font-size: 0.8rem;
  line-height: 1.2;
  padding: 0;
  border: 0;
  background: none transparent !important;
}

.btn {
  display: inline-block;
  text-decoration: none;
  text-shadow: none;
  font-weight: bold;
  padding: 1em 2em;
  border: 2px solid #D7A24B;
  background: #fff;
  color: #00768E;
  border-radius: var(--gap);
}
.btn:hover {
  text-decoration: none;
  background: #00768E;
  color: #fff;
  border-color: #00768E;
}

.gridItem .btn__wrapper {
  margin-bottom: var(--gap);
}
p + .btn__wrapper {
  margin-top: calc(0.5 * var(--gap));
}

.iw-icon {
  position: relative;
  top: 0.1em;
  display: inline-block;
  overflow: auto;
  text-align: center;
  line-height: 0;
  width: 1.2em;
}
.iw-icon.map-marker-alt {
  top: 0.2em;
}
.iw-icon svg {
  position: relative;
  width: 0.9em;
  height: auto;
}
.iw-icon svg.map-marker-alt {
  width: 0.8em;
}
.iw-icon svg.chevron-double-right {
  width: 0.6em;
}

/**/
.faq__question {
  position: relative;
  cursor: pointer;
  padding-left: 1.2em;
}
.faq__question svg {
  height: 0.8em;
  margin-right: 0.5em;
  position: absolute;
  left: 0;
  top: 0.4em;
  fill: #030304;
}
.faq__question:hover {
  color: #B8923F;
}
.faq__question:hover svg {
  fill: #B8923F;
}
.faq__question.open svg {
  transform: rotate(180deg);
}

.faq__answer {
  padding-top: calc(0.5 * var(--gap));
  padding-bottom: calc(0.5 * var(--gap));
  padding-left: 1.2rem;
}
.faq__answer + .faq__question {
  margin-top: 1rem;
}

/**/
.gallery {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--halfgap);
}
@media screen and (min-width: 600px) {
  .gallery {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 800px) {
  .gallery {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media screen and (min-width: 1000px) {
  .gallery {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media screen and (min-width: 1200px) {
  .gallery {
    grid-template-columns: repeat(6, 1fr);
  }
}

/**/
.imageCredits {
  max-width: var(--contentMaxWidthWide);
  margin: 0 auto;
}

.imageCredits__tile,
.isotopeGridSizer {
  float: left;
  background: #d8d9da;
  width: 100%;
}
.imageCredits__tile .image-ratio i:after,
.isotopeGridSizer .image-ratio i:after {
  display: none;
}
@media screen and (min-width: 600px) {
  .imageCredits__tile,
  .isotopeGridSizer {
    width: 50%;
  }
}
@media screen and (min-width: 900px) {
  .imageCredits__tile,
  .isotopeGridSizer {
    width: 33.3333%;
  }
}
.isotopeGridSizer {
  background: none transparent !important;
}

.imageCredits__text {
  padding: calc(0.5 * var(--gap)) calc(0.5 * var(--gap));
  text-align: center;
  background: rgba(255, 255, 255, 0.9);
  color: #030304;
  font-size: 0.8rem;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  text-decoration: none;
  font-weight: 400;
}
.imageCredits__text a {
  color: #030304;
  text-decoration: none;
}
.imageCredits__text a:hover {
  color: #030304;
  text-decoration: none;
}

/**/
.module--bgColor1 {
  background: #f5f5f4;
}
.module--bgColor1 h2, .module--bgColor1 h3, .module--bgColor1 h4, .module--bgColor1 .banner {
  color: #030304;
}

.module--bgColor2 {
  background: #e4e2da;
}
.module--bgColor2 h2, .module--bgColor2 h3, .module--bgColor2 h4, .module--bgColor2 .banner {
  color: #030304;
}

.module--bgColor3 {
  background: #f2eee8;
}
.module--bgColor3 * {
  color: #c79d54;
}

.banner {
  font-size: 2.8rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-weight: 300;
  margin-top: var(--2gap);
  margin-bottom: var(--2gap);
}
@media screen and (min-width: 992px) {
  .banner {
    font-size: 3.2rem;
  }
}

/**/
.moduleTeaser__inner h2 {
  hyphens: auto;
}
.moduleTeaser__inner {
  margin: 0 auto;
  max-width: var(--contentMaxWidth);
}
@media screen and (min-width: 992px) {
  .moduleTeaser__inner {
    --test: calc(33.3333% - calc(var(--4gap) / 3));
    grid-template-columns: repeat(auto-fit, minmax(5rem, var(--test)));
  }
}
.moduleTeaser__inner {
  display: grid;
  gap: var(--2gap);
}
.moduleTeaser__inner span {
  text-transform: uppercase;
  font-size: 0.8rem;
  text-decoration: none;
  display: block;
  padding: 1em 50px 1em 0;
  background: url(/theme/public/assets/img/arrow.png) no-repeat right 1.5em;
  background-size: 50px 8px;
}

.moduleTeaser__link {
  text-decoration: none;
}
.moduleTeaser__link:hover {
  text-decoration: none;
}
.moduleTeaser__link:hover img {
  opacity: 0.8;
}
.moduleTeaser__link:hover span {
  text-decoration: none;
}

.moduleTeaser__teaserImageLandscape {
  display: block;
}

.moduleTeaser__teaserImagePortrait {
  display: none;
}

@media screen and (min-width: 992px) {
  .moduleTeaser__teaserImageLandscape {
    display: none;
  }
  .moduleTeaser__teaserImagePortrait {
    display: block;
  }
}
.moduleTeaser__teaser {
  position: relative;
}

.moduleTeaser__teaserInner .btn {
  background: none transparent;
  color: #D7A24B;
  border-color: #D7A24B;
}
.moduleTeaser__teaserInner .btn:hover {
  text-decoration: none;
  color: #B8923F;
  border-color: #B8923F;
}

.moduleTeaser__teaserLink {
  display: block;
  text-align: center;
}
.moduleTeaser__teaserLink svg {
  width: 2rem;
}
.moduleTeaser__teaserLink svg polygon {
  fill: #00768E;
}

.moduleFullWidthImage {
  height: 60vh;
  width: 100%;
  position: relative;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
@media screen and (min-width: 1200px) {
  .moduleFullWidthImage {
    background-attachment: fixed;
  }
}

.zwischenbild-inner {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}

/**/
.header,
.swiper-container__wrapper,
.main,
.footer {
  width: 100%;
  margin: 0 auto;
}

/**/
/**/
.storefront {
  max-width: var(--contentMaxWidth);
  margin: 0 auto;
}

.storefront__tile,
.storefront__isotopeGridSizer {
  float: left;
  background: #d8d9da;
  width: 100%;
  margin-bottom: var(--gap);
  overflow: hidden;
}
.storefront__tile .image-ratio i:after,
.storefront__isotopeGridSizer .image-ratio i:after {
  display: none;
}
@media screen and (min-width: 600px) {
  .storefront__tile,
  .storefront__isotopeGridSizer {
    width: calc(50% - var(--gap));
  }
}

.storefront__isotopeGridSizer {
  background: none transparent !important;
}

.storefront__info {
  padding: calc(0.5 * var(--gap)) calc(0.5 * var(--gap));
  background: rgba(255, 255, 255, 0.7);
  opacity: 0.001;
  color: #030304;
  font-size: 0.8rem;
  position: absolute;
  left: -10000px;
  text-decoration: none;
  font-weight: 400;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.storefront__link:hover .storefront__info {
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  opacity: 1;
  transition: opacity 0.5s;
}

/**/
.arrowLeftIconCircle__background,
.arrowRightIconCircle__background {
  fill: #D7A24B;
}
a:hover .arrowLeftIconCircle__background,
a:hover .arrowRightIconCircle__background {
  fill: #B8923F;
}
.swiperText .arrowLeftIconCircle__background,
.swiperText .arrowRightIconCircle__background {
  fill: #000;
}
a:hover .swiperText .arrowLeftIconCircle__background,
a:hover .swiperText .arrowRightIconCircle__background {
  fill: #000;
}

.arrowLeftIconCircle__icon,
.arrowRightIconCircle__icon {
  fill: #fff;
}

.arrowLeftIcon,
.arrowRightIcon {
  fill: none;
  stroke: #4b4a4a;
}

/**/
.contentSlider__container h2 {
  position: absolute;
  z-index: 1;
  padding-top: 0;
  padding-bottom: var(--4gap);
}

.contentSlider {
  background: #d8d9da;
}
.contentSlider__slide {
  position: relative;
  aspect-ratio: auto !important;
  display: flex;
}
.contentSlider__slide img {
  opacity: 1 !important;
}
.contentSlider__slide .arrowRightIconCircle {
  margin-left: 1rem;
  width: 1.6rem;
}

.contentSlider__image {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.contentSlider__image:after {
  content: "";
  background: rgba(0, 0, 0, 0.8);
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contentSlider__image:after {
    width: 60%;
  }
}

.contentSlider__text {
  align-self: stretch;
  width: 27em;
  padding: var(--gap);
  z-index: 1;
  position: relative;
  justify-self: stretch;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .contentSlider__text {
    padding: var(--2gap) var(--gap) var(--5gap) var(--2gap);
  }
}

.contentSlider__link {
  color: #fff;
  background: transparent;
  border: 1px solid #fff;
}
.contentSlider__link:hover {
  color: #fff;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid #fff;
}

.sliderControls {
  display: flex;
  gap: var(--halfgap);
  z-index: 1;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .sliderControls {
    padding-left: var(--gap);
  }
}
.sliderControls button {
  background: none transparent;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  border: 1px solid #fff;
  border-radius: 50%;
}
.sliderControls button svg {
  width: 1.4rem;
  height: auto;
}
.sliderControls button svg path {
  fill: #fff;
}
@media screen and (min-width: 768px) {
  .sliderControls--headerInner {
    padding-left: 0;
  }
}

.sliderControls--content {
  position: absolute;
  right: 0;
  top: 0;
  padding-bottom: 2px;
}
@media screen and (min-width: 768px) {
  .sliderControls--content {
    right: auto;
    top: auto;
    bottom: var(--gap);
  }
}

/**/
.testimonialSlider .swiper-container {
  background: none transparent;
}
.testimonialSlider .swiper-slide {
  aspect-ratio: auto !important;
  display: flex;
  flex-direction: column;
}
.testimonialSlider .sliderControls {
  justify-content: center;
}
.testimonialSlider.module-- img {
  filter: invert(1);
}

.testimonialSlider__inner {
  max-width: var(--contentMaxWidth);
  width: 100%;
  margin: 0 auto;
}

.testimonialSlider__stars {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  padding-top: calc(2.5 * var(--gap));
}
.testimonialSlider__stars img {
  width: 2rem;
  height: auto;
}

.testimonialSlider__text {
  text-align: center;
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: var(--gap) 0 var(--2gap) 0;
}
.testimonialSlider__text blockquote {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 0;
}
.testimonialSlider__text blockquote p {
  font-size: 2rem;
  font-weight: 400;
}
.testimonialSlider__text blockquote footer {
  font-size: 1.2rem;
}

/**/
.extraVerticalSpace--1 {
  padding-top: var(--gap);
}

.extraVerticalSpace--2 {
  padding-top: var(--2gap);
}

.extraVerticalSpace--3 {
  padding-top: var(--3gap);
}

.extraVerticalSpace--4 {
  padding-top: var(--4gap);
}

/**/
.breadCrumbs {
  list-style: none;
  margin: 0;
  padding: 0 !important;
  display: flex;
  gap: 0.5rem;
  position: relative;
  z-index: 1;
  margin-bottom: calc(-1 * var(--gap));
}
.breadCrumbs span {
  padding-right: 0.25rem;
}
.breadCrumbs * {
  color: #D7A24B;
  text-decoration: none;
}
.breadCrumbs *:hover {
  color: #B8923F;
  text-decoration: none;
}

.gridContainer--breadCrumbs {
  padding: 0 !important;
}

/**/
.smallUppercaseNoMarginTop {
  font-size: 0.9rem;
  text-transform: uppercase;
  margin-top: calc(-1 * var(--gap));
}

.anchor {
  background: #00768E;
  color: #fff;
  text-align: center;
  font-weight: 400;
  padding: 1rem 0;
}

.module--fullWidthImageTextLink {
  padding-left: 0;
  padding-right: 0;
}
.module--fullWidthImageTextLink .gridContainer {
  padding-top: 0;
  padding-bottom: 0;
  gap: 0;
}
@media screen and (min-width: 768px) {
  .module--fullWidthImageTextLink .gridContainer {
    gap: var(--2gap);
  }
}
.module--fullWidthImageTextLink .gridItem {
  position: relative;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: flex-start;
}
.module--fullWidthImageTextLink .gridItem--1:after {
  content: "";
  display: block;
  padding-top: 67%;
}
.module--fullWidthImageTextLink .gridItem--2 {
  padding: var(--gap);
}
@media screen and (min-width: 768px) {
  .module--fullWidthImageTextLink .gridItem--2 {
    padding-right: var(--2gap);
    padding-top: var(--4gap);
    padding-bottom: var(--4gap);
  }
}

.fullWidthImageTextLink__image {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  background-size: cover;
}

.nav__content {
  position: relative;
}
.nav__content ul {
  list-style: none;
  margin: 0;
  background: #fff;
  padding: 0 1rem;
}
@media screen and (min-width: 1200px) {
  .nav__content ul {
    position: absolute;
    right: var(--2gap);
    bottom: -1rem;
    width: 15rem;
    z-index: 200;
  }
}
.nav__content li {
  margin: 0;
  text-transform: uppercase;
  font-size: 0.8rem;
  text-decoration: none;
  display: block;
  padding: 1em 50px 1em 0;
  background: url(/theme/public/assets/img/arrow.png) no-repeat right 1.5em;
  background-size: 50px 8px;
}
.nav__content li + li {
  border-top: 1px solid #00768E;
}
.nav__content a:hover {
  text-decoration: none;
}

.blog__title small {
  font-size: 1rem;
  font-family: "Open Sans", sans-serif;
}
.blog__title small b {
  font-weight: 700;
}

.blogListItem {
  padding-top: var(--2gap);
}
.blogListItem .blog__title {
  font-size: 2rem;
}
.blogListItem .blog__title small {
  font-size: 0.8rem;
}
.blogListItem + .blogListItem {
  padding-top: 0;
}
.blogListItem + .blogListItem .gridContainer:first-child {
  border-top: 1px solid #00768E;
}
.blogListItem:last-child {
  padding-bottom: var(--2gap);
}
.blogListItem a {
  text-decoration: none;
}
.blogListItem a:hover {
  text-decoration: none;
}

.blog__previewLink {
  font-weight: bold;
}

/**/
.image img {
  border-radius: var(--gap);
}

.btn__wrapper {
  display: flex;
  width: 100%;
  justify-content: flex-start;
}

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

.gallery__item {
  padding: 0;
}
.gallery__item img {
  border-radius: var(--gap);
}

.offscreen__toggleWrapper {
  cursor: pointer;
  position: relative;
  top: var(--gap);
}
.offscreen__toggleWrapper .offscreen__toggle {
  top: var(--gap);
  position: absolute;
  right: var(--2gap);
}
.offscreen__toggleWrapper .offscreen__toggle span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: #fff;
}
.offscreen__toggleWrapper .offscreen__toggle svg {
  width: 1.4rem;
}
.offscreen__toggleWrapper .offscreen__toggle svg path {
  fill: #00768E;
}
@media screen and (min-width: 992px) {
  .offscreen__toggleWrapper .offscreen__toggle {
    top: var(--2gap);
    right: var(--3gap);
  }
}

.totop {
  position: fixed;
  left: auto;
  top: auto;
  right: var(--2gap);
  bottom: 0;
  margin: 0;
  width: 3rem;
  height: 4rem;
  border-radius: 1.5rem 1.5rem 0 0;
  transition: opacity 0.5s;
  outline: none;
  display: flex;
  justify-content: center;
  align-items: center;
}
.totop {
  background: #00768E;
}
.totop.visible {
  opacity: 1;
}
.totop.hidden {
  opacity: 0;
}
.totop svg {
  width: 1.4rem;
}
.totop svg path {
  fill: #fff;
}

.gridContainer--100 {
  text-align: center;
  max-width: 1200px;
}
.gridContainer--100 ul {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.btn:after {
  content: "";
  display: inline-block;
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 10px 0 10px 15px;
  border-color: transparent transparent transparent #D7A24B;
  margin-left: 0.5em;
  position: relative;
  top: 0.1em;
}
.btn:hover:after {
  border-left-color: #fff;
}

.nav__text {
  text-align: center;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN3aXBlcl9iYXNlLnNjc3MiLCJmb250cy5zY3NzIiwidmFycy5zY3NzIiwiZ3JpZC5zY3NzIiwibWl4aW5zLnNjc3MiLCJmb3Jtcy5zY3NzIiwicGFnaW5hdGlvbi5zY3NzIiwiZG93bmxvYWRzLnNjc3MiLCJtb2R1bGUuc2NzcyIsImhlYWRlci5zY3NzIiwiZm9vdGVyLnNjc3MiLCJvZmZzY3JlZW4uc2NzcyIsInN3aXBlci5zY3NzIiwicGhvdG9zd2lwZS5zY3NzIiwid2NhZy5zY3NzIiwiYnJvd3NlcmJ1Z3Muc2NzcyIsImRldi5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUFDQTtFQUNBOzs7QUFFRjtFQUNFOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFDQTtBQUFBO0VBRUU7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUNBO0VBQ0U7RUFDQTs7O0FBRUY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFPRTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtFQUlFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUNBO0FBQUE7RUFFRTtFQUNBOzs7QUFFRjtBQUFBO0VBRUU7RUFDQTs7O0FBR0Y7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7RUFHRTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0VBQ0U7SUFDRTtJQUNBOzs7QUFHSjtFQUNFO0lBQ0U7SUFDQTs7O0FBR0o7QUFDQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7OztBQUVGO0VBQ0U7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBRUY7RUFDRTs7O0FBRUY7RUFDRTtFQUNBO0VBQ0E7OztBQUVGO0FBQUE7RUFFRTs7O0FBRUY7QUFBQTtBQUFBO0FBQUE7RUFJRTtFQUNBOzs7QUFFRjtBQUFBO0FBQUE7QUFBQTtF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RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUNBO0VBQ0k7RUFDQTs7QUFFSjtBQUNJO0VBQ0E7O0FBRUo7RUFDSTs7O0FBSVo7RUFDSTs7QUFDQTtFQUNJOzs7QUFHUjtBQUNBO0VBQ0k7OztBQUdBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUo7RUFDSTtFQUNBOztBQUNBO0VBQ0k7OztBQUtSO0VBQ0k7RUFDQTs7O0FBSUo7RUFDSTtFQUNBOzs7QUFJSjtFQUNJOzs7QUFHUjs7QUFBQTs7QUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjs7QUFBQTs7QUFBQTtBQUtBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFDQTtFQUNJO0VBQ0E7OztBQUdSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUVKO0VBQ0k7OztBQUVKO0FBQ0E7RUFDSTs7O0FBRUo7O0FBQUE7O0FBQUE7O0FBQUE7QUFPQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUFFSjtFQUNJO0VBQ0E7RUFDQTs7O0FBRUo7RUFDSTs7O0FBR0E7RUFDSTs7QUFDQTtFQUNJOztBQUVKO0VBQ0k7O0FBR1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVKO0FBQ0k7QUFBQTtBQUFBO0FBQUE7RUFJQTtFQUNBO0VBQ0E7RUFDQTs7QUFFSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR1I7RUFDSTtJQUNJ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QTs7O0FBSUo7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNJOzs7QUFJWjtFQUNJIiwic291cmNlc0NvbnRlbnQiOlsiLy8ga29waWUgZGVyIG9yaWdpbmFsZGF0ZWksIHN0eWxlcyBmw7xyIHBhZ2luYXRpb24sIGFycm93cyB1bmQgYnVsbGV0cyBlbnRmZXJudFxuXG4vKipcbiAqIFN3aXBlciA0LjMuM1xuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMTggVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogSnVuZSA1LCAyMDE4XG4gKi9cbi5zd2lwZXItY29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1uby1mbGV4Ym94IC5zd2lwZXItc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uc3dpcGVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuLnN3aXBlci1jb250YWluZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uc3dpcGVyLXNsaWRlIHtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMDtcbiAgLW1zLWZsZXgtbmVnYXRpdmU6IDA7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbn1cbi5zd2lwZXItaW52aXNpYmxlLWJsYW5rLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0LCAtd2Via2l0LXRyYW5zZm9ybTtcbn1cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTIwMHB4O1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci13cmFwcGVyLFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDEwO1xufVxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCByaWdodCB0b3AsIGxlZnQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChyaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKHJnYmEoMCwgMCwgMCwgMC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLyogSUUxMCBXaW5kb3dzIFBob25lIDggRml4ZXMgKi9cbi5zd2lwZXItY29udGFpbmVyLXdwOC1ob3Jpem9udGFsLFxuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXdwOC12ZXJ0aWNhbCxcbi5zd2lwZXItY29udGFpbmVyLXdwOC12ZXJ0aWNhbCA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuXG4vKiBTY3JvbGxiYXIgKi9cbi5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDElO1xuICBib3R0b206IDNweDtcbiAgei1pbmRleDogNTA7XG4gIGhlaWdodDogNXB4O1xuICB3aWR0aDogOTglO1xufVxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAxJTtcbiAgei1pbmRleDogNTA7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogOTglO1xufVxuLnN3aXBlci1zY3JvbGxiYXItZHJhZyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1jdXJzb3ItZHJhZyB7XG4gIGN1cnNvcjogbW92ZTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAtby1vYmplY3QtZml0OiBjb250YWluO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7XG59XG4vKiBQcmVsb2FkZXIgKi9cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgbWFyZ2luLXRvcDogLTIxcHg7XG4gIHotaW5kZXg6IDEwO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlO1xuICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBzdGVwcygxMiwgZW5kKSBpbmZpbml0ZTtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyMzZjNmM2YyclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIwdmlld0JveCUzRCcwJTIwMCUyMDEyMCUyMDEyMCclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIweG1sbnMlM0F4bGluayUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4bGluayclM0UlM0NkZWZzJTNFJTNDbGluZSUyMGlkJTNEJ2wnJTIweDElM0QnNjAnJTIweDIlM0QnNjAnJTIweTElM0QnNyclMjB5MiUzRCcyNyclMjBzdHJva2UlM0QnJTIzZmZmJyUyMHN0cm9rZS13aWR0aCUzRCcxMSclMjBzdHJva2UtbGluZWNhcCUzRCdyb3VuZCclMkYlM0UlM0MlMkZkZWZzJTNFJTNDZyUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDYwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg5MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTIwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxNTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4zNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDE4MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjQ2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjEwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNTYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNDAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy42NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDI3MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjc1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzAwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuODUnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgzMzAlMjA2MCUyQzYwKSclMkYlM0UlM0MlMkZnJTNFJTNDJTJGc3ZnJTNFXCIpO1xufVxuQC13ZWJraXQta2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKiBhMTF5ICovXG4uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1uZXh0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IDAuNjtcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoNTBweCk7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbiAgei1pbmRleDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xufVxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jb3ZlcmZsb3cgLnN3aXBlci13cmFwcGVyIHtcbiAgLyogV2luZG93cyA4IElFIDEwIGZpeCAqL1xuICAtbXMtcGVyc3BlY3RpdmU6IDEyMDBweDtcbn1cbiIsIi8qIG9wZW4tc2Fucy0zMDAgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgLyogQ2hlY2sgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0Bmb250LWZhY2UvZm9udC1kaXNwbGF5IGZvciBvdGhlciBvcHRpb25zLiAqL1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgc3JjOiB1cmwoJy90aGVtZS9wdWJsaWMvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy12NDQtbGF0aW4tMzAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpOyAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG4vKiBvcGVuLXNhbnMtMzAwaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IHN3YXA7IC8qIENoZWNrIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9AZm9udC1mYWNlL2ZvbnQtZGlzcGxheSBmb3Igb3RoZXIgb3B0aW9ucy4gKi9cbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogdXJsKCcvdGhlbWUvcHVibGljL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMtdjQ0LWxhdGluLTMwMGl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKTsgLyogQ2hyb21lIDM2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KywgU2FmYXJpIDEyKywgaU9TIDEwKyAqL1xufVxuLyogb3Blbi1zYW5zLXJlZ3VsYXIgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgLyogQ2hlY2sgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0Bmb250LWZhY2UvZm9udC1kaXNwbGF5IGZvciBvdGhlciBvcHRpb25zLiAqL1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiB1cmwoJy90aGVtZS9wdWJsaWMvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy12NDQtbGF0aW4tcmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKTsgLyogQ2hyb21lIDM2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KywgU2FmYXJpIDEyKywgaU9TIDEwKyAqL1xufVxuLyogb3Blbi1zYW5zLWl0YWxpYyAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyAvKiBDaGVjayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvQGZvbnQtZmFjZS9mb250LWRpc3BsYXkgZm9yIG90aGVyIG9wdGlvbnMuICovXG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybCgnL3RoZW1lL3B1YmxpYy9hc3NldHMvZm9udHMvb3Blbi1zYW5zLXY0NC1sYXRpbi1pdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7IC8qIENocm9tZSAzNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSssIFNhZmFyaSAxMissIGlPUyAxMCsgKi9cbn1cbi8qIG9wZW4tc2Fucy01MDAgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgLyogQ2hlY2sgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0Bmb250LWZhY2UvZm9udC1kaXNwbGF5IGZvciBvdGhlciBvcHRpb25zLiAqL1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgc3JjOiB1cmwoJy90aGVtZS9wdWJsaWMvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy12NDQtbGF0aW4tNTAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpOyAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG4vKiBvcGVuLXNhbnMtNTAwaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IHN3YXA7IC8qIENoZWNrIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9AZm9udC1mYWNlL2ZvbnQtZGlzcGxheSBmb3Igb3RoZXIgb3B0aW9ucy4gKi9cbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHNyYzogdXJsKCcvdGhlbWUvcHVibGljL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMtdjQ0LWxhdGluLTUwMGl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKTsgLyogQ2hyb21lIDM2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KywgU2FmYXJpIDEyKywgaU9TIDEwKyAqL1xufVxuLyogb3Blbi1zYW5zLTYwMCAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyAvKiBDaGVjayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvQGZvbnQtZmFjZS9mb250LWRpc3BsYXkgZm9yIG90aGVyIG9wdGlvbnMuICovXG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBzcmM6IHVybCgnL3RoZW1lL3B1YmxpYy9hc3NldHMvZm9udHMvb3Blbi1zYW5zLXY0NC1sYXRpbi02MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7IC8qIENocm9tZSAzNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSssIFNhZmFyaSAxMissIGlPUyAxMCsgKi9cbn1cbi8qIG9wZW4tc2Fucy02MDBpdGFsaWMgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgLyogQ2hlY2sgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0Bmb250LWZhY2UvZm9udC1kaXNwbGF5IGZvciBvdGhlciBvcHRpb25zLiAqL1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgc3JjOiB1cmwoJy90aGVtZS9wdWJsaWMvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy12NDQtbGF0aW4tNjAwaXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpOyAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG4vKiBvcGVuLXNhbnMtNzAwIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IHN3YXA7IC8qIENoZWNrIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9AZm9udC1mYWNlL2ZvbnQtZGlzcGxheSBmb3Igb3RoZXIgb3B0aW9ucy4gKi9cbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogdXJsKCcvdGhlbWUvcHVibGljL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMtdjQ0LWxhdGluLTcwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTsgLyogQ2hyb21lIDM2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KywgU2FmYXJpIDEyKywgaU9TIDEwKyAqL1xufVxuLyogb3Blbi1zYW5zLTcwMGl0YWxpYyAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyAvKiBDaGVjayBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9DU1MvQGZvbnQtZmFjZS9mb250LWRpc3BsYXkgZm9yIG90aGVyIG9wdGlvbnMuICovXG4gIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IHVybCgnL3RoZW1lL3B1YmxpYy9hc3NldHMvZm9udHMvb3Blbi1zYW5zLXY0NC1sYXRpbi03MDBpdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7IC8qIENocm9tZSAzNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSssIFNhZmFyaSAxMissIGlPUyAxMCsgKi9cbn1cbi8qIG9wZW4tc2Fucy04MDAgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgLyogQ2hlY2sgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL0Bmb250LWZhY2UvZm9udC1kaXNwbGF5IGZvciBvdGhlciBvcHRpb25zLiAqL1xuICBmb250LWZhbWlseTogJ09wZW4gU2Fucyc7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgc3JjOiB1cmwoJy90aGVtZS9wdWJsaWMvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy12NDQtbGF0aW4tODAwLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpOyAvKiBDaHJvbWUgMzYrLCBPcGVyYSAyMyssIEZpcmVmb3ggMzkrLCBTYWZhcmkgMTIrLCBpT1MgMTArICovXG59XG4vKiBvcGVuLXNhbnMtODAwaXRhbGljIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWRpc3BsYXk6IHN3YXA7IC8qIENoZWNrIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9AZm9udC1mYWNlL2ZvbnQtZGlzcGxheSBmb3Igb3RoZXIgb3B0aW9ucy4gKi9cbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIHNyYzogdXJsKCcvdGhlbWUvcHVibGljL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMtdjQ0LWxhdGluLTgwMGl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKTsgLyogQ2hyb21lIDM2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KywgU2FmYXJpIDEyKywgaU9TIDEwKyAqL1xufSIsIiRkYXJrLWdyZXk6ICMwMzAzMDQ7XG4kbWVkaXVtLWdyZXk6ICM2NjY7XG4kbGlnaHQtZ3JleTogI2Q4ZDlkYTtcbiRmb3JtQm9yZGVyQ29sb3I6ICNlZGVlZWQ7XG5cbjpyb290IHtcbiAgICAtLWdhcDogMjBweDtcbiAgICAtLTJnYXA6IGNhbGMoMiAqIHZhcigtLWdhcCkpO1xuICAgIC0tM2dhcDogY2FsYygzICogdmFyKC0tZ2FwKSk7XG4gICAgLS00Z2FwOiBjYWxjKDQgKiB2YXIoLS1nYXApKTtcbiAgICAtLTVnYXA6IGNhbGMoNSAqIHZhcigtLWdhcCkpO1xuICAgIC0taGFsZmdhcDogY2FsYyh2YXIoLS1nYXApIC8gMik7XG4gICAgLS1xdWFydGVyZ2FwOiBjYWxjKHZhcigtLWdhcCkgLyA0KTtcbiAgICAtLWNvbnRlbnRNYXhXaWR0aDogMTYwMHB4O1xuICAgIC0tY29udGVudE1heFdpZHRoV2lkZTogMjAwMHB4O1xufVxuXG4vLyBHb2xkLUZhcmJzY2hlbWEgKFByYXhpcyBSYXVtd2VyaylcbiRnb2xkOiAjRDdBMjRCO1xuJGdvbGQtdHJhbnNwYXJlbnQ6IHJnYmEoMjEyLCAxNjgsIDc1LCAuOSk7XG4kZ29sZC1kYXJrOiAjQjg5MjNGO1xuJGdvbGQtbGlnaHQ6ICNFOEM5N0E7XG4kYmx1ZTogIzAwNzY4RTtcblxuLy8gSGludGVyZ3J1bmRmYXJiZW5cbiR3aGl0ZS1zbW9rZTogI2Y1ZjVmNDtcbiRjcmVhbS13aGl0ZTogI0ZERkJGNztcbiRwZWFybC1idXNoOiAjZDhkMmM0O1xuJGJyb3duOiAjOTE2ZjRiO1xuJGxpZ2h0LWJyb3duOiAjZTZlY2ViO1xuJHRleHQtZGFyazogIzJDMkMyQztcblxuJGRlZmF1bHQtZm9udC1jb2xvcjogJGRhcmstZ3JleTtcbiRwcmltYXJ5LWNvbG9yLTE6ICRibHVlOyAvLyBoZWFkbGluZXMsIGJvcmRlcnMsIGV0Y1xuJGxpbmstY29sb3I6ICRnb2xkO1xuJGxpbmstaG92ZXItY29sb3I6ICRnb2xkLWRhcms7XG4kYm9yZGVyLWNvbG9yOiAkbWVkaXVtLWdyZXk7XG5cbi8vIFR5cG9ncmFmaWUgLSBPcGVuIFNhbnMgKFNhbnMtU2VyaWYpXG4kZGVmYXVsdC1mb250LWZhbWlseTogJ09wZW4gU2FucycsIHNhbnMtc2VyaWY7XG4kaHRtbEZvbnQ6IG5vcm1hbCBub3JtYWwgNDAwIDE2cHgvMS42ICRkZWZhdWx0LWZvbnQtZmFtaWx5O1xuJGgxRm9udDogbm9ybWFsIG5vcm1hbCAzMDAgMS44cmVtLzEuMiAkZGVmYXVsdC1mb250LWZhbWlseTtcbiRoMkZvbnQ6IG5vcm1hbCBub3JtYWwgMzAwIDEuOHJlbS8xLjIgJGRlZmF1bHQtZm9udC1mYW1pbHk7XG4kaDNGb250OiBub3JtYWwgbm9ybWFsIDQwMCAxLjRyZW0vMS4zICRkZWZhdWx0LWZvbnQtZmFtaWx5O1xuJGg0Rm9udDogbm9ybWFsIG5vcm1hbCA1MDAgMXJlbS8xLjMgJGRlZmF1bHQtZm9udC1mYW1pbHk7XG4kY2FwdGlvbkZvbnQ6IG5vcm1hbCBub3JtYWwgNDAwIC44NXJlbS8xLjQgJGRlZmF1bHQtZm9udC1mYW1pbHk7XG4kb2Zmc2NyZWVuTmF2Rm9udDogbm9ybWFsIG5vcm1hbCA2MDAgMS40cmVtLzEuMSAkZGVmYXVsdC1mb250LWZhbWlseTtcblxuJGJyZWFrcG9pbnRzOiAoXG4gICAgczogNzY4cHgsXG4gICAgbTogOTkycHgsXG4gICAgbDogMTIwMHB4LFxuICAgIHhsOiAxNjAwcHhcbik7XG5cbi8vIGluZm8sIGhpbndlaXNlLCB3YXJudW5nZW4sIGZlaGxlclxuJGFsZXJ0LXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcjogI2RmZjBkODtcbiRhbGVydC1zdWNjZXNzLWJvcmRlci1jb2xvcjogI2QwZTljNjtcbiRhbGVydC1zdWNjZXNzLWNvbG9yOiAjM2M3NjNkO1xuJGFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXk7XG4kYWxlcnQtaW5mby1ib3JkZXItY29sb3I6ICRsaWdodC1ncmV5O1xuJGFsZXJ0LWluZm8tY29sb3I6ICRkZWZhdWx0LWZvbnQtY29sb3I7XG4kYWxlcnQtd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yOiAjZmNmOGUzO1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyLWNvbG9yOiAjZmFmMmNjO1xuJGFsZXJ0LXdhcm5pbmctY29sb3I6ICM4YTZkM2I7XG4kYWxlcnQtZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6ICNmMmRlZGU7XG4kYWxlcnQtZGFuZ2VyLWJvcmRlci1jb2xvcjogI2ViY2NjYztcbiRhbGVydC1kYW5nZXItY29sb3I6ICNhOTQ0NDI7IiwiLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzQxOTU5NDU3XG46cm9vdCB7XG4gICAgLS1ncmlkQ29udGFpbmVyUGFkZGluZ1RvcDogMTtcbiAgICAtLWdyaWRDb250YWluZXJQYWRkaW5nQm90dG9tOiAxO1xufVxuLmdyaWRDb250YWluZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiB2YXIoLS0yZ2FwKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vcGFkZGluZy10b3A6IGNhbGModmFyKC0tZ2FwKSArIHZhcigtLWdhcCkgKiB2YXIoLS1ncmlkQ29udGFpbmVyUGFkZGluZ1RvcCkpO1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLWdhcCkgKiB2YXIoLS1ncmlkQ29udGFpbmVyUGFkZGluZ1RvcCkpO1xuICAgIC8vcGFkZGluZy1ib3R0b206IGNhbGModmFyKC0tZ2FwKSArIHZhcigtLWdhcCkgKiB2YXIoLS1ncmlkQ29udGFpbmVyUGFkZGluZ0JvdHRvbSkpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKHZhcigtLWdhcCkgKiB2YXIoLS1ncmlkQ29udGFpbmVyUGFkZGluZ0JvdHRvbSkpO1xuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgLmdyaWRJdGVtLS0xIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICB9XG4gICAgICAgIC5ncmlkSXRlbS0tMiB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5ncmlkQ29udGFpbmVyLS01MF81MCB7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbn1cbi5ncmlkQ29udGFpbmVyLS0yNV83NSB7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI1ZnIgNzVmcjtcbiAgICB9XG59XG4uZ3JpZENvbnRhaW5lci0tNzVfMjUge1xuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA3NWZyIDI1ZnI7XG4gICAgfVxufVxuLmdyaWRDb250YWluZXItLTMzXzY2IHtcbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogY2FsYygzMy4zMzMzJSAtIGNhbGMoY2FsYyg0IC8gMykgKiB2YXIoLS1nYXApKSkgMWZyO1xuICAgIH1cbn1cbi5ncmlkQ29udGFpbmVyLS02Nl8zMyB7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciBjYWxjKDMzLjMzMzMlIC0gY2FsYyhjYWxjKDQgLyAzKSAqIHZhcigtLWdhcCkpKTtcbiAgICB9XG59XG4uZ3JpZENvbnRhaW5lci0tMzNfMzNfMzMge1xuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgLmdyaWRJdGVtLS0zIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMzMuMzMzM2ZyKTtcbiAgICAgICAgLmdyaWRJdGVtLS0zIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuY29sMWVtcHR5IHtcbiAgICAgICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgICAgIC5ncmlkSXRlbS0tMiB7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZ3JpZEl0ZW0tLTMge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDMzLjMzMzNmcik7XG4gICAgICAgICAgICAuZ3JpZEl0ZW0tLTIge1xuICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmdyaWRJdGVtLS0zIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5ncmlkQ29udGFpbmVyLS01MF8yNV8yNSB7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICAuZ3JpZEl0ZW0tLTEge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICAgIH1cbiAgICAgICAgLmdyaWRJdGVtLS0yIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgIH1cbiAgICAgICAgLmdyaWRJdGVtLS0zIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAyO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IDI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbXEobSkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xuICAgICAgICAuZ3JpZEl0ZW0tLTIge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDM7XG4gICAgICAgICAgICBncmlkLXJvdzogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAuZ3JpZEl0ZW0tLTMge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDQ7XG4gICAgICAgICAgICBncmlkLXJvdzogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cbi5ncmlkQ29udGFpbmVyLS0yNV8yNV81MCB7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgICAgICAuZ3JpZEl0ZW0tLTMge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyBzcGFuIDI7XG4gICAgICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XG4gICAgICAgIC5ncmlkSXRlbS0tMyB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMyAvIHNwYW4gMjtcbiAgICAgICAgICAgIGdyaWQtcm93OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuLmdyaWRDb250YWluZXItLTE1XzcwXzE1IHtcbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTVmciA3MGZyIDE1ZnI7XG4gICAgfVxufVxuLmdyaWRDb250YWluZXItLTI1XzI1XzI1XzI1IHtcbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gICAgICAgIC5ncmlkSXRlbS0tMyB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICB9XG4gICAgICAgIC5ncmlkSXRlbS0tNCB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMjtcbiAgICAgICAgICAgIGdyaWQtcm93OiAyO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICAgICAgLmdyaWRJdGVtLS0zIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAzO1xuICAgICAgICAgICAgZ3JpZC1yb3c6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgLmdyaWRJdGVtLS00IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiA0O1xuICAgICAgICAgICAgZ3JpZC1yb3c6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4uZ3JpZENvbnRhaW5lci0tMTVfMzVfMzVfMTUge1xuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxNWZyIDM1ZnIgMzVmciAxNWZyO1xuICAgIH1cbn1cbi5ncmlkQ29udGFpbmVyLS13aWRlIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aFdpZGUpO1xufVxuLmdyaWRDb250YWluZXItLXZDZW50ZXIgLmdyaWRJdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uZ3JpZEl0ZW0ge1xuICAgICYgPiA6Zmlyc3QtY2hpbGR7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAmID4gOmxhc3QtY2hpbGQ6bm90KC5idG4pIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgb3JkZXI6IGluaXRpYWwgIWltcG9ydGFudDtcbiAgICB9XG59XG4uY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoMiAqIHZhcigtLWdhcCkpOyAvLyBrb3JyZXNwb25kaWVydCBtaXQgZGVtIHBhZGRpbmctYm90dG9tIGRlciBoMSBhYiBzXG4gICAgfVxufSIsIkBtaXhpbiBiYXNlLW1hcmdpbnMoJGJsb2NrLW1hcmdpbikge1xuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luOiAzLjUqJGJsb2NrLW1hcmdpbiAwIDIqJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICAuYXJ0aWNsZWRhdGUge1xuICAgICAgICBtYXJnaW46IC0yKiRibG9jay1tYXJnaW4gMCAyKiRibG9jay1tYXJnaW4gMDtcbiAgICB9XG4gICAgLnJvdy5tdC1oMSxcbiAgICAuY29sLm10LWgxIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMi41KiRibG9jay1tYXJnaW47XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAyLjUqJGJsb2NrLW1hcmdpbiAwICRibG9jay1tYXJnaW4gMDtcbiAgICB9XG4gICAgLnJvdy5tdC1oMixcbiAgICAuY29sLm10LWgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41KiRibG9jay1tYXJnaW47XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luOiAxLjUqJGJsb2NrLW1hcmdpbiAwICRibG9jay1tYXJnaW4gMDtcbiAgICB9XG4gICAgLnJvdy5tdC1oMyxcbiAgICAuY29sLm10LWgzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41KiRibG9jay1tYXJnaW47XG4gICAgfVxuICAgIGg0IHtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICAucm93Lm10LWg0LFxuICAgIC5jb2wubXQtaDQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBoMSArIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLSRibG9jay1tYXJnaW47XG4gICAgfVxuICAgIC5yb3cubWItaDEgKyAucm93Lm10LWgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgdWwsXG4gICAgb2wsXG4gICAgdGFibGUsXG4gICAgcCxcbiAgICBocixcbiAgICBmaWVsZHNldCxcbiAgICBibG9ja3F1b3RlLFxuICAgIC5mb3JtLWdyb3VwLFxuICAgIC55Zm9ybS1lbGVtZW50LFxuICAgIC5odG1sIG9iamVjdCxcbiAgICAuaHRtbCBpZnJhbWUsXG4gICAgLnJlc3BvbnNpdmUtaWZyYW1lIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkYmxvY2stbWFyZ2luO1xuICAgIH1cbiAgICBociB7XG4gICAgICAgIG1hcmdpbjogJGJsb2NrLW1hcmdpbiAwIDIqJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC4yNSokYmxvY2stbWFyZ2luO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgIG1hcmdpbjogMiokYmxvY2stbWFyZ2luIDAgJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICAucm93Lm10LWgxOmZpcnN0LWNoaWxkLFxuICAgIC5yb3cubXQtaDI6Zmlyc3QtY2hpbGQsXG4gICAgLnJvdy5tdC1oMzpmaXJzdC1jaGlsZCxcbiAgICAucm93Lm10LWg0OmZpcnN0LWNoaWxkLFxuICAgIC5jb2wubXQtaDE6Zmlyc3QtY2hpbGQsXG4gICAgLmNvbC5tdC1oMjpmaXJzdC1jaGlsZCxcbiAgICAuY29sLm10LWgzOmZpcnN0LWNoaWxkLFxuICAgIC5jb2wubXQtaDQ6Zmlyc3QtY2hpbGQsXG4gICAgLmNvbCA+IGgxOmZpcnN0LWNoaWxkLFxuICAgIC5jb2wgPiBoMTpmaXJzdC1jaGlsZCxcbiAgICAuY29sID4gaDI6Zmlyc3QtY2hpbGQsXG4gICAgLmNvbCA+IGgzOmZpcnN0LWNoaWxkLFxuICAgIC5jb2wgPiBoNDpmaXJzdC1jaGlsZCxcbiAgICAuaW1hZ2UgKyBoMSxcbiAgICAuaW1hZ2UgKyBoMixcbiAgICAuaW1hZ2UgKyBoMyxcbiAgICAuaW1hZ2UgKyBoNCxcbiAgICAuYXJ0aWNsZWxpc3QtdGlsZS10ZXh0IGgyLFxuICAgIC5yb3c6Zmlyc3QtY2hpbGQgLmNvbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuQG1peGluIG1hcmdpbnMoJGJsb2NrLW1hcmdpbikge1xuICAgIGgxIHtcbiAgICAgICAgbWFyZ2luOiA0LjUqJGJsb2NrLW1hcmdpbiAwIDIuNSokYmxvY2stbWFyZ2luIDA7XG4gICAgfVxuICAgIC5hcnRpY2xlZGF0ZSB7XG4gICAgICAgIG1hcmdpbjogLTEuNSokYmxvY2stbWFyZ2luIDAgMiokYmxvY2stbWFyZ2luIDA7XG4gICAgfVxuICAgIC5yb3cubXQtaDEge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjUqJGJsb2NrLW1hcmdpbjtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBtYXJnaW46IDIuNSokYmxvY2stbWFyZ2luIDAgJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICAucm93Lm10LWgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41KiRibG9jay1tYXJnaW47XG4gICAgfVxuICAgIGgzIC5mb290ZXIgdWwge1xuICAgICAgICBtYXJnaW46IDIqJGJsb2NrLW1hcmdpbiAwICRibG9jay1tYXJnaW4gMDtcbiAgICB9XG4gICAgLnJvdy5tdC1oMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEqJGJsb2NrLW1hcmdpbjtcbiAgICB9XG4gICAgaDQge1xuICAgICAgICBtYXJnaW46IDAgMCAkYmxvY2stbWFyZ2luIDA7XG4gICAgfVxuICAgIC5yb3cubXQtaDQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBoMSArIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLSRibG9jay1tYXJnaW47XG4gICAgfVxuICAgIC5yb3cubWItaDEgKyAucm93Lm10LWgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgdWwsXG4gICAgb2wsXG4gICAgdGFibGUsXG4gICAgcCxcbiAgICBocixcbiAgICBmaWVsZHNldCxcbiAgICBibG9ja3F1b3RlLFxuICAgIC5mb3JtLWdyb3VwLFxuICAgIC55Zm9ybS1lbGVtZW50LFxuICAgIC5odG1sIG9iamVjdCxcbiAgICAuaHRtbCBpZnJhbWUsXG4gICAgLnJlc3BvbnNpdmUtaWZyYW1lIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkYmxvY2stbWFyZ2luO1xuICAgIH1cbiAgICBociB7XG4gICAgICAgIG1hcmdpbjogJGJsb2NrLW1hcmdpbiAwIDIqJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC4yNSokYmxvY2stbWFyZ2luO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgIG1hcmdpbjogMiokYmxvY2stbWFyZ2luIDAgJGJsb2NrLW1hcmdpbiAwO1xuICAgIH1cbiAgICAvLyBmb3JjZSBibG9jayBtYXJnaW5cbiAgICAuY29sIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6ICRibG9jay1tYXJnaW47XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnJvdy5tdC1oMTpmaXJzdC1jaGlsZCxcbiAgICAucm93Lm10LWgyOmZpcnN0LWNoaWxkLFxuICAgIC5yb3cubXQtaDM6Zmlyc3QtY2hpbGQsXG4gICAgLnJvdy5tdC1oNDpmaXJzdC1jaGlsZCxcbiAgICAuY29sLm10LWgxLFxuICAgIC5jb2wubXQtaDIsXG4gICAgLmNvbC5tdC1oMyxcbiAgICAuY29sLm10LWg0LFxuICAgIC5jb2wgPiBoMTpmaXJzdC1jaGlsZCxcbiAgICAuY29sID4gaDI6Zmlyc3QtY2hpbGQsXG4gICAgLmNvbCA+IGgzOmZpcnN0LWNoaWxkLFxuICAgIC5jb2wgPiBoNDpmaXJzdC1jaGlsZCxcbiAgICAuaW1hZ2UgKyBoMSxcbiAgICAuaW1hZ2UgKyBoMixcbiAgICAuaW1hZ2UgKyBoMyxcbiAgICAuaW1hZ2UgKyBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIC5mb3VyLWNvbC13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG59XG5AbWl4aW4gYmFzZS1ncmlkKCRoYWxmLWd1dHRlcikge1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGhhbGYtZ3V0dGVyO1xuICAgIH1cbiAgICAucm93LWlubmVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kaGFsZi1ndXR0ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRoYWxmLWd1dHRlcjtcbiAgICB9XG4gICAgLmNvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGhhbGYtZ3V0dGVyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaGFsZi1ndXR0ZXI7XG4gICAgfVxuICAgIC5yb3csXG4gICAgLnJvdy1pbm5lciB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cbiAgICAvKlxuICAgIC5pbWFnZS1wb3NpdGlvbi1sZWZ0LFxuICAgIC5pbWFnZS1wb3NpdGlvbi1yaWdodCB7XG4gICAgICAgICYgKyBoMSxcbiAgICAgICAgJiArIGgyLFxuICAgICAgICAmICsgaDMsXG4gICAgICAgICYgKyBoNCxcbiAgICAgICAgJiArIGg1LFxuICAgICAgICAmICsgaDYge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAqL1xuICAgIC5pbWFnZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW1hZ2VfX2NhcHRpb24ge1xuICAgICAgICAqIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucmVzcG9uc2l2ZS1pZnJhbWUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlLXBvc2l0aW9uLWxlZnQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAkaGFsZi1ndXR0ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGhhbGYtZ3V0dGVyO1xuICAgICAgICAmLmltYWdlLXdpZHRoLTEwMCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pbWFnZS1wb3NpdGlvbi1yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgLy9wYWRkaW5nLWxlZnQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgJi5pbWFnZS13aWR0aC0xMDAge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlLXdpZHRoLTI1LFxuICAgIC5pbWFnZS13aWR0aC0zMyxcbiAgICAuaW1hZ2Utd2lkdGgtNTAge1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgIH1cbiAgICAuaW1hZ2Utd2lkdGgtNjYsXG4gICAgLmltYWdlLXdpZHRoLTc1LFxuICAgIC5pbWFnZS13aWR0aC0xMDAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5AbWl4aW4gaW1hZ2UtZ3JpZCgkaGFsZi1ndXR0ZXIpIHtcbiAgICAuaW1hZ2UtcG9zaXRpb24tbGVmdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkaGFsZi1ndXR0ZXI7XG4gICAgICAgICYuaW1hZ2Utd2lkdGgtMTAwIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlLXBvc2l0aW9uLXJpZ2h0IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAvL3BhZGRpbmctbGVmdDogJGhhbGYtZ3V0dGVyO1xuICAgICAgICBtYXJnaW4tbGVmdDogJGhhbGYtZ3V0dGVyO1xuICAgICAgICAmLmltYWdlLXdpZHRoLTEwMCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW1hZ2Utd2lkdGgtMjUsXG4gICAgLmltYWdlLXdpZHRoLTMzLFxuICAgIC5pbWFnZS13aWR0aC01MCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICAgIC5pbWFnZS13aWR0aC02NixcbiAgICAuaW1hZ2Utd2lkdGgtNzUsXG4gICAgLmltYWdlLXdpZHRoLTEwMCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbkBtaXhpbiB0ZWFzZXItdGlsZXMoJGhhbGYtZ3V0dGVyLCAkY291bnQpIHtcbiAgICAkY291bnQycGVyY2VudDogKFxuICAgICAgICAxOiAxMDAlLFxuICAgICAgICAyOiA1MCUsXG4gICAgICAgIDM6IDMzLjMzMzMlLFxuICAgICAgICA0OiAyNSUsXG4gICAgICAgIDU6IDIwJSxcbiAgICAgICAgNjogMTYuNjY2NiUsXG4gICAgICAgIDc6IDE0LjI4NTYlLFxuICAgICAgICA4OiAxMi41JVxuICAgICk7XG4gICAgLnRlYXNlciB7XG4gICAgICAgIHdpZHRoOiBtYXBfZ2V0KCRjb3VudDJwZXJjZW50LCAkY291bnQpO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkaGFsZi1ndXR0ZXI7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgbWluLWhlaWdodDogMXB4O1xuICAgIH1cbn1cbkBtaXhpbiBncmlkKCRoYWxmLWd1dHRlcikge1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogJGhhbGYtZ3V0dGVyO1xuICAgIH1cbiAgICAucm93LWlubmVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kaGFsZi1ndXR0ZXI7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRoYWxmLWd1dHRlcjtcbiAgICB9XG4gICAgLmNvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGhhbGYtZ3V0dGVyO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaGFsZi1ndXR0ZXI7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgfVxuICAgIC5jb2wtd2lkdGgtMTAwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5jb2wtd2lkdGgtNzUge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgIH1cbiAgICAuY29sLXdpZHRoLTY2IHtcbiAgICAgICAgd2lkdGg6IDY2LjY2NjYlO1xuICAgIH1cbiAgICAuY29sLXdpZHRoLTUwIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgLmNvbC13aWR0aC0zMyB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzJTtcbiAgICB9XG4gICAgLmNvbC13aWR0aC0yNSB7XG4gICAgICAgIHdpZHRoOiAyNSU7XG4gICAgfVxuICAgIC5pbWFnZS1wb3NpdGlvbi1sZWZ0IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIC8vcGFkZGluZy1yaWdodDogJGhhbGYtZ3V0dGVyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDIqJGhhbGYtZ3V0dGVyO1xuICAgICAgICAmLmltYWdlLXdpZHRoLTEwMCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pbWFnZS1wb3NpdGlvbi1yaWdodCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgLy9wYWRkaW5nLWxlZnQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIqJGhhbGYtZ3V0dGVyO1xuICAgICAgICAmLmltYWdlLXdpZHRoLTEwMCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW1hZ2Utd2lkdGgtMjUge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgIH1cbiAgICAuaW1hZ2Utd2lkdGgtMzMge1xuICAgICAgICB3aWR0aDogMzMuMzMzMyU7XG4gICAgfVxuICAgIC5pbWFnZS13aWR0aC01MCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICAgIC5pbWFnZS13aWR0aC02NiB7XG4gICAgICAgIHdpZHRoOiA2Ni42NjY2JTtcbiAgICB9XG4gICAgLmltYWdlLXdpZHRoLTc1IHtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICB9XG4gICAgLmltYWdlLXdpZHRoLTEwMCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuYXJ0aWNsZWxpc3QtdGlsZSB7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMiokaGFsZi1ndXR0ZXI7XG4gICAgfVxufVxuQG1peGluIGJhc2UtZ2FsbGVyeSgkaGFsZi1ndXR0ZXIsICRibG9jay1tYXJnaW4pIHtcbiAgICAuZ2FsbGVyeSB7XG4gICAgICAgIC8vbWFyZ2luOiAwIC0oMSokaGFsZi1ndXR0ZXIgKyAxKSAkYmxvY2stbWFyZ2luIC0oMSokaGFsZi1ndXR0ZXIgKyAxKTtcbiAgICAgICAgbWFyZ2luOiAwIC0xcHggJGJsb2NrLW1hcmdpbiAtMXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5AbWl4aW4gZ2FsbGVyeSgkaGFsZi1ndXR0ZXIsICRibG9jay1tYXJnaW4pIHtcbiAgICAuZ2FsbGVyeSB7XG4gICAgICAgIC8vbWFyZ2luOiAwIC0oMiokaGFsZi1ndXR0ZXIgKyAxKSAkYmxvY2stbWFyZ2luIC0oMiokaGFsZi1ndXR0ZXIgKyAxKTtcbiAgICAgICAgbWFyZ2luOiAwIC0xcHggJGJsb2NrLW1hcmdpbiAtMXB4O1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgcGFkZGluZzogMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLy5jb2wtd2lkdGgtMTAwLFxuICAgIC5jb2wtd2lkdGgtNzUge1xuICAgICAgICAuZ2FsbGVyeSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgLTFweCAkYmxvY2stbWFyZ2luIC0xcHg7XG4gICAgICAgICAgICBkaXYge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbC13aWR0aC02NixcbiAgICAuY29sLXdpZHRoLTUwIHtcbiAgICAgICAgLmdhbGxlcnkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xcHggJGJsb2NrLW1hcmdpbiAtMXB4O1xuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5jb2wtd2lkdGgtMzMsXG4gICAgLmNvbC13aWR0aC0yNSB7XG4gICAgICAgIC5nYWxsZXJ5IHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMXB4ICRibG9jay1tYXJnaW4gLTFweDtcbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbkBtaXhpbiBncmlkLWZvdXJjb2xzLXR3b2NvbHMoJGhhbGYtZ3V0dGVyKSB7XG4gICAgLmZvdXItY29sLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRoYWxmLWd1dHRlcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGhhbGYtZ3V0dGVyO1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgLmNvbCB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRoYWxmLWd1dHRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbkBtaXhpbiBncmlkLWZvdXJjb2xzLWZvdXJjb2xzKCRoYWxmLWd1dHRlcikge1xuICAgIC5mb3VyLWNvbC13cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICAgIC5jb2wge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cbkBtaXhpbiBzck9ubHkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXI6IDA7XG59XG5AbWl4aW4gdW5kb1NyT25seSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGJvcmRlcjogMDtcbn1cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cbkBtaXhpbiBzbS1pY29ucygkc2l6ZSkge1xuICAgIC5zbS1pY29uIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJHNpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogKCRzaXplLzIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAoJHNpemUvMTApO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJHNpemU7XG4gICAgICAgICAgICBmb250LXNpemU6ICgkc2l6ZS8yKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICgkc2l6ZS8xMCk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICB0b3A6IC0kc2l6ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbkBtaXhpbiBtcSgka2V5KSB7XG4gICAgJG1pbi13aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRrZXkpO1xuICAgIEBpZiAkbWluLXdpZHRoIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1pbi13aWR0aCkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGtleSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5AbWl4aW4gZ2V0LWZvbnQoJG1hcG5hbWUsICRicCkge1xuICAgIEBlYWNoICRrLCAkdiBpbiBtYXAtZ2V0KCRtYXBuYW1lLCAkYnApIHtcbiAgICAgICAgI3ska306ICR2O1xuICAgIH1cbn1cbkBtaXhpbiBjb250YWluZXItbWF4LXdpZHRoKCRicCkge1xuICAgIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IGdldC1jb250YWluZXItbWF4LXdpZHRoKCRicCk7XG4gICAgfVxuICAgIC5jb250YWluZXItLW5vLW1heHdpZHRoIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cbn1cbkBtaXhpbiBvZmZzY3JlZW4td3JhcHBlci1wb3NpdGlvbigkcG9zaXRpb24sICR3aWR0aCkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgI3skcG9zaXRpb259OiAtJHdpZHRoO1xuICAgIHRyYW5zaXRpb246ICN7JHBvc2l0aW9ufSAuMjVzO1xuICAgICYudmlzaWJsZSB7XG4gICAgICAgICN7JHBvc2l0aW9ufTogMDtcbiAgICB9XG59IiwiZmllbGRzZXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cbmxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAmLmZvcm1fd2FybmluZyB7XG4gICAgICAgIGNvbG9yOiAkYWxlcnQtZGFuZ2VyLWNvbG9yO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyAmIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbn1cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxudGV4dGFyZWEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRmb3JtQm9yZGVyQ29sb3I7XG4gICAgcGFkZGluZzogNHB4O1xufVxuc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtQm9yZGVyQ29sb3I7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICBwYWRkaW5nOiAzcHggNHB4IDRweCA0cHg7XG59XG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogLjJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4uZm9ybV93YXJuaW5nIGxpIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGFsZXJ0LWRhbmdlci1jb2xvcjtcbn1cbmxhYmVsLmVycm9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAuMWVtIC42ZW07XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LWRhbmdlci1jb2xvcjtcbiAgICBjb2xvcjogI2ZmZjtcbn1cbi5mb3JtLWdyb3VwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ2FwKTtcbiAgICAmLmhhcy1lcnJvciB7XG4gICAgICAgICoge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hbGVydCB7XG4gICAgcGFkZGluZzogY2FsYyguNSAqIHZhcigtLWdhcCkpIGNhbGMoLjUgKiB2YXIoLS1nYXApKTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nYXApO1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJhZGl1czogLjJlbTtcbiAgICAuZm9ybWNoZWNrYm94LFxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuMjVlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5hbGVydC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxlcnQtc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWxlcnQtc3VjY2Vzcy1ib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGFsZXJ0LXN1Y2Nlc3MtY29sb3IgIWltcG9ydGFudDtcbiAgICAqIHtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG59XG4uYWxlcnQtaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvciAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogJGFsZXJ0LWluZm8tYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRhbGVydC1pbmZvLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgKiB7XG4gICAgICAgIGNvbG9yOiAkYWxlcnQtaW5mby1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBhLFxuICAgIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gICAgbGFiZWwuZXJyb3Ige1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5hbGVydC13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWxlcnQtd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWxlcnQtd2FybmluZy1ib3JkZXItY29sb3IgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGFsZXJ0LXdhcm5pbmctY29sb3IgIWltcG9ydGFudDtcbiAgICAqIHtcbiAgICAgICAgY29sb3I6ICRhbGVydC13YXJuaW5nLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmFsZXJ0LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWxlcnQtZGFuZ2VyLWJvcmRlci1jb2xvciAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkYWxlcnQtZGFuZ2VyLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgKiB7XG4gICAgICAgIGNvbG9yOiAkYWxlcnQtZGFuZ2VyLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuW25hbWU9XCJyZXhfeWNvbV9hdXRoX3N0YXlcIl0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogLjJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAuM2VtO1xufVxuLmRhdGVuc2NodXR6LWNoZWNrYm94LXdyYXBwZXIge1xuICAgICYgKyBsYWJlbC5lcnJvciB7XG4gICAgICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1nYXApKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2FwKTtcbiAgICB9XG59XG5cbi5mb3JtLWdyb3VwLXN1Ym1pdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIC5idG4ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxufVxuXG4uZm9ybUdyaWRDb250YWluZXIge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiAwIHZhcigtLWdhcCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZvcm1HcmlkQ29udGFpbmVyLS01MF81MCB7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIH1cbn1cbi5mb3JtR3JpZENvbnRhaW5lci0tMTBfNDVfNDUge1xuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxMGZyIDQ1ZnIgNDVmcjtcbiAgICB9XG59XG4uZm9ybUdyaWRDb250YWluZXItLXN1Ym1pdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn0iLCJuYXYucGFnaW5hdGlvbiB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAuMjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1icm93bjtcbiAgICAgICAgY29sb3I6ICRicm93bjtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC4ycmVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3ItMTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wYWdlIHtcbiAgICB9XG4gICAgLmFjdGl2ZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3ItMTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5uZXh0LFxuICAgIC5wcmV2IHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHBhdGgge1xuICAgICAgICAgICAgICAgIGZpbGw6ICRicm93bjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuZGlzYWJsZWQge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1icm93bjtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWJyb3duO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICBmaWxsOiAjZmZmO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgfVxufVxuIiwiLmRvd25sb2FkX19pdGVtICsgLmRvd25sb2FkX19pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXApO1xufVxuLmRvd25sb2FkX19pdGVtTGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZG93bmxvYWRfX2l0ZW1JY29uIHtcbiAgICBmbGV4OiAwIDAgMnJlbTtcbiAgICBzdmcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICB9XG59IiwiLm1vZHVsZSB7XG4gICAgcGFkZGluZzogMCB2YXIoLS1nYXApO1xuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgcGFkZGluZzogMCB2YXIoLS0yZ2FwKTtcbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pbWFnZV9fY2FwdGlvbiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIHBhZGRpbmctdG9wOiAuMjVyZW07XG4gICAgICAgIGZvbnQ6ICRjYXB0aW9uRm9udDtcbiAgICB9XG4gICAgLmdhbGxlcnkge1xuXG4gICAgICAgIC5pc290b3BlR3JpZFNpemVyIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIGNhbGModmFyKC0taGFsZmdhcCkgLyAyKSk7XG4gICAgICAgIH1cbiAgICAgICAgLmlzb3RvcGVUaWxlIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIGNhbGModmFyKC0taGFsZmdhcCkgLyAyKSk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1oYWxmZ2FwKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgICAgICAuaXNvdG9wZUdyaWRTaXplciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gY2FsYyhjYWxjKDQgLyAzKSAqIHZhcigtLWhhbGZnYXApKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaXNvdG9wZVRpbGUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIGNhbGMoY2FsYyg0IC8gMykgKiB2YXIoLS1oYWxmZ2FwKSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZmlyc3RJbWFnZTJDb2wgLmlzb3RvcGVUaWxlOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC8qXG4gICAgICAgIEBpbmNsdWRlIG1xKDUwMHB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICB9XG4gICAgICAgICovXG5cblxuICAgICAgICAvKlxuICAgICAgICAubGlnaHRib3gtaW1hZ2Uge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBibHVyKDE1cHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuaW1hZ2UtcmF0aW8ge1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA4cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSovXG5cbiAgICB9XG4gICAgLnZpZGVvV3JhcHBlci5oYXNSYXRpbyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdmlkZW8ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICB9XG4gICAgfVxuICAgIC52aWRlb1JhdGlvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICB2aWRlbyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG4ubW9kdWxlMjAge1xuICAgIGgyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoLjUgKiB2YXIoLS1nYXApKTtcbiAgICB9XG4gICAgYSwgYTpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICoge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiIsIi5oZWFkZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uaGVhZGVyX19pbm5lciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1jb250ZW50TWF4V2lkdGgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbn1cbi5oZWFkZXJfX2xvZ28ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIHBhZGRpbmc6IHZhcigtLWdhcCk7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgd2lkdGg6IDM1MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tMmdhcCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS0yZ2FwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEobCkge1xuICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKHhsKSB7XG4gICAgfVxufVxuLmhlYWRlcl9fbmF2IHtcbiAgICB6LWluZGV4OiAyMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIHVsLmxldmVsMCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIHVsLmxldmVsMSB7XG5cbiAgICB9XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIGxpLmxldmVsMCB7XG4gICAgICAgICYgZGl2LmxldmVsMSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgJi52aXNpYmxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAmIGRpdiB7XG4gICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICYgZGl2LmxldmVsMSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jdXJyZW50LFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIH1cbiAgICB9XG4gICAgbGkubGV2ZWwxIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuNXJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5oYXNDaGlsZHJlbiB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvci0xO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmNGY1ZWY7XG4gICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3ItMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgICYuY3VycmVudCxcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAqIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIGEubGV2ZWwwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IC43ZW0gdmFyKC0tZ2FwKSAuNGVtIHZhcigtLWdhcCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgfVxuICAgICAgICAmLmN1cnJlbnQsXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgfVxuICAgIH1cbiAgICBhLmxldmVsMSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIHZhcigtLWhhbGZnYXApIDFyZW0gdmFyKC0taGFsZmdhcCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICB9XG4gICAgICAgICYuY3VycmVudCxcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICB9XG4gICAgfVxuICAgIGEubGV2ZWwyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IC4yNXJlbSB2YXIoLS1oYWxmZ2FwKSAuMjVyZW0gdmFyKC0taGFsZmdhcCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgIH1cbiAgICAgICAgJi5jdXJyZW50LFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGl2LmxldmVsMSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIC8vcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAuNXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IC41cmVtO1xuICAgIH1cbiAgICBkaXYubGV2ZWwxX19pbm5lciB7XG5cbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGVudE1heFdpZHRoV2lkZSk7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC43KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogdmFyKC0tMmdhcCk7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGl2LmxldmVsMV9faW5uZXJDb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tNWdhcCkgMCAwIHZhcigtLTJnYXApO1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tc2xpZGVzaG93SGVpZ2h0KSArIHZhcigtLTJnYXApKTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICAgIC5sZXZlbDFfX3RlbXBsYXRlQ29sb3Ige1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiB2YXIoLS0yZ2FwKTtcbiAgICAgICAgaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ2FwKTtcbiAgICAgICAgLy9yaWdodDogY2FsYygtMSAqIHZhcigtLWdhcCkpO1xuICAgICAgICB0b3A6IC4zZW07XG4gICAgfVxuICAgIC5sZXZlbDFfX3RlbXBsYXRlQ29sb3ItLW5vQ29sb3Ige1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZjtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB0b3A6IC0uMjVlbTtcbiAgICB9XG59XG5cbiIsIkB1c2UgJ3Nhc3M6bWF0aCc7XG4uZm9vdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAqIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxufVxuLmZvb3Rlck5hdiB7XG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJy4nO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogY2FsYygxcmVtIC0gMnB4KTtcbiAgICAgICAgICAgIFxuICAgICAgICB9XG4gICAgfVxuICAgICoge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG59XG4uZm9vdGVyTmF2X19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWdhcCk7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLWdhcCk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKHZhcigtLWNvbnRlbnRNYXhXaWR0aCkgKyB2YXIoLS00Z2FwKSk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG59XG4iLCIub2Zmc2NyZWVuIHtcbiAgICAtLWdhcDogMjBweDtcbiAgICAtLTJnYXA6IDQwcHg7XG4gICAgLS0zZ2FwOiA2MHB4O1xuICAgIC0tNGdhcDogODBweDtcbiAgICAtLWhhbGZnYXA6IDEwcHg7XG4gICAgLS1xdWFydGVyZ2FwOiA1cHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHotaW5kZXg6IDIwMTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogSUUgYW5kIEVkZ2UgKi9cbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IC8qIEZpcmVmb3ggKi9cbiAgICAqLCAqOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRkZWZhdWx0LWZvbnQtY29sb3I7XG5cbiAgICB9XG4gICAgYmFja2dyb3VuZDogJGJsdWU7XG4gICAgcmlnaHQ6IC0xMDAlO1xuICAgIHRyYW5zaXRpb246IHJpZ2h0IC4yNXM7XG4gICAgJi52aXNpYmxlIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgQGluY2x1ZGUgb2Zmc2NyZWVuLXdyYXBwZXItcG9zaXRpb24oJ3JpZ2h0JywgMjVyZW0pO1xuICAgIH1cbn1cbi5vZmZzY3JlZW5fX2lubmVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAvL2p1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBAaW5jbHVkZSBtcShsKSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aCk7XG4gICAgfVxufVxuLm9mZnNjcmVlbl9fbG9nbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgc3ZnIHtcbiAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAtd2Via2l0LWZpbHRlcjogbm9uZTtcbiAgICAgICAgICAgIGZpbHRlcjogbm9uZTtcbiAgICAgICAgICAgIC8vZmlsbDogIzAwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5vZmZzY3JlZW5fX25hdiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgLy9tYXJnaW46IGNhbGMoMyAqIHZhcigtLWdhcCkpIDA7XG4gICAgcGFkZGluZzogOXJlbSB2YXIoLS1nYXApIHZhcigtLTJnYXApIHZhcigtLWdhcCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTByZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKGwpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEzcmVtO1xuICAgIH1cbiAgICB1bCB7XG4gICAgfVxuICAgIHVsLmxldmVsMCB7XG4gICAgfVxuICAgIHVsLmxldmVsMSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1xdWFydGVyZ2FwKTtcbiAgICAgICAgQGluY2x1ZGUgbXEobSkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIC8vdG9wOiAwO1xuICAgICAgICAgICAgLy9sZWZ0OiAxNWVtO1xuICAgICAgICAgICAgLy93aWR0aDogMTVlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICB1bC5sZXZlbDIge1xuICAgIH1cbiAgICB1bC5sZXZlbDMge1xuICAgIH1cbiAgICB1bC5sZXZlbDQge1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJi5jdXJyZW50LFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgICAgICYuY2xvc2VkIHtcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgbGkubGV2ZWwwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLWdhcCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1oYWxmZ2FwKTtcbiAgICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICAgICAgICB1bC5sZXZlbDEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgbGkubGV2ZWwxIHtcbiAgICAgICAgQGluY2x1ZGUgbXEobSkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLWhhbGZnYXApXG4gICAgICAgIH1cbiAgICB9XG4gICAgbGkubGV2ZWwyIHtcbiAgICB9XG4gICAgbGkubGV2ZWwzIHtcbiAgICB9XG4gICAgbGkubGV2ZWw0IHtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmb250OiAkb2Zmc2NyZWVuTmF2Rm9udDtcbiAgICAgICAgcGFkZGluZzogLjJyZW0gMDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmLmN1cnJlbnQsXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbXEobSkge1xuICAgICAgICAgICAvL2Rpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIGEubGV2ZWwwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgICAgICBzcGFuIHtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cbiAgICBhLmxldmVsMSB7fVxuICAgIGEubGV2ZWwwIHNwYW4ge1xuICAgIH1cbiAgICBhLmxldmVsMSBzcGFuIHtcbiAgICB9XG4gICAgYS5sZXZlbDIgc3BhbiB7XG4gICAgfVxufVxuLm5hdlRvZ2dsZXJfX2JhciB7XG4gICAgZmlsbDogbm9uZTtcbiAgICBzdHJva2U6ICRsaW5rLWNvbG9yO1xuICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcbiAgICBzdHJva2Utd2lkdGg6IDRweDtcbiAgICBhOmhvdmVyICYge1xuICAgICAgICBzdHJva2U6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbn1cbi5vZmZzY3JlZW5fX3RvZ2dsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogdmFyKC0tMmdhcCk7XG4gICAgcmlnaHQ6IHZhcigtLTJnYXApO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgei1pbmRleDogMjI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAmLnZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgIHRvcDogdmFyKC0tMmdhcCk7XG4gICAgICAgIHJpZ2h0OiB2YXIoLS0yZ2FwKTtcbiAgICB9XG4gICAgc3ZnIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgc3Ryb2tlOiAjZmZmO1xuICAgICAgICB9XG4gICAgfVxuICAgIGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgJiArIGkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLm9mZnNjcmVlbl9fdG9nZ2xlLS1jbG9zZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMWVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogMWVtO1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgIH1cbiAgICAmLnZpc2libGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG4ubGFuZ05hdiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5qdW1wMkNvbnRlbnQge1xuICAgIHdpZHRoOiAyLjdyZW07XG4gICAgc3ZnIHtcbiAgICAgICAgcGF0aCxcbiAgICAgICAgcG9seWdvbiB7XG4gICAgICAgICAgICBmaWxsOiAkcHJpbWFyeS1jb2xvci0xO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLm1vZHVsZVN3aXBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoMiAqIHZhcigtLWdhcCkpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zd2lwZXItY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBtcShsKSB7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMTBweCArIHZhcigtLTJnYXApKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDExO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuLnN3aXBlci1jb250YWluZXJfX3dyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICNmNWY1ZjQ7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tMmdhcCkpO1xufVxuLnN3aXBlci1zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZpZ3VyZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgbXEobCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDExMHB4ICsgdmFyKC0tNGdhcCkpO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygxMTBweCArIHZhcigtLTRnYXApKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zd2lwZXItc2xpZGUgW2NsYXNzXj0nc3dpcGVyLXNsaWRlLWJhY2tncm91bmQnXSxcbi5zd2lwZXItc2xpZGUgW2NsYXNzXj0nc3dpcGVyLXNsaWRlLWJhY2tncm91bmQnXSBkaXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4uc2xpZGVyQ29udHJvbHMuc2xpZGVyQ29udHJvbHMtLWhlYWRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tZ2FwKSB2YXIoLS1nYXApIHZhcigtLWdhcCk7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBwYWRkaW5nOiAwIHZhcigtLTJnYXApIHZhcigtLWdhcCkgdmFyKC0tMmdhcCk7XG4gICAgfVxuXG4gICAgc3ZnIHtcblxuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDogY2FsYyg1cmVtICsgNHB4KTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDVyZW0gKyA0cHgpO1xuICAgICAgICAuYXJyb3dMZWZ0SWNvbl9faWNvbixcbiAgICAgICAgLmFycm93UmlnaHRJY29uX19pY29uIHtcbiAgICAgICAgICAgIHN0cm9rZTogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5hcnJvd0xlZnRJY29uX19pY29uLFxuICAgICAgICAgICAgLmFycm93UmlnaHRJY29uX19pY29uIHtcbiAgICAgICAgICAgICAgICBzdHJva2U6ICNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4uc2xpZGVyQ29udHJvbHMtLWhlYWRlcklubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgIH1cbn1cbi5zd2lwZXJUZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IHZhcigtLWdhcCk7XG4gICAgcGFkZGluZzogMS41ZW0gdmFyKC0tZ2FwKSAuM2VtIHZhcigtLWdhcCk7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDcwJSk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IC41cmVtO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuNXJlbTtcbn1cbi5zd2lwZXJUZXh0X19pbm5lciB7XG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQ6ICRoMUZvbnQ7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvci0xO1xuICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDVweDtcbn1cbi5zd2lwZXJfX2JhY2tncm91bmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAwIHZhcigtLTJnYXApIDA7XG59XG4uc3dpcGVyX19idXR0b25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tZ2FwKTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgQGluY2x1ZGUgbXEobCkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogdmFyKC0tM2dhcCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxufVxuLnN3aXBlci1idXR0b24tcHJldiwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICB0b3A6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudDtcbn1cblxuLnN3aXBlci1jb250YWluZXJbZGF0YS10eXBlPVwiaGVhZGVyXCJdIHtcbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tMmdhcCkpOyAvLyBzbGlkZXNob3cgb3ZlcmxheSBoZWlnaHRcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEobCkge1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuLnN3aXBlci1jb250YWluZXJfX3dyYXBwZXItLWJsb2dPdmVydmlldyAuc3dpcGVyLWNvbnRhaW5lcltkYXRhLXR5cGU9XCJoZWFkZXJcIl0ge1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBAaW5jbHVkZSBtcShsKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoL3RoZW1lL3B1YmxpYy9hc3NldHMvaW1nL2JnX2gyLnBuZykgcmVwZWF0LXkgY2VudGVyIGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5zd2lwZXItY29udGFpbmVyX193cmFwcGVyLS1ibG9nRW50cnkgLnN3aXBlci1jb250YWluZXJbZGF0YS10eXBlPVwiaGVhZGVyXCJdIHtcbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgLy9taW4taGVpZ2h0OiAwO1xuICAgIH1cbn1cbi5zd2lwZXItY29udGFpbmVyX193cmFwcGVyLS1ub2ltYWdlIC5zd2lwZXItY29udGFpbmVyW2RhdGEtdHlwZT1cImhlYWRlclwiXSB7XG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIG1heC13aWR0aDogdmFyKC0tY29udGVudE1heFdpZHRoKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiA2cmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEobSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLTJnYXApO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLTJnYXApO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLTRnYXApO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tMmdhcCk7XG4gICAgfVxuICAgIC5oZWFkZXJfX2xvZ28ge1xuICAgICAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLypcbkluaGFsdCBkZXIgL1Bob3RvU3dpcGUtNC4xLjMvc3JjL2Nzcy9fbWFpbi1zZXR0aW5ncy5zY3NzXG4gKi9cbiRwc3dwX19zaG93LWhpZGUtdHJhbnNpdGlvbi1kdXJhdGlvbjogMzMzbXMgIWRlZmF1bHQ7XG4kcHN3cF9fY29udHJvbHMtdHJhbnNpdGlvbi1kdXJhdGlvbjogMzMzbXMgIWRlZmF1bHQ7XG4kcHN3cF9fYmFja2dyb3VuZC1jb2xvcjogIzAwMCAhZGVmYXVsdDtcbiRwc3dwX19wbGFjZWhvbGRlci1jb2xvcjogIzIyMiAhZGVmYXVsdDtcbiRwc3dwX19ib3gtc2l6aW5nLWJvcmRlci1ib3g6IHRydWUgIWRlZmF1bHQ7IC8vIGRpc2FibGUgLnBzd3AgKiB7IGJveC1zaXppbmc6Ym9yZGVyLWJveCB9IChpbiBjYXNlIHlvdSBhbHJlYWR5IGhhdmUgaXQgaW4geW91ciBzaXRlIGNzcylcbiRwc3dwX19yb290LXotaW5kZXg6IDE1MDAgIWRlZmF1bHQ7XG4kcHN3cF9fYXNzZXRzLXBhdGg6ICcnICFkZWZhdWx0OyAvLyBwYXRoIHRvIHNraW4gYXNzZXRzIGZvbGRlciAocHJlbG9hZGVyLCBQTkcgYW5kIFNWRyBzcHJpdGUpXG4kcHN3cF9fZXJyb3ItdGV4dC1jb2xvcjogI0NDQyAhZGVmYXVsdDsgLy8gXCJJbWFnZSBub3QgbG9hZGVkXCIgdGV4dCBjb2xvclxuJHBzd3BfX2luY2x1ZGUtbWluaW1hbC1zdHlsZTogdHJ1ZSAhZGVmYXVsdDtcbi8qXG5Lb3BpZSBkZXIgL1Bob3RvU3dpcGUtNC4xLjMvc3JjL2Nzcy9kZWZhdWx0LXNraW4vZGVmYXVsdC1za2luLnNjc3Ncbi0gOmJlZm9yZSw6YWZ0ZXIgdW5kIGJhY2tncm91bmQgcmF1c1xuLSBzdmcga3JhbSByZWluXG4gKi9cbi5wc3dwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLnBzd3BfX2NhcHRpb25fX2NlbnRlciB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cbi5wc3dwX19idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IC44ZW07XG4gICAgfVxufVxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQgc3ZnLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHN2Zyxcbi5wc3dwX19idXR0b24tLWZzIHN2Z3tcbiAgICB3aWR0aDogMWVtO1xufVxuLnBzd3BfX2J1dHRvbi0tem9vbSBzdmcubWludXMge1xuICAgIGRpc3BsYXk6IG5vbmVcbn1cbi5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2J1dHRvbi0tem9vbSBzdmcubWludXMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2J1dHRvbi0tem9vbSBzdmcucGx1cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5wc3dwX19idXR0b24tLWZzIHN2Zy5jb21wcmVzcy13aWRlIHtcbiAgICBkaXNwbGF5OiBub25lXG59XG4ucHN3cC0tZnMgLnBzd3BfX2J1dHRvbi0tZnMgc3ZnLmNvbXByZXNzLXdpZGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5wc3dwLS1mcyAucHN3cF9fYnV0dG9uLS1mcyBzdmcuZXhwYW5kLXdpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4vKlxuXHRcblx0MS4gQnV0dG9uc1xuXG4gKi9cbi8qIDxidXR0b24+IGNzcyByZXNldCAqL1xuLnBzd3BfX2J1dHRvbiB7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMC45O1xuICAgIH1cbiAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwXG4gICAgfVxufVxuLyogcHN3cF9fdWktLW92ZXItY2xvc2UgY2xhc3MgaXQgYWRkZWQgd2hlbiBtb3VzZSBpcyBvdmVyIGVsZW1lbnQgdGhhdCBzaG91bGQgY2xvc2UgZ2FsbGVyeSAqL1xuLnBzd3BfX3VpLS1vdmVyLWNsb3NlIC5wc3dwX19idXR0b24tLWNsb3NlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuLnBzd3BfX2J1dHRvbi0tZnMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ucHN3cC0tc3VwcG9ydHMtZnMgLnBzd3BfX2J1dHRvbi0tZnMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnBzd3BfX2J1dHRvbi0tem9vbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5wc3dwLS16b29tLWFsbG93ZWQgLnBzd3BfX2J1dHRvbi0tem9vbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4vKiBubyBhcnJvd3Mgb24gdG91Y2ggc2NyZWVucyAqL1xuLnBzd3AtLXRvdWNoIHtcbiAgICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbiAgICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLypcblx0QXJyb3cgYnV0dG9ucyBoaXQgYXJlYVxuXHQoaWNvbiBpcyBhZGRlZCB0byA6YmVmb3JlIHBzZXVkby1lbGVtZW50KVxuKi9cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQge1xuICAgIGxlZnQ6IDA7XG59XG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xufVxuLypcblxuXHQyLiBTaGFyZSBtb2RhbC9wb3B1cCBhbmQgbGlua3NcblxuICovXG4ucHN3cF9fY291bnRlcixcbi5wc3dwX19zaGFyZS1tb2RhbCB7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuLnBzd3BfX3NoYXJlLW1vZGFsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICRwc3dwX19yb290LXotaW5kZXggKyAxMDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuLnBzd3BfX3NoYXJlLW1vZGFsLS1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ucHN3cF9fc2hhcmUtdG9vbHRpcCB7XG4gICAgei1pbmRleDogJHBzd3BfX3Jvb3Qtei1pbmRleCArIDEyMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogI0ZGRjtcbiAgICB0b3A6IDU2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHJpZ2h0OiA0NHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAvKiByb3VuZCBjb3JuZXJzIG9uIHRoZSBmaXJzdC9sYXN0IGxpc3QgaXRlbSAqL1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMnB4IDJweCAwIDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLnBzd3BfX3NoYXJlLW1vZGFsLS1mYWRlLWluIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC5wc3dwX19zaGFyZS10b29sdGlwIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cbi8qIGluY3JlYXNlIHNpemUgb2Ygc2hhcmUgbGlua3Mgb24gdG91Y2ggZGV2aWNlcyAqL1xuLnBzd3AtLXRvdWNoIC5wc3dwX19zaGFyZS10b29sdGlwIGEge1xuICAgIHBhZGRpbmc6IDE2cHggMTJweDtcbn1cbmEucHN3cF9fc2hhcmUtLWZhY2Vib29rIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xMnB4O1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgYm9yZGVyOiA2cHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZGRjtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjM0U1QzlBO1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzNFNUM5QTtcbiAgICAgICAgfVxuICAgIH1cbn1cbmEucHN3cF9fc2hhcmUtLXR3aXR0ZXIge1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjNTVBQ0VFO1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICB9XG59XG5hLnBzd3BfX3NoYXJlLS1waW50ZXJlc3Qge1xuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjQ0NDO1xuICAgICAgICBjb2xvcjogI0NFMjcyRDtcbiAgICB9XG59XG5hLnBzd3BfX3NoYXJlLS1kb3dubG9hZCB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNEREQ7XG4gICAgfVxufVxuLypcblxuXHQzLiBJbmRleCBpbmRpY2F0b3IgKFwiMSBvZiBYXCIgY291bnRlcilcblxuICovXG4ucHN3cF9fY291bnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogNDRweDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgb3BhY2l0eTogMC43NTtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG59XG4vKlxuXHRcblx0NC4gQ2FwdGlvblxuXG4gKi9cbi5wc3dwX19jYXB0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDRweDtcbiAgICBzbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgY29sb3I6ICNCQkI7XG4gICAgfVxufVxuLnBzd3BfX2NhcHRpb25fX2NlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXgtd2lkdGg6IDQyMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAjQ0NDO1xufVxuLnBzd3BfX2NhcHRpb24tLWVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLyogRmFrZSBjYXB0aW9uIGVsZW1lbnQsIHVzZWQgdG8gY2FsY3VsYXRlIGhlaWdodCBvZiBuZXh0L3ByZXYgaW1hZ2UgKi9cbi5wc3dwX19jYXB0aW9uLS1mYWtlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKlxuXG5cdDUuIExvYWRpbmcgaW5kaWNhdG9yIChwcmVsb2FkZXIpXG5cblx0WW91IGNhbiBwbGF5IHdpdGggaXQgaGVyZSAtIGh0dHA6Ly9jb2RlcGVuLmlvL2RpbXNlbWVub3YvcGVuL3l5QldvUlxuXG4gKi9cbi5wc3dwX19wcmVsb2FkZXIge1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTIycHg7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAgIGRpcmVjdGlvbjogbHRyO1xufVxuLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luOiAxMnB4O1xufVxuLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuLnBzd3AtLWNzc19hbmltYXRpb24ge1xuICAgIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gICAgICAgICAgICBhbmltYXRpb246IGNsb2Nrd2lzZSA1MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIH1cbiAgICAgICAgLnBzd3BfX3ByZWxvYWRlcl9fZG9udXQge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBkb251dC1yb3RhdGUgMTAwMG1zIGN1YmljLWJlemllciguNCwgMCwgLjIyLCAxKSBpbmZpbml0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBvcGFjaXR5OiAwLjc1O1xuICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAucHN3cF9fcHJlbG9hZGVyX19jdXQge1xuICAgICAgICAvKlxuICAgICAgICAgICAgVGhlIGlkZWEgb2YgYW5pbWF0aW5nIGlubmVyIGNpcmNsZSBpcyBiYXNlZCBvbiBQb2x5bWVyIChcIm1hdGVyaWFsXCIpIGxvYWRpbmcgaW5kaWNhdG9yXG4gICAgICAgICAgICAgYnkgS2VhbnUgTGVlIGh0dHBzOi8vYmxvZy5rZWFudWxlZS5jb20vMjAxNC8xMC8yMC90aGUtdGFsZS1vZi10aHJlZS1zcGlubmVycy5odG1sXG4gICAgICAgICovXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDdweDtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAucHN3cF9fcHJlbG9hZGVyX19kb251dCB7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAucHN3cF9fcHJlbG9hZGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbn1cbkBrZXlmcmFtZXMgY2xvY2t3aXNlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpXG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpXG4gICAgfVxufVxuQGtleWZyYW1lcyBkb251dC1yb3RhdGUge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMClcbiAgICB9XG4gICAgNTAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZylcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApXG4gICAgfVxufVxuLypcblx0XG5cdDYuIEFkZGl0aW9uYWwgc3R5bGVzXG5cbiAqL1xuLyogcm9vdCBlbGVtZW50IG9mIFVJICovXG4ucHN3cF9fdWkge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAkcHN3cF9fcm9vdC16LWluZGV4ICsgNTA7XG59XG4vKiB0b3AgYmxhY2sgYmFyIHdpdGggYnV0dG9ucyBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3IgKi9cbi5wc3dwX190b3AtYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuLnBzd3BfX2NhcHRpb24sXG4ucHN3cF9fdG9wLWJhcixcbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcHN3cF9fY29udHJvbHMtdHJhbnNpdGlvbi1kdXJhdGlvbiBjdWJpYy1iZXppZXIoLjQsIDAsIC4yMiwgMSk7XG59XG4vKiBwc3dwLS1oYXNfbW91c2UgY2xhc3MgaXMgYWRkZWQgb25seSB3aGVuIHR3byBzdWJzZXF1ZW50IG1vdXNlbW92ZSBldmVudHMgb2NjdXIgKi9cbi5wc3dwLS1oYXNfbW91c2Uge1xuICAgIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuICAgIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fY2FwdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuLyogcHN3cF9fdWktLWZpdCBjbGFzcyBpcyBhZGRlZCB3aGVuIG1haW4gaW1hZ2UgXCJmaXRzXCIgYmV0d2VlbiB0b3AgYmFyIGFuZCBib3R0b20gYmFyIChjYXB0aW9uKSAqL1xuLnBzd3BfX3VpLS1maXQge1xuICAgIC5wc3dwX190b3AtYmFyLFxuICAgIC5wc3dwX19jYXB0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgIH1cbn1cbi8qIHBzd3BfX3VpLS1pZGxlIGNsYXNzIGlzIGFkZGVkIHdoZW4gbW91c2UgaXNuJ3QgbW92aW5nIGZvciBzZXZlcmFsIHNlY29uZHMgKEpTIG9wdGlvbiB0aW1lVG9JZGxlKSAqL1xuLnBzd3BfX3VpLS1pZGxlIHtcbiAgICAucHN3cF9fdG9wLWJhciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuICAgIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuLypcblx0cHN3cF9fdWktLWhpZGRlbiBjbGFzcyBpcyBhZGRlZCB3aGVuIGNvbnRyb2xzIGFyZSBoaWRkZW5cblx0ZS5nLiB3aGVuIHVzZXIgdGFwcyB0byB0b2dnbGUgdmlzaWJpbGl0eSBvZiBjb250cm9sc1xuKi9cbi5wc3dwX191aS0taGlkZGVuIHtcbiAgICAucHN3cF9fdG9wLWJhcixcbiAgICAucHN3cF9fY2FwdGlvbixcbiAgICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbiAgICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgICAgICAvKiBGb3JjZSBwYWludCAmIGNyZWF0ZSBjb21wb3NpdGlvbiBsYXllciBmb3IgY29udHJvbHMuICovXG4gICAgICAgIG9wYWNpdHk6IDAuMDAxO1xuICAgIH1cbn1cbi8qIHBzd3BfX3VpLS1vbmUtc2xpZGUgY2xhc3MgaXMgYWRkZWQgd2hlbiB0aGVyZSBpcyBqdXN0IG9uZSBpdGVtIGluIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb25lLXNsaWRlIHtcbiAgICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbiAgICAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQsXG4gICAgLnBzd3BfX2NvdW50ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5wc3dwX19lbGVtZW50LS1kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQGlmICRwc3dwX19pbmNsdWRlLW1pbmltYWwtc3R5bGUgPT0gdHJ1ZSB7XG4gICAgLnBzd3AtLW1pbmltYWwtLWRhcmsge1xuICAgICAgICAucHN3cF9fdG9wLWJhciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuIiwiLy8gaHR0cHM6Ly93ZWJhaW0ub3JnL3RlY2huaXF1ZXMvc2tpcG5hdi9cbiNza2lwdG9jb250ZW50IGEge1xuXHRwYWRkaW5nOiAuNXJlbTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC0zcmVtO1xuXHRsZWZ0OiAwO1xuXHRjb2xvcjogd2hpdGU7XG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHdoaXRlO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgd2hpdGU7XG5cdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAuNXJlbTtcblx0YmFja2dyb3VuZDogI0JGMTcyMjtcblx0dHJhbnNpdGlvbjogdG9wIDFzIGVhc2Utb3V0O1xuXHR6LWluZGV4OiAxMDA7XG5cdCY6Zm9jdXMge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRsZWZ0OiAwO1xuXHRcdHRvcDogMDtcblx0XHRvdXRsaW5lLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRyYW5zaXRpb246IHRvcCAuMXMgZWFzZS1pbjtcblx0XHR0cmFuc2l0aW9uOiB0b3AgLjFzIGVhc2UtaW47XG5cdH1cbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG5cdCNza2lwdG9jb250ZW50IGEge1xuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDAxbXMgIWltcG9ydGFudDtcblx0fVxufVxuXG4vLyBUT0RPXG4vLyBodHRwczovL3d3dy5hMTF5bWF0dGVycy5jb20vcGF0dGVybi9tb2JpbGUtbmF2L1xuIiwiLyogaWUxMSAqL1xuXzotbXMtZnVsbHNjcmVlbixcbjpyb290IHtcbiAgICBzdmcge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgIH1cbiAgICAuaGVhZGVyX19pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oZWFkZXJfX25hdiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHVsLmxldmVsMCB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICY+bGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsLmxldmVsMSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ncmlkQ29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICAgIG1heC13aWR0aDogNDAwcHggIWltcG9ydGFudDtcbiAgICB9XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuQGltcG9ydCAnc3dpcGVyX2Jhc2UnO1xuXG5AaW1wb3J0ICdmb250cyc7XG5AaW1wb3J0ICdmdW5jdGlvbnMnO1xuQGltcG9ydCAnbWl4aW5zJztcbkBpbXBvcnQgJ3ZhcnMnO1xuQGltcG9ydCAnZ3JpZCc7XG5AaW1wb3J0ICdmb3Jtcyc7XG5AaW1wb3J0ICdwYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2Rvd25sb2Fkcyc7XG5AaW1wb3J0ICdtb2R1bGUnO1xuQGltcG9ydCAnaGVhZGVyJztcbkBpbXBvcnQgJ2Zvb3Rlcic7XG5AaW1wb3J0ICdvZmZzY3JlZW4nO1xuQGltcG9ydCAnc3dpcGVyJztcbkBpbXBvcnQgJ3Bob3Rvc3dpcGUnO1xuQGltcG9ydCAnd2NhZyc7XG5AaW1wb3J0ICdicm93c2VyYnVncyc7XG5cbjpyb290IHtcbiAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgIC0tZ2FwOiAzMHB4O1xuICAgIH1cbn1cblxuKiB7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5odG1sIHtcbiAgICBjb2xvcjogJGRlZmF1bHQtZm9udC1jb2xvcjtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQ6ICRodG1sRm9udDtcbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEobSkge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKHhsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG59XG5ib2R5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmgxIHtcbiAgICBjb2xvcjogJGJsdWU7XG4gICAgZm9udDogJGgxRm9udDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKHhsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICAgIH1cbn1cbi5zaXRlVGl0bGVXcmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ29sZDtcbiAgICBoMSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuaDIsXG5oMy50ZXN0aW1vbmlhbF9faGVhZGxpbmUge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvci0xO1xuICAgIGZvbnQ6ICRoMkZvbnQ7XG4gICAgcGFkZGluZzogY2FsYyguNSAqIHZhcigtLWdhcCkpIDAgdmFyKC0tZ2FwKSAwO1xuICAgIG1hcmdpbjogMDtcbiAgICAmLnJpZ2h0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgvdGhlbWUvcHVibGljL2Fzc2V0cy9pbWcvYmdfaDIucG5nKSByZXBlYXQteCBsZWZ0IGNlbnRlcjtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgdmFyKC0tMmdhcCk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbXEobSkge1xuICAgICAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoeGwpIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgfVxufVxuaDMge1xuICAgIGZvbnQ6ICRoM0ZvbnQ7XG4gICAgcGFkZGluZzogMCAwIHZhcigtLWdhcCkgMDtcbiAgICBtYXJnaW46IDA7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoeGwpIHtcbiAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICB9XG59XG5oNCB7XG4gICAgZm9udDogJGg0Rm9udDtcbiAgICBwYWRkaW5nOiAwIDAgdmFyKC0tZ2FwKSAwO1xuICAgIG1hcmdpbjogMDtcbn1cbnAge1xuICAgIHBhZGRpbmc6IDAgMCB2YXIoLS1nYXApIDA7XG4gICAgbWFyZ2luOiAwO1xufVxuaHIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgdmFyKC0tZ2FwKSAwO1xufVxudWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ2FwKTtcbn1cbm9sIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1ib3R0b206IHZhcigtLWdhcCk7XG59XG5hIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbn1cbmE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbn1cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbmltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbnRhYmxlIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDAgdmFyKC0tZ2FwKSAwO1xufVxudGQge1xuICAgIHBhZGRpbmc6IDAgMXJlbSAwIDA7XG59XG5zdHJvbmcsXG5iIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuZW0sXG5pIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5pZnJhbWUge1xuICAgIGJvcmRlcjogMDtcbn1cbmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMCB2YXIoLS1nYXApIDA7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5ibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCAwIHZhcigtLWdhcCkgMDtcbn1cbi5qcyB7XG4gICAgLmxhenlsb2FkLFxuICAgIC5sYXp5bG9hZGluZyB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC5sYXp5bG9hZGVkIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMDBtcztcbiAgICB9XG59XG5pbWdbZGF0YS1zaXplcz0nYXV0byddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG59XG4uaW1hZ2UtcmF0aW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuLmZhLXN2ZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5uYXYge1xuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgYSwgYTpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG4uY2xlYXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBub25lO1xufVxuLmltYWdlX19jYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAuMnJlbTtcbn1cbi5kYXRlbnNjaHV0ei1jaGVja2JveC13cmFwcGVyIHtcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZSB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuLmJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAxZW0gMmVtO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRnb2xkO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgY29sb3I6ICRibHVlOztcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nYXApO1xuICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibHVlO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmx1ZTtcbiAgICB9XG59XG5cbi5idG5fX3dyYXBwZXIge1xuICAgIC5ncmlkSXRlbSAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2FwKTtcbiAgICB9XG4gICAgcCArICYge1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKC41ICogdmFyKC0tZ2FwKSk7XG4gICAgfVxufVxuLml3LWljb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC4xZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICB3aWR0aDogMS4yZW07XG4gICAgJi5tYXAtbWFya2VyLWFsdCB7XG4gICAgICAgIHRvcDogLjJlbTtcbiAgICB9XG4gICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogLjllbTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAmLm1hcC1tYXJrZXItYWx0IHtcbiAgICAgICAgICAgIHdpZHRoOiAuOGVtO1xuICAgICAgICB9XG4gICAgICAgICYuY2hldnJvbi1kb3VibGUtcmlnaHQge1xuICAgICAgICAgICAgd2lkdGg6IC42ZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4vKiovXG4uZmFxX19xdWVzdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMmVtO1xuICAgIHN2ZyB7XG4gICAgICAgIGhlaWdodDogLjhlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogLjRlbTtcbiAgICAgICAgZmlsbDogJGRlZmF1bHQtZm9udC1jb2xvcjtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAgICYub3BlbiB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB9XG4gICAgfVxufVxuLmZhcV9fYW5zd2VyIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYyguNSAqIHZhcigtLWdhcCkpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKC41ICogdmFyKC0tZ2FwKSk7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjJyZW07XG4gICAgJiArIC5mYXFfX3F1ZXN0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG59XG4vKiovXG4uZ2FsbGVyeSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdhcDogdmFyKC0taGFsZmdhcCk7XG4gICAgQGluY2x1ZGUgbXEoNjAwcHgpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoODAwcHgpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoMTAwMHB4KSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDUsIDFmcik7XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKDEyMDBweCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xuICAgIH1cbn1cbi8qKi9cbi5pbWFnZUNyZWRpdHMge1xuICAgIG1heC13aWR0aDogdmFyKC0tY29udGVudE1heFdpZHRoV2lkZSk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG4uaW1hZ2VDcmVkaXRzX190aWxlLFxuLmlzb3RvcGVHcmlkU2l6ZXIge1xuICAgIGZsb2F0OiBsZWZ0OyBcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JleTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAuaW1hZ2UtcmF0aW8ge1xuICAgICAgICBpIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoNjAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoOTAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtcSgxMjAwcHgpIHtcbiAgICAgICAgLy93aWR0aDogMjUlO1xuICAgIH1cbn1cbi5pc290b3BlR3JpZFNpemVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uaW1hZ2VDcmVkaXRzX190ZXh0IHtcbiAgICBwYWRkaW5nOiBjYWxjKC41ICogdmFyKC0tZ2FwKSkgY2FsYyguNSAqIHZhcigtLWdhcCkpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC45KTtcbiAgICBjb2xvcjogJGRlZmF1bHQtZm9udC1jb2xvcjtcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRkZWZhdWx0LWZvbnQtY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGRlZmF1bHQtZm9udC1jb2xvcjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qKi9cbi5tb2R1bGUtLWJnQ29sb3IxIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjVmNWY0O1xuICAgIGgyLGgzLGg0LC5iYW5uZXIge1xuICAgICAgICBjb2xvcjogJGRlZmF1bHQtZm9udC1jb2xvcjtcbiAgICB9XG59XG4ubW9kdWxlLS1iZ0NvbG9yMiB7XG4gICAgYmFja2dyb3VuZDogI2U0ZTJkYTtcbiAgICBoMixoMyxoNCwuYmFubmVyIHtcbiAgICAgICAgY29sb3I6ICRkZWZhdWx0LWZvbnQtY29sb3I7XG4gICAgfVxufVxuLm1vZHVsZS0tYmdDb2xvcjMge1xuICAgIGJhY2tncm91bmQ6ICNmMmVlZTg7XG4gICAgKiB7XG4gICAgICAgIGNvbG9yOiAjYzc5ZDU0O1xuICAgIH1cbn1cbi5iYW5uZXIge1xuICAgIGZvbnQtc2l6ZTogMi44cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLTJnYXApO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLTJnYXApO1xuICAgIEBpbmNsdWRlIG1xKG0pIHtcbiAgICAgICAgZm9udC1zaXplOiAzLjJyZW07XG5cbiAgICB9XG59XG4vKiovXG4ubW9kdWxlVGVhc2VyIHtcblxufVxuLm1vZHVsZVRlYXNlcl9faW5uZXIge1xuICAgIGgyIHtcbiAgICAgICAgaHlwaGVuczogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1jb250ZW50TWF4V2lkdGgpO1xuICAgIEBpbmNsdWRlIG1xKG0pIHtcblxuICAgICAgICAtLXRlc3Q6IGNhbGMoMzMuMzMzMyUgLSBjYWxjKHZhcigtLTRnYXApIC8gMykpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCggYXV0by1maXQsIG1pbm1heCg1cmVtLCB2YXIoLS10ZXN0KSkpO1xuICAgIH1cbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdmFyKC0tMmdhcCk7XG4gICAgc3BhbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDFlbSA1MHB4IDFlbSAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoL3RoZW1lL3B1YmxpYy9hc3NldHMvaW1nL2Fycm93LnBuZykgbm8tcmVwZWF0IHJpZ2h0IDEuNWVtO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwcHggOHB4O1xuICAgIH1cbn1cbi5tb2R1bGVUZWFzZXJfX2xpbmsge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbi5tb2R1bGVUZWFzZXJfX3RlYXNlckltYWdlTGFuZHNjYXBlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5tb2R1bGVUZWFzZXJfX3RlYXNlckltYWdlUG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5AaW5jbHVkZSBtcShtKSB7XG4gICAgLm1vZHVsZVRlYXNlcl9fdGVhc2VySW1hZ2VMYW5kc2NhcGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubW9kdWxlVGVhc2VyX190ZWFzZXJJbWFnZVBvcnRyYWl0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuLm1vZHVsZVRlYXNlcl9fdGVhc2VyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubW9kdWxlVGVhc2VyX190ZWFzZXJJbm5lciB7XG4gICAgLmJ0biB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuLm1vZHVsZVRlYXNlcl9fdGVhc2VyTGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICBwb2x5Z29uIHtcbiAgICAgICAgICAgIGZpbGw6ICRwcmltYXJ5LWNvbG9yLTE7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubW9kdWxlRnVsbFdpZHRoSW1hZ2Uge1xuICAgIC8vYXNwZWN0LXJhdGlvOiAxMC84O1xuICAgIC8vbWF4LWhlaWdodDogNTB2aDtcbiAgICBoZWlnaHQ6IDYwdmg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBAaW5jbHVkZSBtcShsKSB7XG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgfVxufVxuLnp3aXNjaGVuYmlsZC1pbm5lciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAtMTtcbn1cbi8qKi9cbi5oZWFkZXIsXG4uc3dpcGVyLWNvbnRhaW5lcl9fd3JhcHBlcixcbi5tYWluLFxuLmZvb3RlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG4vKiovXG5cbi8qKi9cbi5zdG9yZWZyb250IHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG4uc3RvcmVmcm9udF9fdGlsZSxcbi5zdG9yZWZyb250X19pc290b3BlR3JpZFNpemVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JleTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nYXApO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLmltYWdlLXJhdGlvIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKDYwMHB4KSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIHZhcigtLWdhcCkpO1xuICAgIH1cbn1cbi5zdG9yZWZyb250X19pc290b3BlR3JpZFNpemVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uc3RvcmVmcm9udF9faW5mbyB7XG4gICAgcGFkZGluZzogY2FsYyguNSAqIHZhcigtLWdhcCkpIGNhbGMoLjUgKiB2YXIoLS1nYXApKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC43KTtcbiAgICBvcGFjaXR5OiAwLjAwMTtcbiAgICBjb2xvcjogJGRlZmF1bHQtZm9udC1jb2xvcjtcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMTAwMDBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLnN0b3JlZnJvbnRfX2xpbms6aG92ZXIgJiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXM7XG4gICAgfVxufVxuLnN0b3JlZnJvbnRfX25hbWUge1xuXG59XG4vKiovXG4uYXJyb3dMZWZ0SWNvbkNpcmNsZV9fYmFja2dyb3VuZCxcbi5hcnJvd1JpZ2h0SWNvbkNpcmNsZV9fYmFja2dyb3VuZCB7XG4gICAgZmlsbDogJGxpbmstY29sb3I7XG4gICAgYTpob3ZlciAmIHtcbiAgICAgICAgZmlsbDogJGxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgIC5zd2lwZXJUZXh0ICYge1xuICAgICAgICBmaWxsOiAjMDAwO1xuICAgICAgICBhOmhvdmVyICYge1xuICAgICAgICAgICAgZmlsbDogIzAwMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5hcnJvd0xlZnRJY29uQ2lyY2xlX19pY29uLFxuLmFycm93UmlnaHRJY29uQ2lyY2xlX19pY29uIHtcbiAgICBmaWxsOiAjZmZmO1xufVxuLmFycm93TGVmdEljb24sXG4uYXJyb3dSaWdodEljb24ge1xuICAgIGZpbGw6IG5vbmU7XG4gICAgc3Ryb2tlOiAjNGI0YTRhO1xufVxuLyoqL1xuLmNvbnRlbnRTbGlkZXJfX2NvbnRhaW5lciB7XG4gICAgaDIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tNGdhcCk7XG4gICAgfVxufVxuLmNvbnRlbnRTbGlkZXIge1xuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmV5O1xuICAgIC8vcGFkZGluZzogdmFyKC0tZ2FwKTtcbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIC8vcGFkZGluZzogdmFyKC0tMmdhcCk7XG4gICAgfVxufVxuLmNvbnRlbnRTbGlkZXJfX2lubmVyIHtcbiAgICAvL21hcmdpbjogMCBhdXRvO1xuICAgIC8vbWF4LXdpZHRoOiB2YXIoLS1jb250ZW50TWF4V2lkdGgpO1xufVxuLmNvbnRlbnRTbGlkZXJfX3NsaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYXNwZWN0LXJhdGlvOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5hcnJvd1JpZ2h0SWNvbkNpcmNsZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICB3aWR0aDogMS42cmVtO1xuICAgIH1cbn1cbi5jb250ZW50U2xpZGVyX19pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgODAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIC44KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uY29udGVudFNsaWRlcl9fdGV4dCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICB3aWR0aDogMjdlbTtcbiAgICBwYWRkaW5nOiB2YXIoLS1nYXApO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGp1c3RpZnktc2VsZjogc3RyZXRjaDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLTJnYXApIHZhcigtLWdhcCkgdmFyKC0tNWdhcCkgdmFyKC0tMmdhcCk7XG4gICAgfVxufVxuLmNvbnRlbnRTbGlkZXJfX2xpbmsge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4zKTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICB9XG59XG4uc2xpZGVyQ29udHJvbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiB2YXIoLS1oYWxmZ2FwKTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1nYXApO1xuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lIHRyYW5zcGFyZW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMS40cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICB9XG4gICAgfVxufVxuLnNsaWRlckNvbnRyb2xzLS1oZWFkZXJJbm5lciB7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxufVxuLnNsaWRlckNvbnRyb2xzLS1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAycHg7XG4gICAgQGluY2x1ZGUgbXEocykge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IHZhcigtLWdhcCk7XG4gICAgfVxufVxuLyoqL1xuLnRlc3RpbW9uaWFsU2xpZGVyIHtcbiAgICAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBhc3BlY3QtcmF0aW86IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLnNsaWRlckNvbnRyb2xzIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgICYubW9kdWxlLS0ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmlsdGVyOiBpbnZlcnQoMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4udGVzdGltb25pYWxTbGlkZXJfX2lubmVyIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWNvbnRlbnRNYXhXaWR0aCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG59XG4udGVzdGltb25pYWxTbGlkZXJfX2NvbnRhaW5lciB7XG5cbn1cbi50ZXN0aW1vbmlhbFNsaWRlcl9fc3RhcnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygyLjUgKiB2YXIoLS1nYXApKTtcbiAgICBpbWcge1xuXG4gICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxufVxuLnRlc3RpbW9uaWFsU2xpZGVyX190ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4OiAxO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogdmFyKC0tZ2FwKSAwIHZhcigtLTJnYXApIDA7XG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIC8vanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgICAgZm9vdGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuLyoqL1xuLmV4dHJhVmVydGljYWxTcGFjZS0tMSB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWdhcCk7XG59XG4uZXh0cmFWZXJ0aWNhbFNwYWNlLS0yIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tMmdhcCk7XG59XG4uZXh0cmFWZXJ0aWNhbFNwYWNlLS0zIHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tM2dhcCk7XG59XG4uZXh0cmFWZXJ0aWNhbFNwYWNlLS00IHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tNGdhcCk7XG59XG4vKiovXG4uYnJlYWRDcnVtYnMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogLjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLWdhcCkpO1xuICAgIHNwYW4ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuMjVyZW07XG4gICAgfVxuICAgICoge1xuICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uZ3JpZENvbnRhaW5lci0tYnJlYWRDcnVtYnMge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cbi8qKi9cbi5zbWFsbFVwcGVyY2FzZU5vTWFyZ2luVG9wIHtcbiAgICBmb250LXNpemU6IC45cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLWdhcCkpO1xufVxuLmFuY2hvciB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3ItMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG59XG4ubW9kdWxlLS1mdWxsV2lkdGhJbWFnZVRleHRMaW5rIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAuZ3JpZENvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgZ2FwOiAwO1xuICAgICAgICBAaW5jbHVkZSBtcShzKSB7XG4gICAgICAgICAgICBnYXA6IHZhcigtLTJnYXApO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ncmlkSXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICAuZ3JpZEl0ZW0tLTEge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNjclO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5ncmlkSXRlbS0tMiB7XG4gICAgICAgIHBhZGRpbmc6IHZhcigtLWdhcCk7XG4gICAgICAgIEBpbmNsdWRlIG1xKHMpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLTJnYXApO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLTRnYXApO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLTRnYXApO1xuICAgICAgICB9XG5cbiAgICB9XG59XG4uZnVsbFdpZHRoSW1hZ2VUZXh0TGlua19faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbi5uYXZfX2NvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICBAaW5jbHVkZSBtcShsKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogdmFyKC0tMmdhcCk7XG4gICAgICAgICAgICBib3R0b206IC0xcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDE1cmVtO1xuICAgICAgICAgICAgei1pbmRleDogMjAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxZW0gNTBweCAxZW0gMDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC90aGVtZS9wdWJsaWMvYXNzZXRzL2ltZy9hcnJvdy5wbmcpIG5vLXJlcGVhdCByaWdodCAxLjVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA1MHB4IDhweDtcbiAgICAgICAgJiArIGxpIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvci0xO1xuICAgICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5ibG9nX190aXRsZSB7XG4gICAgc21hbGwge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZGVmYXVsdC1mb250LWZhbWlseTtcbiAgICAgICAgYiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG4gICAgfVxufVxuLmJsb2dMaXN0SXRlbSB7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLTJnYXApO1xuICAgIC5ibG9nX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmICsgLmJsb2dMaXN0SXRlbSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAuZ3JpZENvbnRhaW5lcjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHByaW1hcnktY29sb3ItMTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tMmdhcCk7XG4gICAgfVxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuLmJsb2dfX3ByZXZpZXdMaW5rIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cbi8qKi9cbi5pbWFnZSBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdhcCk7XG59XG4uYnRuX193cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxufVxuLm1vZHVsZS0tY2VudGVyZWQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5nYWxsZXJ5X19pdGVtIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdhcCk7XG4gICAgfVxufVxuLm9mZnNjcmVlbl9fdG9nZ2xlV3JhcHBlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IHZhcigtLWdhcCk7XG4gICAgLy9yaWdodDogdmFyKC0tZ2FwKTtcbiAgICAub2Zmc2NyZWVuX190b2dnbGUge1xuXG5cblxuXG4gICAgICAgIHRvcDogdmFyKC0tZ2FwKTtcblxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgcmlnaHQ6IHZhcigtLTJnYXApO1xuXG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICB9XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB3aWR0aDogMS40cmVtO1xuICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgZmlsbDogJHByaW1hcnktY29sb3ItMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtcShtKSB7XG4gICAgICAgIC5vZmZzY3JlZW5fX3RvZ2dsZSB7XG4gICAgICAgICAgICB0b3A6IHZhcigtLTJnYXApO1xuICAgICAgICAgICAgcmlnaHQ6IHZhcigtLTNnYXApO1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b3RvcCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiBhdXRvO1xuICAgIHJpZ2h0OiB2YXIoLS0yZ2FwKTtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGhlaWdodDogNHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjVyZW0gMS41cmVtIDAgMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAmOmhvdmVyIHtcblxuICAgIH1cbiAgICBiYWNrZ3JvdW5kOiAkYmx1ZTtcbiAgICAmLnZpc2libGUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmLmhpZGRlbiB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxLjRyZW07XG4gICAgICAgIHBhdGgge1xuICAgICAgICAgICAgZmlsbDogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdyaWRDb250YWluZXItLTEwMCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG4uYnRuIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDBweDtcbiAgICAgICAgaGVpZ2h0OiAwcHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogMTBweCAwIDEwcHggMTVweDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkZ29sZDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAuMWVtO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5uYXZfX3RleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn0iXSwiZmlsZSI6ImRldi5jc3MifQ== */
