@charset "UTF-8";
:root {
  --font-primary:         'Inter', Arial, sans-serif;
  --font-secondary:       'Inter', Arial, sans-serif;
  --black:                #232323;
  --white:                #ffffff;
  --green:                #50B42E;
  --green-600:            #409025;
  --grey:                 #F9F9F9;
  --grey-20:              #FAFAFA;
  --grey-100:             #E5E5E5;
  --grey-200:             #C7C7C7;
  --grey-400:             #959595;
  --grey-600:             #646464;
  --grey-800:             #050505;
  --grey-900:             #050505;
  --blue:                 #211D4C;
  --light-blue:           #EFF5FE;
  --font-size-base:       1rem;
  --line-height-base:     1.5;
}

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

:root {
  --swiper-theme-color: #007aff;
  /*
    --swiper-preloader-color: var(--swiper-theme-color);
    --swiper-wrapper-transition-timing-function: initial;
    */
}

.swiper,
swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

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

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

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

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

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

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

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

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

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

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

/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

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

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

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

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

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

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

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

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

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

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/*
    Dots plugin
*/
/*
    Navigation plugin
*/
.carousel {
  position: relative;
  box-sizing: border-box;
}

.carousel *,
.carousel *:before,
.carousel *:after {
  box-sizing: inherit;
}

.carousel.is-draggable {
  cursor: move;
  cursor: grab;
}

.carousel.is-dragging {
  cursor: move;
  cursor: grabbing;
}

.carousel__viewport {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  max-height: 100%;
}

.carousel__track {
  display: flex;
}

.carousel__slide {
  flex: 0 0 auto;
  width: var(--carousel-slide-width, 60%);
  max-width: 100%;
  padding: 1rem;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.has-dots {
  margin-bottom: calc(0.5rem + 22px);
}

.carousel__dots {
  margin: 0 auto;
  padding: 0;
  position: absolute;
  top: calc(100% + 0.5rem);
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  list-style: none;
  user-select: none;
}

.carousel__dots .carousel__dot {
  margin: 0;
  padding: 0;
  display: block;
  position: relative;
  width: 22px;
  height: 22px;
  cursor: pointer;
}

.carousel__dots .carousel__dot:after {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: currentColor;
  opacity: 0.25;
  transition: opacity 0.15s ease-in-out;
}

.carousel__dots .carousel__dot.is-selected:after {
  opacity: 1;
}

.carousel__button {
  width: var(--carousel-button-width, 48px);
  height: var(--carousel-button-height, 48px);
  padding: 0;
  border: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: all;
  cursor: pointer;
  color: var(--carousel-button-color, currentColor);
  background: var(--carousel-button-bg, transparent);
  border-radius: var(--carousel-button-border-radius, 50%);
  box-shadow: var(--carousel-button-shadow, none);
  transition: opacity 0.15s ease;
}

.carousel__button.is-prev, .carousel__button.is-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.carousel__button.is-prev {
  left: 10px;
}

.carousel__button.is-next {
  right: 10px;
}

.carousel__button[disabled] {
  cursor: default;
  opacity: 0.3;
}

.carousel__button svg {
  width: var(--carousel-button-svg-width, 50%);
  height: var(--carousel-button-svg-height, 50%);
  fill: none;
  stroke: currentColor;
  stroke-width: var(--carousel-button-svg-stroke-width, 1.5);
  stroke-linejoin: bevel;
  stroke-linecap: round;
  filter: var(--carousel-button-svg-filter, none);
  pointer-events: none;
}

/*
  Thumbs plugin
*/
/* 3/2 */
/*
  HTML plugin
*/
/*
  Toolbar plugin
*/
html.with-fancybox {
  scroll-behavior: auto;
}

body.compensate-for-scrollbar {
  overflow: hidden !important;
  touch-action: none;
}

.fancybox__container {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  direction: ltr;
  margin: 0;
  padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  color: var(--fancybox-color, #fff);
  -webkit-tap-highlight-color: transparent;
  overflow: hidden;
  z-index: 1050;
  outline: none;
  transform-origin: top left;
  --carousel-button-width: 48px;
  --carousel-button-height: 48px;
  --carousel-button-svg-width: 24px;
  --carousel-button-svg-height: 24px;
  --carousel-button-svg-stroke-width: 2.5;
  --carousel-button-svg-filter: drop-shadow(1px 1px 1px rgba(0, 0, 0, 0.4));
}

.fancybox__container *,
.fancybox__container *::before,
.fancybox__container *::after {
  box-sizing: inherit;
}

.fancybox__container :focus {
  outline: none;
}

body:not(.is-using-mouse) .fancybox__container :focus {
  box-shadow: 0 0 0 1px #fff, 0 0 0 2px var(--fancybox-accent-color, rgba(1, 210, 232, 0.94));
}

@media all and (min-width: 1024px) {
  .fancybox__container {
    --carousel-button-width: 48px;
    --carousel-button-height: 48px;
    --carousel-button-svg-width: 27px;
    --carousel-button-svg-height: 27px;
  }
}

.fancybox__backdrop {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: var(--fancybox-bg, rgba(24, 24, 27, 0.92));
}

.fancybox__carousel {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  /* For Safari */
  height: 100%;
  z-index: 10;
}

.fancybox__carousel.has-dots {
  margin-bottom: calc(0.5rem + 22px);
}

.fancybox__viewport {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible;
  cursor: default;
}

.fancybox__track {
  display: flex;
  height: 100%;
}

.fancybox__slide {
  flex: 0 0 auto;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 48px 8px 8px 8px;
  position: relative;
  overscroll-behavior: contain;
  display: flex;
  flex-direction: column;
  outline: 0;
  overflow: auto;
  --carousel-button-width: 36px;
  --carousel-button-height: 36px;
  --carousel-button-svg-width: 22px;
  --carousel-button-svg-height: 22px;
}

.fancybox__slide::before, .fancybox__slide::after {
  content: "";
  flex: 0 0 0;
  margin: auto;
}

@media all and (min-width: 1024px) {
  .fancybox__slide {
    padding: 64px 100px;
  }
}

.fancybox__content {
  margin: 0 env(safe-area-inset-right, 0px) 0 env(safe-area-inset-left, 0px);
  padding: 36px;
  color: var(--fancybox-content-color, #374151);
  background: var(--fancybox-content-bg, #fff);
  position: relative;
  align-self: center;
  display: flex;
  flex-direction: column;
  z-index: 20;
}

.fancybox__content :focus:not(.carousel__button.is-close) {
  outline: thin dotted;
  box-shadow: none;
}

.fancybox__caption {
  align-self: center;
  max-width: 100%;
  margin: 0;
  padding: 1rem 0 0 0;
  line-height: 1.375;
  color: var(--fancybox-color, currentColor);
  visibility: visible;
  cursor: auto;
  flex-shrink: 0;
  overflow-wrap: anywhere;
}

.is-loading .fancybox__caption {
  visibility: hidden;
}

.fancybox__container > .carousel__dots {
  top: 100%;
  color: var(--fancybox-color, #fff);
}

.fancybox__nav .carousel__button {
  z-index: 40;
}

.fancybox__nav .carousel__button.is-next {
  right: 8px;
}

@media all and (min-width: 1024px) {
  .fancybox__nav .carousel__button.is-next {
    right: 40px;
  }
}

.fancybox__nav .carousel__button.is-prev {
  left: 8px;
}

@media all and (min-width: 1024px) {
  .fancybox__nav .carousel__button.is-prev {
    left: 40px;
  }
}

.carousel__button.is-close {
  position: absolute;
  top: 8px;
  right: 8px;
  top: calc(env(safe-area-inset-top, 0px) + 8px);
  right: calc(env(safe-area-inset-right, 0px) + 8px);
  z-index: 40;
}

@media all and (min-width: 1024px) {
  .carousel__button.is-close {
    right: 40px;
  }
}

/* Close button located inside content area */
.fancybox__content > .carousel__button.is-close {
  position: absolute;
  top: -40px;
  right: 0;
  color: var(--fancybox-color, #fff);
}

.fancybox__no-click,
.fancybox__no-click button {
  pointer-events: none;
}

.fancybox__spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;
  height: 50px;
  color: var(--fancybox-color, currentColor);
}

.fancybox__slide .fancybox__spinner {
  cursor: pointer;
  z-index: 1053;
}

.fancybox__spinner svg {
  animation: fancybox-rotate 2s linear infinite;
  transform-origin: center center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
}

.fancybox__spinner svg circle {
  fill: none;
  stroke-width: 2.75;
  stroke-miterlimit: 10;
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
  animation: fancybox-dash 1.5s ease-in-out infinite;
  stroke-linecap: round;
  stroke: currentColor;
}

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

@keyframes fancybox-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px;
  }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -124px;
  }
}

.fancybox__backdrop,
.fancybox__caption,
.fancybox__nav,
.carousel__dots,
.carousel__button.is-close {
  opacity: var(--fancybox-opacity, 1);
}

/* Opening */
.fancybox__container.is-animated[aria-hidden="false"] .fancybox__backdrop,
.fancybox__container.is-animated[aria-hidden="false"] .fancybox__caption,
.fancybox__container.is-animated[aria-hidden="false"] .fancybox__nav,
.fancybox__container.is-animated[aria-hidden="false"] .carousel__dots,
.fancybox__container.is-animated[aria-hidden="false"] .carousel__button.is-close {
  animation: 0.15s ease backwards fancybox-fadeIn;
}

/* Closing */
.fancybox__container.is-animated.is-closing .fancybox__backdrop,
.fancybox__container.is-animated.is-closing .fancybox__caption,
.fancybox__container.is-animated.is-closing .fancybox__nav,
.fancybox__container.is-animated.is-closing .carousel__dots,
.fancybox__container.is-animated.is-closing .carousel__button.is-close {
  animation: 0.15s ease both fancybox-fadeOut;
}

.fancybox-fadeIn {
  animation: 0.15s ease both fancybox-fadeIn;
}

.fancybox-fadeOut {
  animation: 0.1s ease both fancybox-fadeOut;
}

.fancybox-zoomInUp {
  animation: 0.2s ease both fancybox-zoomInUp;
}

.fancybox-zoomOutDown {
  animation: 0.15s ease both fancybox-zoomOutDown;
}

/* Both `throwOut` classes are for closing animation after dragging up/down */
.fancybox-throwOutUp {
  animation: 0.15s ease both fancybox-throwOutUp;
}

.fancybox-throwOutDown {
  animation: 0.15s ease both fancybox-throwOutDown;
}

@keyframes fancybox-fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fancybox-fadeOut {
  to {
    opacity: 0;
  }
}

@keyframes fancybox-zoomInUp {
  from {
    transform: scale(0.97) translate3d(0, 16px, 0);
    opacity: 0;
  }
  to {
    transform: scale(1) translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes fancybox-zoomOutDown {
  to {
    transform: scale(0.97) translate3d(0, 16px, 0);
    opacity: 0;
  }
}

@keyframes fancybox-throwOutUp {
  to {
    transform: translate3d(0, -30%, 0);
    opacity: 0;
  }
}

@keyframes fancybox-throwOutDown {
  to {
    transform: translate3d(0, 30%, 0);
    opacity: 0;
  }
}

.fancybox__carousel .carousel__slide {
  scrollbar-width: thin;
  scrollbar-color: #ccc rgba(255, 255, 255, 0.1);
}

.fancybox__carousel .carousel__slide::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

.fancybox__carousel .carousel__slide::-webkit-scrollbar-track {
  background-color: rgba(255, 255, 255, 0.1);
}

.fancybox__carousel .carousel__slide::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 2px;
  box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
}

.fancybox__carousel.is-draggable .fancybox__slide,
.fancybox__carousel.is-draggable .fancybox__slide .fancybox__content {
  cursor: move;
  cursor: grab;
}

.fancybox__carousel.is-dragging .fancybox__slide,
.fancybox__carousel.is-dragging .fancybox__slide .fancybox__content {
  cursor: move;
  cursor: grabbing;
}

.fancybox__carousel .fancybox__slide .fancybox__content {
  cursor: auto;
}

.fancybox__carousel .fancybox__slide.can-zoom_in .fancybox__content {
  cursor: zoom-in;
}

.fancybox__carousel .fancybox__slide.can-zoom_out .fancybox__content {
  cursor: zoom-out;
}

.fancybox__carousel .fancybox__slide.is-draggable .fancybox__content {
  cursor: move;
  cursor: grab;
}

.fancybox__carousel .fancybox__slide.is-dragging .fancybox__content {
  cursor: move;
  cursor: grabbing;
}

.fancybox__image {
  transform-origin: 0 0;
  user-select: none;
  transition: none;
}

.has-image .fancybox__content {
  padding: 0;
  background: transparent;
  min-height: 1px;
}

.is-closing .has-image .fancybox__content {
  overflow: visible;
}

.has-image[data-image-fit="contain"] {
  overflow: visible;
  touch-action: none;
  /* Fix Mac OS Safari 11 - 13 */
}

.has-image[data-image-fit="contain"] .fancybox__content {
  flex-direction: row;
  flex-wrap: wrap;
}

.has-image[data-image-fit="contain"] .fancybox__image {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.has-image[data-image-fit="contain-w"] {
  overflow-x: hidden;
  overflow-y: auto;
}

.has-image[data-image-fit="contain-w"] .fancybox__content {
  min-height: auto;
}

.has-image[data-image-fit="contain-w"] .fancybox__image {
  max-width: 100%;
  height: auto;
}

.has-image[data-image-fit="cover"] {
  overflow: visible;
  touch-action: none;
}

.has-image[data-image-fit="cover"] .fancybox__content {
  width: 100%;
  height: 100%;
}

.has-image[data-image-fit="cover"] .fancybox__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content,
.fancybox__carousel .fancybox__slide.has-map .fancybox__content,
.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content,
.fancybox__carousel .fancybox__slide.has-video .fancybox__content,
.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content {
  max-width: 100%;
  flex-shrink: 1;
  min-height: 1px;
  overflow: visible;
}

.fancybox__carousel .fancybox__slide.has-iframe .fancybox__content,
.fancybox__carousel .fancybox__slide.has-map .fancybox__content,
.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content {
  width: 100%;
  height: 80%;
}

.fancybox__carousel .fancybox__slide.has-video .fancybox__content,
.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content {
  width: 960px;
  height: 540px;
  max-width: 100%;
  max-height: 100%;
}

.fancybox__carousel .fancybox__slide.has-map .fancybox__content,
.fancybox__carousel .fancybox__slide.has-pdf .fancybox__content,
.fancybox__carousel .fancybox__slide.has-video .fancybox__content,
.fancybox__carousel .fancybox__slide.has-html5video .fancybox__content {
  padding: 0;
  background: rgba(24, 24, 27, 0.9);
  color: #fff;
}

.fancybox__carousel .fancybox__slide.has-map .fancybox__content {
  background: #e5e3df;
}

.fancybox__html5video,
.fancybox__iframe {
  border: 0;
  display: block;
  height: 100%;
  width: 100%;
  background: transparent;
}

.fancybox-placeholder {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.fancybox__thumbs {
  flex: 0 0 auto;
  position: relative;
  padding: 0px 3px;
  opacity: var(--fancybox-opacity, 1);
}

.fancybox__container.is-animated[aria-hidden="false"] .fancybox__thumbs {
  animation: 0.15s ease-in backwards fancybox-fadeIn;
}

.fancybox__container.is-animated.is-closing .fancybox__thumbs {
  opacity: 0;
}

.fancybox__thumbs .carousel__slide {
  flex: 0 0 auto;
  width: var(--fancybox-thumbs-width, 96px);
  margin: 0;
  padding: 8px 3px;
  box-sizing: content-box;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  cursor: pointer;
}

.fancybox__thumbs .carousel__slide .fancybox__thumb::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-width: 5px;
  border-style: solid;
  border-color: var(--fancybox-accent-color, rgba(34, 213, 233, 0.96));
  opacity: 0;
  transition: opacity 0.15s ease;
  border-radius: var(--fancybox-thumbs-border-radius, 4px);
}

.fancybox__thumbs .carousel__slide.is-nav-selected .fancybox__thumb::after {
  opacity: 0.92;
}

.fancybox__thumbs .carousel__slide > * {
  pointer-events: none;
  user-select: none;
}

.fancybox__thumb {
  position: relative;
  width: 100%;
  /* Keep aspect ratio */
  padding-top: calc(100% / (var(--fancybox-thumbs-ratio, 1.5)));
  background-size: cover;
  background-position: center center;
  background-color: rgba(255, 255, 255, 0.1);
  background-repeat: no-repeat;
  border-radius: var(--fancybox-thumbs-border-radius, 4px);
}

.fancybox__toolbar {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 20;
  background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.006) 8.1%, rgba(0, 0, 0, 0.021) 15.5%, rgba(0, 0, 0, 0.046) 22.5%, rgba(0, 0, 0, 0.077) 29%, rgba(0, 0, 0, 0.114) 35.3%, rgba(0, 0, 0, 0.155) 41.2%, rgba(0, 0, 0, 0.198) 47.1%, rgba(0, 0, 0, 0.242) 52.9%, rgba(0, 0, 0, 0.285) 58.8%, rgba(0, 0, 0, 0.326) 64.7%, rgba(0, 0, 0, 0.363) 71%, rgba(0, 0, 0, 0.394) 77.5%, rgba(0, 0, 0, 0.419) 84.5%, rgba(0, 0, 0, 0.434) 91.9%, rgba(0, 0, 0, 0.44) 100%);
  padding: 0;
  touch-action: none;
  display: flex;
  justify-content: space-between;
  --carousel-button-svg-width: 20px;
  --carousel-button-svg-height: 20px;
  opacity: var(--fancybox-opacity, 1);
  text-shadow: var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.4));
}

@media all and (min-width: 1024px) {
  .fancybox__toolbar {
    padding: 8px;
  }
}

.fancybox__container.is-animated[aria-hidden="false"] .fancybox__toolbar {
  animation: 0.15s ease-in backwards fancybox-fadeIn;
}

.fancybox__container.is-animated.is-closing .fancybox__toolbar {
  opacity: 0;
}

.fancybox__toolbar__items {
  display: flex;
}

.fancybox__toolbar__items--left {
  margin-right: auto;
}

.fancybox__toolbar__items--center {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.fancybox__toolbar__items--right {
  margin-left: auto;
}

@media (max-width: 640px) {
  .fancybox__toolbar__items--center:not(:last-child) {
    display: none;
  }
}

.fancybox__counter {
  min-width: 72px;
  padding: 0 10px;
  line-height: var(--carousel-button-height, 48px);
  text-align: center;
  font-size: 17px;
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: subpixel-antialiased;
}

.fancybox__progress {
  background: var(--fancybox-accent-color, rgba(34, 213, 233, 0.96));
  height: 3px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: scaleX(0);
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 30;
  user-select: none;
}

.fancybox__container:fullscreen::backdrop {
  opacity: 0;
}

.fancybox__button--fullscreen g:nth-child(2) {
  display: none;
}

.fancybox__container:fullscreen .fancybox__button--fullscreen g:nth-child(1) {
  display: none;
}

.fancybox__container:fullscreen .fancybox__button--fullscreen g:nth-child(2) {
  display: block;
}

.fancybox__button--slideshow g:nth-child(2) {
  display: none;
}

.fancybox__container.has-slideshow .fancybox__button--slideshow g:nth-child(1) {
  display: none;
}

.fancybox__container.has-slideshow .fancybox__button--slideshow g:nth-child(2) {
  display: block;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Bold Italic"), local("Inter-BoldItalic"), url("../fonts/inter/Inter-BoldItalic.woff2") format("woff2");
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Medium Italic"), local("Inter-MediumItalic"), url("../fonts/inter/Inter-MediumItalic.woff2") format("woff2");
  font-weight: 500;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Thin Italic BETA"), local("Inter-ThinItalicBETA"), url("../fonts/inter/Inter-ThinItalicBETA.woff2") format("woff2");
  font-weight: 100;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Regular"), local("Inter-Regular"), url("../fonts/inter/Inter-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Black"), local("Inter-Black"), url("../fonts/inter/Inter-Black.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Black Italic"), local("Inter-BlackItalic"), url("../fonts/inter/Inter-BlackItalic.woff2") format("woff2");
  font-weight: 900;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Light BETA"), local("Inter-LightBETA"), url("../fonts/inter/Inter-LightBETA.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Semi Bold"), local("Inter-SemiBold"), url("../fonts/inter/Inter-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Extra Bold Italic"), local("Inter-ExtraBoldItalic"), url("../fonts/inter/Inter-ExtraBoldItalic.woff2") format("woff2");
  font-weight: 800;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Bold"), local("Inter-Bold"), url("../fonts/inter/Inter-Bold.woff2") format("woff2");
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Extra Light Italic BETA"), local("Inter-ExtraLightItalicBETA"), url("../fonts/inter/Inter-ExtraLightItalicBETA.woff2") format("woff2");
  font-weight: 200;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Extra Light BETA"), local("Inter-ExtraLightBETA"), url("../fonts/inter/Inter-ExtraLightBETA.woff2") format("woff2");
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Extra Bold"), local("Inter-ExtraBold"), url("../fonts/inter/Inter-ExtraBold.woff2") format("woff2");
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Thin BETA"), local("Inter-ThinBETA"), url("../fonts/inter/Inter-ThinBETA.woff2") format("woff2");
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Light Italic BETA"), local("Inter-LightItalicBETA"), url("../fonts/inter/Inter-LightItalicBETA.woff2") format("woff2");
  font-weight: 300;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Italic"), local("Inter-Italic"), url("../fonts/inter/Inter-Italic.woff2") format("woff2");
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Semi Bold Italic"), local("Inter-SemiBoldItalic"), url("../fonts/inter/Inter-SemiBoldItalic.woff2") format("woff2");
  font-weight: 600;
  font-style: italic;
}

@font-face {
  font-family: 'Inter';
  src: local("Inter Medium"), local("Inter-Medium"), url("../fonts/inter/Inter-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

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

html {
  height: 100%;
  font-size: 16px;
  line-height: 1.5;
}

body {
  min-height: 100%;
  color: var(--black);
  background-color: var(--white);
  font-family: var(--font-primary);
  font-size: 0.875rem;
}

@media (min-width: 768px) {
  body {
    font-size: 1rem;
  }
}

@media (min-width: 1230px) {
  body {
    font-size: 1.125rem;
  }
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 0;
  padding: 0;
  font-weight: 700;
  line-height: 120%;
  font-family: var(--font-secondary);
}

h1, .h1 {
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

@media (min-width: 768px) {
  h1, .h1 {
    font-weight: 800;
    font-size: 2.25rem;
  }
}

@media (min-width: 1230px) {
  h1, .h1 {
    font-size: 3.25rem;
    margin-bottom: 1.25rem;
  }
}

h2, .h2 {
  font-size: 1.25rem;
  margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
  h2, .h2 {
    font-weight: 800;
    font-size: 1.75rem;
  }
}

@media (min-width: 1230px) {
  h2, .h2 {
    font-size: 2rem;
  }
}

h3, .h3 {
  font-size: 1.5rem;
  margin-bottom: 1.25rem;
}

h4, .h4 {
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  h4, .h4 {
    font-size: 1.25rem;
  }
}

h5, .h5 {
  font-size: 1rem;
  margin-bottom: 1.25rem;
}

h6, .h6 {
  font-size: 0.875rem;
  margin-bottom: 1.25rem;
}

a {
  color: #000;
  text-decoration: underline;
}

a:hover {
  color: #000;
  text-decoration: none;
}

p {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p:last-child {
  margin-bottom: 0;
}

@media (min-width: 1230px) {
  p {
    margin-bottom: 1rem;
  }
  p:last-child {
    margin-bottom: 0;
  }
}

ol,
ul {
  padding-left: 2rem;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1.25rem;
}

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

[data-fullscreen] {
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  --bs-gutter-x: 2.5rem;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) / 2);
  padding-left: calc(var(--bs-gutter-x) / 2);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 35rem;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 45.5rem;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 60rem;
  }
}

@media (min-width: 1230px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 75rem;
  }
}

.row {
  --bs-gutter-x: 1.25rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--bs-gutter-y) * -1);
  margin-right: calc(var(--bs-gutter-x) / -2);
  margin-left: calc(var(--bs-gutter-x) / -2);
}

.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) / 2);
  padding-left: calc(var(--bs-gutter-x) / 2);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.33333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.66667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-left: 8.33333%;
}

.offset-2 {
  margin-left: 16.66667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333%;
}

.offset-5 {
  margin-left: 41.66667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333%;
}

.offset-8 {
  margin-left: 66.66667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333%;
}

.offset-11 {
  margin-left: 91.66667%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
  .g-sm-0,
  .gx-sm-0 {
    --bs-gutter-x: 0;
  }
  .g-sm-0,
  .gy-sm-0 {
    --bs-gutter-y: 0;
  }
  .g-sm-1,
  .gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 1rem;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 1rem;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 3rem;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}

@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}

@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}

@media (min-width: 1230px) {
  .col-xl {
    flex: 1 0 0%;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
  .g-xl-0,
  .gx-xl-0 {
    --bs-gutter-x: 0;
  }
  .g-xl-0,
  .gy-xl-0 {
    --bs-gutter-y: 0;
  }
  .g-xl-1,
  .gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}

.btn {
  margin: 0;
  padding: 0;
  height: 32px;
  border: none;
  outline: none;
  border-radius: 0;
  cursor: pointer;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1rem;
  user-select: none;
  text-align: center;
  white-space: nowrap;
  position: relative;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}

.btn span {
  height: 100%;
  padding: 0.25rem 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn:after, .btn:before {
  z-index: 1;
  content: '';
  width: 33px;
  height: 32px;
  flex-shrink: 0;
  background-image: url("../img/btn_pattern_full.svg");
  background-repeat: no-repeat;
}

.btn:hover {
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
}

@media (min-width: 768px) {
  .btn {
    height: 40px;
    font-size: 1rem;
    line-height: 1.25rem;
  }
  .btn:after, .btn:before {
    width: 41px;
    height: 40px;
  }
}

@media (min-width: 1230px) {
  .btn {
    height: 50px;
  }
  .btn:after, .btn:before {
    width: 51px;
    height: 50px;
  }
}

.btn-primary {
  color: var(--green);
  background: transparent;
}

.btn-primary span {
  background: var(--white);
  border-top: 1px solid #E9F6E5;
  border-bottom: 1px solid #51B42F;
}

.btn-primary:before {
  background-position: 0 0;
}

.btn-primary:after {
  background-position: -33px 0;
}

.btn-primary.hover span, .btn-primary:hover span, .btn-primary.active span {
  color: var(--white);
  background: var(--green);
  border-top-color: var(--green);
  border-bottom-color: var(--green);
}

.btn-primary.hover:before, .btn-primary:hover:before, .btn-primary.active:before {
  background-position: 0 -50px;
}

.btn-primary.hover:after, .btn-primary:hover:after, .btn-primary.active:after {
  background-position: -33px -50px;
}

.btn-primary.hover:active, .btn-primary:hover:active, .btn-primary.active:active {
  opacity: 0.9;
}

.btn-primary.disabled span, .btn-primary:disabled span {
  color: var(--white);
  background: var(--grey-100);
  border-top-color: var(--grey-100);
  border-bottom-color: var(--grey-100);
}

.btn-primary.disabled:after, .btn-primary:disabled:after {
  background-position: -33px -106px;
}

.btn-primary.disabled:before, .btn-primary:disabled:before {
  background-position: 0 -106px;
}

@media (min-width: 768px) {
  .btn-primary:before {
    background-position: -66px 0;
  }
  .btn-primary:after {
    background-position: -107px 0;
  }
  .btn-primary.hover:before, .btn-primary:hover:before, .btn-primary.active:before {
    background-position: -66px -50px;
  }
  .btn-primary.hover:after, .btn-primary:hover:after, .btn-primary.active:after {
    background-position: -107px -50px;
  }
  .btn-primary.disabled:before, .btn-primary:disabled:before {
    background-position: -66px -100px;
  }
  .btn-primary.disabled:after, .btn-primary:disabled:after {
    background-position: -107px -100px;
  }
}

@media (min-width: 1230px) {
  .btn-primary:before {
    background-position: -148px 0;
  }
  .btn-primary:after {
    background-position: -200px 0;
  }
  .btn-primary.hover:before, .btn-primary:hover:before, .btn-primary.active:before {
    background-position: -148px -50px;
  }
  .btn-primary.hover:after, .btn-primary:hover:after, .btn-primary.active:after {
    background-position: -200px -50px;
  }
  .btn-primary.disabled:before, .btn-primary:disabled:before {
    background-position: -148px -100px;
  }
  .btn-primary.disabled:after, .btn-primary:disabled:after {
    background-position: -200px -100px;
  }
}

@media (min-width: 768px) {
  .btn-xs {
    height: 32px;
    font-size: 0.75rem;
    line-height: 1rem;
  }
  .btn-xs:after, .btn-xs:before {
    z-index: 1;
    content: '';
    width: 33px;
    height: 32px;
    flex-shrink: 0;
  }
  .btn-xs:before {
    background-position: 0 0;
  }
  .btn-xs:after {
    background-position: -33px 0;
  }
  .btn-xs.hover span, .btn-xs:hover span, .btn-xs.active span {
    color: var(--white);
    background: var(--green);
    border-top-color: var(--green);
    border-bottom-color: var(--green);
  }
  .btn-xs.hover:before, .btn-xs:hover:before, .btn-xs.active:before {
    background-position: 0 -50px;
  }
  .btn-xs.hover:after, .btn-xs:hover:after, .btn-xs.active:after {
    background-position: -33px -50px;
  }
  .btn-xs.hover:active, .btn-xs:hover:active, .btn-xs.active:active {
    opacity: 0.9;
  }
  .btn-xs.disabled span, .btn-xs:disabled span {
    color: var(--white);
    background: var(--grey-100);
    border-top-color: var(--grey-100);
    border-bottom-color: var(--grey-100);
  }
  .btn-xs.disabled:after, .btn-xs:disabled:after {
    background-position: -33px -106px;
  }
  .btn-xs.disabled:before, .btn-xs:disabled:before {
    background-position: 0 -106px;
  }
}

@media (min-width: 1230px) {
  .btn-xs {
    height: 40px;
    font-size: 1rem;
    line-height: 1.25rem;
  }
  .btn-xs:after, .btn-xs:before {
    width: 41px;
    height: 40px;
  }
  .btn-xs:before {
    background-position: -66px 0;
  }
  .btn-xs:after {
    background-position: -107px 0;
  }
  .btn-xs.hover:before, .btn-xs:hover:before, .btn-xs.active:before {
    background-position: -66px -50px;
  }
  .btn-xs.hover:after, .btn-xs:hover:after, .btn-xs.active:after {
    background-position: -107px -50px;
  }
  .btn-xs.disabled:before, .btn-xs:disabled:before {
    background-position: -66px -100px;
  }
  .btn-xs.disabled:after, .btn-xs:disabled:after {
    background-position: -107px -100px;
  }
}

@media (min-width: 1230px) {
  .btn-sm {
    height: 40px;
    font-size: 1rem;
    line-height: 1.25rem;
  }
  .btn-sm:after, .btn-sm:before {
    width: 41px;
    height: 40px;
  }
  .btn-sm:before {
    background-position: -66px 0;
  }
  .btn-sm:after {
    background-position: -107px 0;
  }
  .btn-sm.hover:before, .btn-sm:hover:before, .btn-sm.active:before {
    background-position: -66px -50px;
  }
  .btn-sm.hover:after, .btn-sm:hover:after, .btn-sm.active:after {
    background-position: -107px -50px;
  }
  .btn-sm.disabled:before, .btn-sm:disabled:before {
    background-position: -66px -100px;
  }
  .btn-sm.disabled:after, .btn-sm:disabled:after {
    background-position: -107px -100px;
  }
}

.btn-white {
  color: var(--green);
  background: transparent;
}

.btn-white span {
  background: var(--white);
  border-top: 1px solid var(--white);
  border-bottom: 1px solid var(--white);
}

.btn-white:before {
  background-position: 0 -156px;
}

.btn-white:after {
  background-position: -33px -156px;
}

.btn-white.hover span, .btn-white:hover span, .btn-white.active span {
  color: var(--white);
  background: var(--green-600);
  border-top-color: var(--green-600);
  border-bottom-color: var(--green-600);
}

.btn-white.hover:before, .btn-white:hover:before, .btn-white.active:before {
  background-position: 0 -206px;
}

.btn-white.hover:after, .btn-white:hover:after, .btn-white.active:after {
  background-position: -33px -206px;
}

.btn-white.hover:active, .btn-white:hover:active, .btn-white.active:active {
  opacity: 0.9;
}

.btn-white.disabled span, .btn-white:disabled span {
  color: var(--white);
  background: var(--grey-100);
  border-top-color: var(--grey-100);
  border-bottom-color: var(--grey-100);
}

.btn-white.disabled:before, .btn-white:disabled:before {
  background-position: 0 -256px;
}

.btn-white.disabled:after, .btn-white:disabled:after {
  background-position: -33px -256px;
}

@media (min-width: 768px) {
  .btn-white:before {
    background-position: -66px -150px;
  }
  .btn-white:after {
    background-position: -107px -150px;
  }
  .btn-white.hover:before, .btn-white:hover:before, .btn-white.active:before {
    background-position: -66px -200px;
  }
  .btn-white.hover:after, .btn-white:hover:after, .btn-white.active:after {
    background-position: -107px -200px;
  }
  .btn-white.disabled:before, .btn-white:disabled:before {
    background-position: -66px -100px;
  }
  .btn-white.disabled:after, .btn-white:disabled:after {
    background-position: -107px -100px;
  }
}

@media (min-width: 1230px) {
  .btn-white:before {
    background-position: -148px -150px;
  }
  .btn-white:after {
    background-position: -200px -150px;
  }
  .btn-white.hover:before, .btn-white:hover:before, .btn-white.active:before {
    background-position: -148px -200px;
  }
  .btn-white.hover:after, .btn-white:hover:after, .btn-white.active:after {
    background-position: -200px -200px;
  }
  .btn-white.disabled:before, .btn-white:disabled:before {
    background-position: -148px -250px;
  }
  .btn-white.disabled:after, .btn-white:disabled:after {
    background-position: -200px -250px;
  }
}

.btn-text {
  margin: 0;
  padding: 0;
  font-weight: 500;
  font-size: 0.75rem;
  stroke: var(--green);
  color: var(--green);
  border: none;
  outline: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  background: transparent;
  text-decoration: none;
  transition: .25s;
}

.btn-text i {
  font-size: 0;
  line-height: 0;
  height: 1.5rem;
  display: inline-block;
  flex-shrink: 0;
  margin-left: 0.5rem;
}

.btn-text:hover {
  color: var(--black);
  stroke: var(--black);
  text-decoration: none;
  transition: .25s;
}

.btn-nav {
  border: none;
  outline: none;
  font-size: 0;
  line-height: 0;
  width: 2.125rem;
  height: 2.125rem;
  cursor: pointer;
  border-radius: 50%;
  fill: var(--black);
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .25s;
}

.btn-nav i {
  height: 0.6875rem;
  display: inline-block;
}

.btn-nav:hover {
  fill: var(--green);
  transition: .25s;
}

.btn-nav:disabled,
.btn-nav .swiper-button-disabled {
  cursor: default;
  fill: var(--grey-200);
}

.btn-nav--grey {
  background: var(--grey);
}

.hidden-disable .btn-nav:disabled,
.hidden-disable .btn-nav .swiper-button-disabled {
  opacity: 0 !important;
  visibility: hidden !important;
}

input:not([type=checkbox]):not([type=radio]),
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input, textarea {
  outline: none;
}

input:focus:required:invalid, textarea:focus:required:invalid {
  border-color: red;
}

input:required:valid, textarea:required:valid {
  border-color: green;
}

:active, :hover, :focus {
  outline: 0 !important;
  outline-offset: 0 !important;
}

option::selection {
  background: #ccc;
}

option::-moz-selection {
  background: #ccc;
}

option::-webkit-selection {
  background: #ccc;
  color: #fff;
}

.field {
  width: 100%;
  display: block;
  font-weight: 400;
  position: relative;
  background: transparent;
}

.field input[type=text], .field input[type=email], .field input[type=password], .field textarea {
  margin: 0;
  width: 100%;
  height: 3rem;
  outline: none;
  color: #5b3d38;
  box-shadow: none;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5rem;
  padding: 0.6875rem 1rem;
  background: #fff;
  display: inline-block;
  vertical-align: middle;
  border: 0.0625rem solid #5b3d38;
}

.field input[type=text]::-moz-placeholder, .field input[type=email]::-moz-placeholder, .field input[type=password]::-moz-placeholder, .field textarea::-moz-placeholder {
  color: #909090;
  opacity: 1;
}

.field input[type=text]:-ms-input-placeholder, .field input[type=email]:-ms-input-placeholder, .field input[type=password]:-ms-input-placeholder, .field textarea:-ms-input-placeholder {
  color: #909090;
}

.field input[type=text]::-webkit-input-placeholder, .field input[type=email]::-webkit-input-placeholder, .field input[type=password]::-webkit-input-placeholder, .field textarea::-webkit-input-placeholder {
  color: #909090;
}

.field input[type=text]::placeholder, .field input[type=email]::placeholder, .field input[type=password]::placeholder, .field textarea::placeholder {
  color: #909090;
}

.field input[type=text]::-ms-clear, .field input[type=email]::-ms-clear, .field input[type=password]::-ms-clear, .field textarea::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

.field input[type=text]:focus, .field input[type=text]:active, .field input[type=email]:focus, .field input[type=email]:active, .field input[type=password]:focus, .field input[type=password]:active, .field textarea:focus, .field textarea:active {
  outline: none;
  box-shadow: 0 0 0 0.3125rem rgba(92, 173, 255, 0.5);
}

.field input[type=text]:focus::-moz-placeholder, .field input[type=text]:active::-moz-placeholder, .field input[type=email]:focus::-moz-placeholder, .field input[type=email]:active::-moz-placeholder, .field input[type=password]:focus::-moz-placeholder, .field input[type=password]:active::-moz-placeholder, .field textarea:focus::-moz-placeholder, .field textarea:active::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.field input[type=text]:focus:-ms-input-placeholder, .field input[type=text]:active:-ms-input-placeholder, .field input[type=email]:focus:-ms-input-placeholder, .field input[type=email]:active:-ms-input-placeholder, .field input[type=password]:focus:-ms-input-placeholder, .field input[type=password]:active:-ms-input-placeholder, .field textarea:focus:-ms-input-placeholder, .field textarea:active:-ms-input-placeholder {
  color: transparent;
}

.field input[type=text]:focus::-webkit-input-placeholder, .field input[type=text]:active::-webkit-input-placeholder, .field input[type=email]:focus::-webkit-input-placeholder, .field input[type=email]:active::-webkit-input-placeholder, .field input[type=password]:focus::-webkit-input-placeholder, .field input[type=password]:active::-webkit-input-placeholder, .field textarea:focus::-webkit-input-placeholder, .field textarea:active::-webkit-input-placeholder {
  color: transparent;
}

.field input[type=text]:focus::placeholder, .field input[type=text]:active::placeholder, .field input[type=email]:focus::placeholder, .field input[type=email]:active::placeholder, .field input[type=password]:focus::placeholder, .field input[type=password]:active::placeholder, .field textarea:focus::placeholder, .field textarea:active::placeholder {
  color: transparent;
}

.field input[type=text].error, .field input[type=email].error, .field input[type=password].error, .field textarea.error {
  border-color: red !important;
}

.field textarea {
  height: auto;
  resize: none;
}

.field__icon {
  fill: #5b3d38;
  font-size: 0;
  line-height: 0;
  top: calc(50% - 0.75rem);
  left: 1rem;
  height: 1.5rem;
  position: absolute;
  display: inline-block;
}

.field--icon input[type=text], .field--icon input[type=email], .field--icon input[type=password], .field--icon textarea {
  padding-left: 3rem;
}

.pretty-checkbox {
  position: relative;
}

.pretty-checkbox__input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
}

.pretty-checkbox__input:focus + .pretty-checkbox__label:before {
  box-shadow: 0 0 5px #000;
}

.pretty-checkbox__input:checked + .pretty-checkbox__label::before {
  background-color: #000;
  border-color: #000;
}

.pretty-checkbox__input:checked + .pretty-checkbox__label::after {
  opacity: 1;
  border-top-style: none;
  border-right-style: none;
  transform: rotate(-45deg);
  height: 0.4rem;
  width: 0.8rem;
  border-color: #fff;
  border-radius: 0;
  border-width: 2px;
  top: 0.3125rem;
  left: 0.25rem;
}

.pretty-checkbox__input:disabled + .pretty-checkbox__label {
  opacity: 0.4;
}

.pretty-checkbox__label {
  color: #3a3a3a;
  font-size: 0.875rem;
  line-height: 1.25rem;
  position: relative;
  padding-left: 1.875rem;
  display: inline-block;
}

.pretty-checkbox__label::before {
  top: 0;
  left: 0;
  z-index: 1;
  content: '';
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  position: absolute;
  border: 1px solid #000;
  border-radius: 0.1875rem;
}

.pretty-checkbox__label:after {
  z-index: 5;
  content: '';
  opacity: 0;
  height: 1.25rem;
  width: 1.25rem;
  border: 1px solid #DFE3E7;
  position: absolute;
  border-radius: 0.25rem;
  top: 0;
  left: 0;
  -webkit-transition: 100ms ease-in-out;
  transition: 100ms ease-in-out;
}

.pretty-radio {
  font-size: 0;
  line-height: 0;
  font-weight: 400;
  position: relative;
  display: inline-block;
}

.pretty-radio__input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.pretty-radio__label {
  color: #3a3a3a;
  font-size: 0.875rem;
  line-height: 1.25rem;
  position: relative;
  padding-left: 1.875rem;
  display: block;
}

.pretty-radio__label::before {
  top: 0;
  left: 0;
  z-index: 1;
  content: '';
  width: 1.25rem;
  height: 1.25rem;
  display: block;
  position: absolute;
  border-radius: 50%;
  border: 1px solid #000;
}

.pretty-radio__label:after {
  top: 0.3125rem;
  left: 0.3125rem;
  z-index: 2;
  content: '';
  width: 0.625rem;
  height: 0.625rem;
  display: block;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  background: #000;
  border-radius: 50%;
}

.pretty-radio__input:checked + .pretty-radio__label::before {
  border-color: #000;
}

.pretty-radio__input:checked + .pretty-radio__label::after {
  opacity: 1;
  visibility: visible;
  transition: all 0.3s cubic-bezier(0.35, 0.9, 0.4, 0.9);
}

.pretty-radio__input:disabled + .pretty-radio__label {
  opacity: 0.4;
}

/*===============================
=            Choices            =
===============================*/
.choices {
  position: relative;
  margin-bottom: 1.5rem;
  font-size: 1rem;
}

.choices:focus {
  z-index: 20;
  outline: none;
}

.choices:last-child {
  margin-bottom: 0;
}

.choices.is-disabled .choices__inner,
.choices.is-disabled .choices__input {
  background-color: #eaeaea;
  cursor: not-allowed;
  user-select: none;
}

.choices.is-disabled .choices__item {
  cursor: not-allowed;
}

.choices.is-focused {
  z-index: 20;
}

.choices [hidden] {
  display: none !important;
}

.choices[data-type*='select-one'] {
  cursor: pointer;
}

.choices[data-type*='select-one'] .choices__inner {
  padding-bottom: 0.5rem;
}

.choices[data-type*='select-one'] .choices__input {
  display: block;
  width: 100%;
  padding: 0.625rem;
  border-bottom: 1px solid #5b3d38;
  background-color: #ffffff;
  margin: 0;
}

.choices[data-type*='select-one'] .choices__button {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);
  padding: 0;
  background-size: 8px;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.625rem;
  margin-right: 1.5625rem;
  height: 1.25rem;
  width: 1.25rem;
  border-radius: 0.625rem;
  opacity: 0.5;
}

.choices[data-type*='select-one'] .choices__button:hover, .choices[data-type*='select-one'] .choices__button:focus {
  opacity: 1;
}

.choices[data-type*='select-one'] .choices__button:focus {
  box-shadow: 0 0 0 2px #00bcd4;
}

.choices[data-type*='select-one'] .choices__item[data-value=''] .choices__button {
  display: none;
}

.choices[data-type*='select-one']:after {
  content: '';
  height: 0;
  width: 0;
  border-style: solid;
  border-color: #333333 transparent transparent transparent;
  border-width: 0.3125rem;
  position: absolute;
  right: 0.71875rem;
  top: 50%;
  margin-top: -0.1875rem;
  pointer-events: none;
}

.choices[data-type*='select-one'].is-open:after {
  border-color: transparent transparent #333333 transparent;
  margin-top: -0.5rem;
}

.choices[data-type*='select-one'][dir='rtl']:after {
  left: 0.75rem;
  right: auto;
}

.choices[data-type*='select-one'][dir='rtl'] .choices__button {
  right: auto;
  left: 0;
  margin-left: 1.5625rem;
  margin-right: 0;
}

.choices[data-type*='select-multiple'] .choices__inner,
.choices[data-type*='text'] .choices__inner {
  cursor: text;
}

.choices[data-type*='select-multiple'] .choices__button,
.choices[data-type*='text'] .choices__button {
  position: relative;
  display: inline-block;
  margin-top: 0;
  margin-right: -0.25rem;
  margin-bottom: 0;
  margin-left: 0.5rem;
  padding-left: 1rem;
  border-left: 1px solid #008fa1;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);
  background-size: 0.5rem;
  width: 0.5rem;
  line-height: 1;
  opacity: 0.75;
  border-radius: 0;
}

.choices[data-type*='select-multiple'] .choices__button:hover, .choices[data-type*='select-multiple'] .choices__button:focus,
.choices[data-type*='text'] .choices__button:hover,
.choices[data-type*='text'] .choices__button:focus {
  opacity: 1;
}

.choices__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  vertical-align: top;
  width: 100%;
  background-color: #ffffff;
  padding: 0.6875rem 0.75rem 0.6875rem 1.25rem;
  border: 0.0625rem solid #5b3d38;
  border-radius: 0.25rem;
  font-size: 1rem;
  line-height: 1.5rem;
  min-height: 3rem;
  overflow: hidden;
}

.is-focused .choices__inner,
.is-open .choices__inner {
  border-color: #2c1d1b;
}

.is-open .choices__inner {
  border-radius: 3px 3px 0 0;
}

.is-flipped.is-open .choices__inner {
  border-radius: 0 0 3px 3px;
}

.choices__list {
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.choices__list--single {
  display: inline-block;
  width: 100%;
}

[dir='rtl'] .choices__list--single {
  padding-right: 0.25rem;
  padding-left: 1rem;
}

.choices__list--single .choices__item {
  width: 100%;
}

.choices__list--multiple {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.choices__list--multiple .choices__item {
  display: inline-block;
  vertical-align: middle;
  border-radius: 0.25rem;
  padding: 0.25rem 0.375rem;
  font-size: 0.75rem;
  line-height: 0.875rem;
  font-weight: 500;
  margin: 0.125rem 0.25rem 0.125rem 0;
  background-color: #00bcd4;
  border: 0.0625rem solid #00a5bb;
  color: #ffffff;
  word-break: break-all;
  box-sizing: border-box;
}

.choices__list--multiple .choices__item[data-deletable] {
  padding-right: 5px;
}

[dir='rtl'] .choices__list--multiple .choices__item {
  margin-right: 0;
  margin-left: 0.25rem;
}

.choices__list--multiple .choices__item.is-highlighted {
  background-color: #00a5bb;
  border: 1px solid #008fa1;
}

.is-disabled .choices__list--multiple .choices__item {
  background-color: #aaaaaa;
  border: 1px solid #919191;
}

.choices__list--dropdown {
  visibility: hidden;
  z-index: 1;
  position: absolute;
  width: 100%;
  background-color: #ffffff;
  border: 1px solid #5b3d38;
  top: 100%;
  margin-top: -0.0625rem;
  border-bottom-left-radius: 0.3125rem;
  border-bottom-right-radius: 0.3125rem;
  overflow: hidden;
  word-break: break-all;
  will-change: visibility;
}

.choices__list--dropdown.is-active {
  visibility: visible;
}

.is-open .choices__list--dropdown {
  border-color: #2c1d1b;
}

.is-flipped .choices__list--dropdown {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: -0.0625rem;
  border-radius: 0.25rem 0.25rem 0 0;
}

.choices__list--dropdown .choices__list {
  position: relative;
  max-height: 18.75rem;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  will-change: scroll-position;
}

.choices__list--dropdown .choices__item {
  position: relative;
  padding: 0.625rem;
  font-size: 0.875rem;
}

[dir='rtl'] .choices__list--dropdown .choices__item {
  text-align: right;
}

@media (min-width: 640px) {
  .choices__list--dropdown .choices__item--selectable {
    padding-right: 6.25rem;
  }
  .choices__list--dropdown .choices__item--selectable:after {
    font-size: 0.75rem;
    opacity: 0;
    position: absolute;
    right: 0.625rem;
    top: 50%;
    transform: translateY(-50%);
  }
  [dir='rtl'] .choices__list--dropdown .choices__item--selectable {
    text-align: right;
    padding-left: 6.25rem;
    padding-right: 0.625rem;
  }
  [dir='rtl'] .choices__list--dropdown .choices__item--selectable:after {
    right: auto;
    left: 0.625rem;
  }
}

.choices__list--dropdown .choices__item--selectable.is-highlighted {
  background-color: #f2f2f2;
}

.choices__list--dropdown .choices__item--selectable.is-highlighted:after {
  opacity: 0.5;
}

.choices__item {
  cursor: default;
}

.choices__item--selectable {
  cursor: pointer;
}

.choices__item--disabled {
  cursor: not-allowed;
  user-select: none;
  opacity: 0.5;
}

.choices__heading {
  font-weight: 600;
  font-size: 0.75rem;
  padding: 0.625rem;
  border-bottom: 0.0625rem solid #7b524b;
  color: gray;
}

.choices__button {
  text-indent: -9999px;
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}

.choices__button:focus {
  outline: none;
}

.choices__input {
  display: inline-block;
  vertical-align: baseline;
  background-color: #ffffff;
  font-size: 0.875rem;
  border: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  max-width: 100%;
}

.choices__input:focus {
  outline: 0;
}

[dir='rtl'] .choices__input {
  padding-right: 0.125rem;
  padding-left: 0;
}

.choices__placeholder {
  opacity: 0.5;
}

/*=====  End of Choices  ======*/
/* Functional styling;
 * These styles are required for noUiSlider to function.
 * You don't need to change these rules to apply your design.
 */
.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-target {
  position: relative;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

/* Wrapper for all connect elements.
 */
.noUi-connects {
  overflow: hidden;
  z-index: 0;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}

/* Offset direction
 */
.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}

/* Give origins 0 height/width so they don't interfere with clicking the
 * connect elements.
 */
.noUi-vertical .noUi-origin {
  top: -100%;
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  backface-visibility: hidden;
  position: absolute;
}

.noUi-touch-area {
  height: 100%;
  width: 100%;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  transition: transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

/* Slider size and handle placement;
 */
.noUi-horizontal {
  height: 18px;
}

.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  right: -17px;
  top: -6px;
}

.noUi-vertical {
  width: 18px;
}

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  right: -6px;
  bottom: -17px;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}

/* Styling;
 * Giving the connect element a border radius causes issues with using transform: scale
 */
.noUi-target {
  background: #fafafa;
  border-radius: 4px;
  border: 1px solid #d3d3d3;
  box-shadow: inset 0 1px 1px #f0f0f0, 0 3px 6px -5px #bbb;
}

.noUi-connects {
  border-radius: 3px;
}

.noUi-connect {
  background: #3fb8af;
}

/* Handles and cursors;
 */
.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  cursor: default;
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb;
}

.noUi-active {
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ddd, 0 3px 6px -3px #bbb;
}

/* Handle stripes;
 */
.noUi-handle:before,
.noUi-handle:after {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #e8e7e6;
  left: 14px;
  top: 6px;
}

.noUi-handle:after {
  left: 17px;
}

.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
}

.noUi-vertical .noUi-handle:after {
  top: 17px;
}

/* Disabled state;
 */
[disabled] .noUi-connect {
  background: #b8b8b8;
}

[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}

/* Base;
 *
 */
.noUi-pips,
.noUi-pips * {
  box-sizing: border-box;
}

.noUi-pips {
  position: absolute;
  color: #999;
}

/* Values;
 *
 */
.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}

/* Markings;
 *
 */
.noUi-marker {
  position: absolute;
  background: #ccc;
}

.noUi-marker-sub {
  background: #aaa;
}

.noUi-marker-large {
  background: #aaa;
}

/* Horizontal layout;
 *
 */
.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}

/* Vertical layout;
 *
 */
.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  transform: translate(0, -50%);
  padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
  transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}

.noUi-horizontal .noUi-origin > .noUi-tooltip {
  transform: translate(50%, 0);
  left: auto;
  bottom: 10px;
}

.noUi-vertical .noUi-origin > .noUi-tooltip {
  transform: translate(0, -18px);
  top: auto;
  right: 28px;
}

.quantity {
  display: block;
  position: relative;
  background: #fff;
  height: 3rem;
  padding: 0 2.875rem;
  border: 1px solid #000;
}

.quantity input[type=text], .quantity input[type=number] {
  margin: 0;
  width: 100%;
  z-index: 10;
  height: 2.875rem;
  outline: none;
  color: #000;
  text-align: center;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.25rem;
  padding: 0.6875rem 0;
  border-radius: 0;
  position: relative;
  background: transparent;
  display: block;
  vertical-align: middle;
  border: 0.0625rem solid transparent;
}

.quantity input[type=text]::-moz-placeholder, .quantity input[type=number]::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.quantity input[type=text]:-ms-input-placeholder, .quantity input[type=number]:-ms-input-placeholder {
  color: transparent;
}

.quantity input[type=text]::-webkit-input-placeholder, .quantity input[type=number]::-webkit-input-placeholder {
  color: transparent;
}

.quantity input[type=text]::placeholder, .quantity input[type=number]::placeholder {
  color: transparent;
}

.quantity input[type=text]::-ms-clear, .quantity input[type=number]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

.quantity input[type=text]:focus, .quantity input[type=text]:active, .quantity input[type=number]:focus, .quantity input[type=number]:active {
  opacity: 1;
  outline: none;
}

.quantity input[type=text]:focus::-moz-placeholder, .quantity input[type=text]:active::-moz-placeholder, .quantity input[type=number]:focus::-moz-placeholder, .quantity input[type=number]:active::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.quantity input[type=text]:focus:-ms-input-placeholder, .quantity input[type=text]:active:-ms-input-placeholder, .quantity input[type=number]:focus:-ms-input-placeholder, .quantity input[type=number]:active:-ms-input-placeholder {
  color: transparent;
}

.quantity input[type=text]:focus::-webkit-input-placeholder, .quantity input[type=text]:active::-webkit-input-placeholder, .quantity input[type=number]:focus::-webkit-input-placeholder, .quantity input[type=number]:active::-webkit-input-placeholder {
  color: transparent;
}

.quantity input[type=text]:focus::placeholder, .quantity input[type=text]:active::placeholder, .quantity input[type=number]:focus::placeholder, .quantity input[type=number]:active::placeholder {
  color: transparent;
}

.quantity input[type=text].error, .quantity input[type=number].error {
  border-color: red !important;
}

.quantity input[type="number"]::-webkit-outer-spin-button,
.quantity input[type="number"]::-webkit-inner-spin-button {
  display: none;
}

.quantity__button {
  top: 0;
  font-size: 0;
  line-height: 0;
  border: none;
  outline: none;
  width: 2.875rem;
  height: 2.875rem;
  background: #f5f5f5;
  cursor: pointer;
  position: absolute;
}

.quantity__button:after, .quantity__button:before {
  top: calc(50% - 1px);
  left: calc(50% - 4px);
  z-index: 10;
  content: '';
  width: 8px;
  height: 1px;
  background: #000;
  position: absolute;
}

.quantity__button--minus {
  left: 0;
}

.quantity__button--plus {
  right: 0;
}

.quantity__button--plus:after {
  transform: rotate(90deg);
}

.form-group {
  margin-bottom: 1.5rem;
}

.breadcrumb {
  margin: 0;
  padding: 0;
  font-weight: 500;
  line-height: 150%;
  font-size: 0.75rem;
  color: var(--black);
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.breadcrumb__item {
  display: block;
}

.breadcrumb__item:not(:last-child)::after {
  content: '/';
  padding: 0 0.25rem;
  display: inline-block;
  color: var(--grey-400);
}

.breadcrumb__link {
  color: var(--grey-400);
  text-decoration: none;
  transition: .25s;
}

.breadcrumb__link:hover {
  color: var(--black);
  text-decoration: none;
  transition: .25s;
}

.breadcrumb__link:disabled, .breadcrumb__link.disabled {
  cursor: default;
  color: var(--grey-400);
}

.breadcrumb__link:disabled:hover, .breadcrumb__link.disabled:hover {
  color: var(--grey-400);
}

.breadcrumb__active {
  font-weight: 500;
}

@media (min-width: 1230px) {
  .breadcrumb {
    font-size: 0.875rem;
    line-height: 1.3125rem;
  }
  .breadcrumb__active {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 20rem;
  }
}

[data-tabs-target] {
  display: none;
}

[data-tabs-target].active {
  display: block;
}

.tabs {
  position: relative;
}

.tabs__header {
  position: relative;
  margin-bottom: 1.25rem;
}

.tabs__header:before {
  top: 0;
  bottom: 0;
  content: '';
  left: calc(100% - 10px);
  width: 1.875rem;
  z-index: 50;
  position: absolute;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 0%, white 100%);
}

.tabs__header .swiper {
  overflow: visible;
}

.tabs__header .swiper-slide {
  width: auto;
}

@media (min-width: 576px) {
  .tabs__header:before {
    display: none;
  }
}

@media (min-width: 768px) {
  .tabs__header .swiper-wrapper {
    max-width: 100%;
    display: flex;
    align-items: center;
    row-gap: 0.5rem;
    column-gap: 0.5rem;
    flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  .tabs__header {
    margin-bottom: 2.5rem;
  }
  .tabs__header .swiper-wrapper {
    row-gap: 1.25rem;
    column-gap: 0.625rem;
  }
}

[data-collapse].open [data-collapse-control]:before {
  content: attr(data-collapse-close);
}

[data-collapse-content] {
  display: none;
}

[data-collapse-control]:before {
  content: attr(data-collapse-open);
}

[data-spoiler].open .spoiler__arrow {
  transform: rotate(0deg);
  transition: .3s;
}

[data-spoiler-control] {
  cursor: pointer;
}

[data-spoiler-content] {
  display: none;
}

.spoiler {
  border-bottom: 1px solid #ccc;
}

.spoiler:not(:last-child) {
  margin-bottom: 1.25rem;
}

.spoiler__header {
  margin: 0;
  padding: 0.625rem 0;
  width: 100%;
  border: none;
  outline: none;
  stroke: #000;
  cursor: pointer;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.spoiler__arrow {
  font-size: 0;
  line-height: 0;
  height: 0.5rem;
  display: inline-block;
  flex-shrink: 0;
  transform: rotate(180deg);
  transition: .3s;
}

.spoiler__title {
  font-size: 1.125rem;
  line-height: 1.5rem;
  display: block;
}

.spoiler__content {
  padding: 0.625rem;
  font-size: 1rem;
  line-height: 1.75rem;
  border-top: 1px solid #ccc;
}

.spoiler__content p:last-child {
  margin-bottom: 0;
}

[data-dropdown] {
  position: relative;
}

[data-dropdown].open {
  z-index: 50;
}

[data-dropdown].open [data-dropdown-content] {
  opacity: 1;
  visibility: visible;
}

[data-dropdown-toggle] {
  cursor: pointer;
}

[data-dropdown-content] {
  top: 100%;
  left: 0;
  margin-top: 0.25rem;
  min-width: 100%;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.dropdown {
  display: inline-flex;
  flex-direction: column;
}

.dropdown__content {
  padding: 4px 0;
  overflow: hidden;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.15);
}

.dropdown__group {
  border: none;
  box-shadow: none;
}

.dropdown__item {
  cursor: pointer;
  min-width: 100%;
  display: inline-flex;
  padding: 6px 20px;
}

.dropdown__item:hover {
  background-color: #eee;
}

.rating {
  font-size: 0;
  line-height: 0;
  display: inline-flex;
  align-items: center;
}

.rating__body {
  position: relative;
}

.rating__active {
  top: 0;
  left: 0;
  width: 0;
  z-index: 5;
  overflow: hidden;
  position: absolute;
  display: flex;
  fill: gold;
}

.rating__stars {
  display: flex;
  fill: lightgrey;
}

.rating__star {
  flex-shrink: 0;
  height: 1.5rem;
  display: inline-block;
}

.rating__items {
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  position: absolute;
  display: flex;
  flex-direction: row-reverse;
}

.rating__item {
  color: gold;
  cursor: pointer;
  flex: 0 0 20%;
}

.rating__value {
  top: 2px;
  position: relative;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5rem;
  padding-left: 0.625rem;
}

[data-rating-readonly='true'] .rating__item {
  cursor: default;
}

.simple-rating {
  overflow: hidden;
  position: relative;
  display: inline-flex;
  font-size: 0;
  line-height: 0;
  flex-direction: row-reverse;
}

.simple-rating__item {
  top: 0;
  left: 0;
  width: 0%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.simple-rating__label {
  color: gold;
  font-size: 2.5rem;
  line-height: 2.5rem;
  cursor: pointer;
  display: block;
  transition: .3s;
}

.simple-rating__label:before {
  content: '☆';
}

.simple-rating__item:checked:before,
.simple-rating__item:checked ~ .simple-rating__label:before {
  content: '★';
}

.simple-rating__label:hover:before,
.simple-rating__label:hover ~ .simple-rating__label:before,
.simple-rating__label:checked ~ .simple-rating__label:hover:before {
  content: '★';
}

.pagination {
  padding: 0;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 150%;
  margin: 2.25rem 0 0 0;
  list-style: none;
  display: flex;
  column-gap: 1.25rem;
  align-items: center;
}

.pagination__link {
  display: block;
  position: relative;
  color: var(--grey-600);
  text-decoration: none;
  transition: .25s;
}

.pagination__link:hover {
  color: var(--green);
  text-decoration: none;
  transition: .25s;
}

.pagination__active {
  width: 48px;
  height: 31px;
  padding-top: 0.125rem;
  padding-left: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: url("../img/pagination_active.svg") 50% 50% no-repeat;
  background-size: cover;
}

@media (min-width: 768px) {
  .pagination {
    font-size: 1rem;
    margin-top: 3.5rem;
  }
  .pagination__active {
    width: 56px;
    height: 36px;
    padding-top: 0.25rem;
  }
  .pagination__link {
    padding-top: 0.25rem;
  }
  .pagination__divider {
    display: block;
    padding-top: 0.25rem;
  }
}

.page-nav {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  cursor: pointer;
  color: var(--grey-600);
  stroke: var(--grey-600);
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1rem;
  white-space: nowrap;
  background: transparent;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  column-gap: 0.5rem;
  transition: .25s;
}

.page-nav span {
  display: inline-block;
}

.page-nav i {
  font-size: 0;
  line-height: 0;
  height: 1.5rem;
  display: inline-block;
}

.page-nav:hover {
  color: var(--green);
  stroke: var(--green);
  transition: .25s;
}

@media (min-width: 1230px) {
  .page-nav {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}

.root {
  width: 100%;
  min-height: 100vh;
  max-width: 100%;
  overflow: hidden;
  padding-top: 2.75rem;
  display: flex;
  flex-direction: column;
}

@media (min-width: 768px) {
  .root {
    padding-top: 5.625rem;
    transition: .2s;
  }
}

@media (min-width: 1230px) {
  .root {
    padding-top: 8.125rem;
  }
}

@media (min-width: 768px) {
  .is-scroll .root {
    padding-top: 2.625rem;
    transition: .2s;
  }
}

@media (min-width: 1230px) {
  .is-scroll .root {
    padding-top: 4.875rem;
  }
}

.main {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.main__container {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.main__breadcrumb {
  display: none;
}

.main__aside {
  position: relative;
  background: var(--grey);
}

.main__aside:after, .main__aside:before {
  top: 0;
  bottom: 0;
  z-index: 1;
  content: '';
  width: 2000px;
  position: absolute;
  background: var(--grey);
}

.main__aside:after {
  left: 100%;
}

.main__aside:before {
  right: 100%;
}

.main__pattern {
  display: none;
}

.main__content {
  padding-top: 1.25rem;
  padding-bottom: 1.875rem;
}

.main__row {
  flex-grow: 1;
}

@media (min-width: 768px) {
  .main__breadcrumb {
    display: block;
    padding: 1rem 0;
  }
  .main__row {
    display: grid;
    grid-column-gap: 1.25rem;
    grid-template-columns: 9.8125rem 1fr;
  }
  .main__aside {
    padding: 1.875rem 1.25rem 1.875rem 0;
  }
  .main__aside:after {
    display: none;
  }
  .main__pattern {
    z-index: 5;
    width: 18.875rem;
    right: 1rem;
    top: 34.375rem;
    fill: white;
    display: block;
    position: absolute;
  }
  .main__pattern--top {
    top: 15.9375rem;
  }
  .main__content {
    padding-top: 0;
    padding-bottom: 2.5rem;
  }
}

@media (min-width: 1230px) {
  .main__breadcrumb {
    padding: 1.25rem 0;
  }
  .main__row {
    grid-column-gap: 3rem;
    grid-template-columns: 15.4375rem 1fr;
  }
  .main__row--sm {
    grid-column-gap: 2.5rem;
  }
  .main__content {
    padding-bottom: 5rem;
  }
  .main__pattern {
    width: 27.875rem;
    right: 4.6875rem;
  }
  .main__pattern--top {
    top: 11.625rem;
  }
}

.swiper {
  width: 100%;
  height: 100%;
}

.section {
  padding-top: 1.25rem;
  padding-bottom: 1.875rem;
}

.section--grey {
  background: var(--grey);
}

.section--blue {
  background: var(--light-blue);
}

.section__header {
  margin-bottom: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.section__nav {
  display: none;
}

.section__group {
  margin-bottom: 0.5rem;
}

.section__nav-sm-only {
  margin-top: 1.875rem;
}

.section__nav-md-only {
  display: none;
}

.section__nav-xl-only {
  display: none;
}

@media (min-width: 768px) {
  .section {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
  .section__nav {
    display: flex;
    column-gap: 1.5rem;
    align-items: center;
  }
  .section__group {
    margin-bottom: 1.25rem;
  }
  .section__nav-sm-only {
    display: none;
  }
  .section__nav-md-only {
    display: block;
  }
}

@media (min-width: 1230px) {
  .section {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .section__header {
    margin-bottom: 1.25rem;
  }
  .section__group {
    margin-bottom: 2.5rem;
  }
  .section__nav-xl-only {
    display: block;
  }
  .section__nav-hide-xl {
    display: none;
  }
}

.subtitle {
  font-size: 1rem;
  line-height: 150%;
  margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .subtitle {
    font-size: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .subtitle {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
  .subtitle__lead {
    font-size: 1.5rem;
    margin-bottom: 2.0625rem;
  }
}

.tagline {
  line-height: 150%;
  font-size: 0.875rem;
  position: relative;
  padding-top: 0.625rem;
  margin-bottom: 1.25rem;
}

.tagline:before {
  top: 0;
  left: 0;
  content: '';
  height: 2px;
  width: 55px;
  position: absolute;
  background: var(--green);
}

@media (min-width: 768px) {
  .tagline {
    font-size: 1rem;
    padding-top: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .tagline {
    margin-bottom: 2.5rem;
  }
}

.text-block p:last-child {
  margin-bottom: 0;
}

@media (min-width: 1230px) {
  .text-block {
    column-count: 2;
    column-gap: 2.5rem;
    margin-bottom: -1rem;
  }
  .text-block p {
    display: inline-block;
  }
}

.list-point {
  margin: 0 0 0.75rem 0;
  padding: 0;
  list-style: none;
}

.list-point:last-child {
  margin-bottom: 0;
}

.list-point li {
  position: relative;
  padding-left: 1.125rem;
}

.list-point li:before {
  left: 0;
  top: 0.5rem;
  width: 6px;
  height: 6px;
  content: '';
  border-radius: 50%;
  position: absolute;
  background: var(--green);
}

.list-point li:not(:last-child) {
  margin-bottom: 0.25rem;
}

.list-point--md li:not(:last-child) {
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  .list-point li {
    padding-left: 1.625rem;
  }
  .list-point li:before {
    top: 0.625rem;
    left: 0.5rem;
  }
  .list-point li:not(:last-child) {
    margin-bottom: 0.75rem;
  }
  .list-point--left li {
    padding-left: 1.125rem;
  }
  .list-point--left li:before {
    left: 0;
  }
  .list-point--md li {
    padding-left: 1.125rem;
  }
  .list-point--md li:before {
    left: 0;
  }
  .list-point--md li:not(:last-child) {
    margin-bottom: 1rem;
  }
}

@media (min-width: 1230px) {
  .list-point {
    margin-bottom: 1.25rem;
  }
  .list-point:last-child {
    margin-bottom: 0;
  }
  .list-point li {
    padding-left: 1.875rem;
  }
  .list-point li:before {
    top: 0.6875rem;
    left: 0.75rem;
  }
  .list-point--left li {
    padding-left: 1.125rem;
  }
  .list-point--left li:before {
    left: 0;
  }
  .list-point--md li {
    padding-left: 1.125rem;
  }
  .list-point--md li:before {
    left: 0;
  }
  .list-point--md li:not(:last-child) {
    margin-bottom: 1.25rem;
  }
}

.green-box {
  font-weight: 500;
  color: white;
  padding: 1.25rem;
  background: var(--green);
}

@media (min-width: 1230px) {
  .green-box {
    padding: 1.25rem 1.875rem;
  }
}

.row-gap {
  row-gap: 0.5rem;
}

@media (min-width: 768px) {
  .row-gap {
    row-gap: 0.75rem;
  }
}

@media (min-width: 1230px) {
  .row-gap {
    row-gap: 1.25rem;
  }
}

.how_it_works {
  margin: 0 auto;
  max-width: 47.875rem;
}

.double-block__item {
  position: relative;
  padding-top: 1.25rem;
}

.double-block__item--green {
  color: white;
  padding-bottom: 1.25rem;
  background: var(--green);
}

.double-block__item--green:after, .double-block__item--green:before {
  top: 0;
  bottom: 0;
  content: '';
  width: 2000px;
  position: absolute;
  background: var(--green);
}

.double-block__item--green:after {
  left: 100%;
}

.double-block__item--green:before {
  right: 100%;
}

@media (min-width: 768px) {
  .double-block__item--green {
    padding: 1.25rem;
  }
  .double-block__item--green:after, .double-block__item--green:before {
    display: none;
  }
}

@media (min-width: 992px) {
  .double-block {
    display: grid;
    align-items: center;
    grid-template-columns: 66% 34%;
  }
  .double-block__item {
    padding: 1.25rem;
  }
  .double-block__item--white {
    padding-right: 0;
  }
}

@media (min-width: 992px) and (min-width: 1230px) {
  .double-block {
    grid-template-columns: 47.9375rem 1fr;
  }
  .double-block__item {
    padding: 2.5rem;
  }
  .double-block__item--white {
    padding-right: 0;
  }
}

.slide-nav {
  display: flex;
  column-gap: 1.25rem;
  align-items: center;
}

.lead-line {
  font-weight: 500;
  font-size: 0.875rem;
  position: relative;
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem;
}

.lead-line:before {
  left: 0;
  bottom: 0;
  content: '';
  height: 2px;
  width: 33px;
  position: absolute;
  background: var(--green);
}

@media (min-width: 768px) {
  .lead-line {
    font-size: 1.125rem;
  }
}

@media (min-width: 1230px) {
  .lead-line {
    font-size: 1.25rem;
  }
}

.market-intro {
  position: relative;
}

.market-intro__media {
  top: -0.75rem;
  left: -6.6875rem;
  z-index: 1;
  width: 213px;
  fill: white;
  position: absolute;
  opacity: 0.8;
}

.market-intro__main {
  z-index: 10;
  position: relative;
}

@media (min-width: 768px) {
  .market-intro {
    padding-left: 3.75rem;
  }
  .market-intro__media {
    width: 333px;
    left: -8.125rem;
  }
}

@media (min-width: 1230px) {
  .market-intro {
    padding-left: 24.5rem;
  }
  .market-intro__media {
    width: 313px;
    top: 0;
    left: 0;
  }
}

.pretty-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.pretty-list li {
  position: relative;
  padding-left: 1.625rem;
}

.pretty-list li:before {
  top: 0px;
  left: 0;
  content: '';
  width: 24px;
  height: 24px;
  position: absolute;
  background: url("../img/leaf.svg") 50% 50% no-repeat;
  background-size: cover;
}

.pretty-list li:not(:last-child) {
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  .pretty-list li:not(:last-child) {
    margin-bottom: 1rem;
  }
}

@media (min-width: 1230px) {
  .pretty-list li {
    padding-left: 2.25rem;
  }
  .pretty-list li:before {
    top: 0;
    width: 28px;
    height: 28px;
  }
  .pretty-list li:not(:last-child) {
    margin-bottom: 1.25rem;
  }
}

.project-title {
  font-weight: 500;
  font-size: 1rem;
  line-height: 150%;
  margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
  .project-title {
    font-size: 1.125rem;
    margin-bottom: 0.5rem;
  }
}

@media (min-width: 1230px) {
  .project-title {
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
  }
}

.header {
  top: 0;
  left: 0;
  right: 0;
  z-index: 900;
  position: fixed;
  background: var(--white);
  box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.06);
}

.header__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header__logo {
  display: block;
  width: 7.5rem;
  flex-shrink: 0;
}

.header__content {
  height: 2.75rem;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.header__search-toggle {
  padding: 0;
  font-size: 0;
  line-height: 0;
  width: 24px;
  height: 24px;
  display: block;
  flex-shrink: 0;
  border: none;
  outline: none;
  stroke: var(--green);
  background: transparent;
}

.header__burger {
  font-size: 0;
  line-height: 0;
  width: 24px;
  height: 24px;
  display: block;
  flex-shrink: 0;
  border: none;
  outline: none;
  position: relative;
  margin-left: 1.25rem;
  background: transparent;
}

.header__burger span, .header__burger:after, .header__burger:before {
  right: 2px;
  height: 2px;
  content: '';
  border-radius: 2px;
  display: inline-block;
  position: absolute;
  transition-property: transform;
  transition-duration: .15s;
  transition-timing-function: ease;
  background-color: var(--green);
}

.header__burger span {
  width: 18px;
  top: calc(50% - 1px);
}

.header__burger:after {
  width: 20px;
  top: calc(50% - 6px);
}

.header__burger:before {
  width: 16px;
  top: calc(50% + 4px);
}

.header__search {
  display: none;
}

.header__nav {
  display: none;
}

.header__lng {
  display: none;
}

@media (min-width: 768px) {
  .header {
    position: absolute;
  }
  .header__content {
    height: 3rem;
    padding-top: 1.25rem;
    transition: all .2s ease-out;
  }
  .header__burger {
    display: none;
  }
  .header__search-toggle {
    display: none;
  }
  .header__search {
    display: block;
    flex-grow: 1;
  }
  .header__nav {
    display: block;
    width: 20.9375rem;
  }
  .header__lng {
    display: block;
    margin-left: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .header__content {
    height: 3.75rem;
    padding-top: 1.25rem;
  }
  .header__logo {
    width: 16.25rem;
    transition: all .2s ease-out;
  }
  .header__nav {
    width: 35.3125rem;
  }
}

.header-nav {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.header-nav__item {
  position: relative;
}

.header-nav__item:hover .header-nav__link:before {
  opacity: 1;
  visibility: visible;
}

.header-nav__item:hover .header-nav__second {
  opacity: 1;
  visibility: visible;
  display: block;
}

.header-nav__item:last-child .header-nav__second {
  right: 0;
  left: auto;
  width: auto;
  white-space: nowrap;
}

.header-nav__link {
  color: var(--black);
  height: 2.625rem;
  font-size: 0.75rem;
  line-height: 150%;
  position: relative;
  text-decoration: none;
  display: flex;
  align-items: center;
}

.header-nav__link:before {
  left: 0;
  right: 0;
  bottom: 0;
  content: '';
  height: 2px;
  position: absolute;
  background: var(--green);
  opacity: 0;
  transition: .25s;
}

.header-nav__link:hover:before {
  opacity: 1;
}

.header-nav__link.active {
  font-weight: 700;
}

.header-nav__link.active:before {
  opacity: 1;
}

.header-nav__second {
  left: 0;
  top: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 100%;
  position: absolute;
  background: white;
  font-size: 0.875rem;
  line-height: 1.3125rem;
  width: 17.5rem;
  opacity: 0;
  visibility: hidden;
  display: none;
  box-shadow: 0px 4px 30px 0px rgba(0, 0, 0, 0.06);
}

.header-nav__second a {
  color: var(--black);
  text-decoration: none;
  transition: .25s;
}

.header-nav__second a:hover {
  color: var(--green);
  text-decoration: none;
  transition: .25s;
}

.header-nav__second > li > a {
  padding: 1.25rem;
  font-weight: 500;
  display: block;
}

.header-nav__second > li > ul {
  margin: 0;
  padding: 0;
  list-style: none;
  background: #F9F9F9;
}

.header-nav__second > li > ul > li > a {
  display: block;
  padding: 0.625rem 1.25rem;
}

.header-nav__second > li > ul > li > ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.header-nav__second > li > ul > li > ul > li {
  padding: 0.625rem 1.25rem 0.625rem 1.875rem;
}

@media (min-width: 1230px) {
  .header-nav__link {
    height: 4.375rem;
    font-size: 1rem;
    transition: all .2s ease-out;
  }
}

@media (min-width: 1400px) {
  .header-nav__item:hover:last-child .header-nav__second {
    right: auto;
    left: 0;
  }
}

.header-lng {
  font-size: 0.625rem;
  line-height: 0.8125rem;
  display: flex;
  align-items: center;
}

.header-lng__item {
  display: block;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.header-lng__item:not(:last-child) {
  margin-right: 1.25rem;
}

.header-lng__item:hover {
  color: var(--green);
  text-decoration: none;
}

.header-lng__item.active {
  color: var(--green);
  border-bottom-color: var(--green);
}

@media (min-width: 1230px) {
  .header-lng {
    font-size: 0.75rem;
    line-height: 0.875rem;
  }
}

.nav-open .header__nav {
  transition: .3s;
  transform: translateX(0);
}

.nav-open .header__layout {
  opacity: 1;
  visibility: visible;
}

.nav-open .hamburger span {
  opacity: 0;
  width: 100%;
}

.nav-open .hamburger:after {
  transform: translateY(8px) translateX(0) rotate(45deg);
  width: 100%;
}

.nav-open .hamburger:before {
  transform: translateY(-8px) translateX(0) rotate(-45deg);
  width: 100%;
}

@media (min-width: 768px) {
  .is-scroll .header {
    position: fixed;
  }
  .is-scroll .header__content {
    height: 0;
    padding: 0;
    overflow: hidden;
    transition: all .2s ease-out;
  }
}

@media (min-width: 1230px) {
  .is-scroll .header__logo {
    width: 12.125rem;
    transition: all .2s ease-out;
  }
  .is-scroll .header-nav__link {
    height: 4.875rem;
    transition: all .2s ease-out;
  }
}

.footer {
  z-index: 50;
  color: #fff;
  position: relative;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  background: var(--black);
}

.footer__row {
  display: flex;
  row-gap: 1.25rem;
  flex-direction: column;
}

.footer__logo {
  display: block;
  width: 7rem;
}

.footer__address {
  display: flex;
  flex-direction: column;
  row-gap: 0.25rem;
}

.footer__main {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}

.footer__primary {
  font-size: 0.75rem;
  line-height: 150%;
  display: flex;
  flex-direction: column;
  row-gap: 0.625rem;
}

.footer__contacts {
  display: flex;
  flex-direction: column;
  row-gap: 0.25rem;
}

.footer__contact a {
  color: var(--white);
  text-decoration: none;
}

.footer__contact a:last-child {
  color: var(--white);
  text-decoration: none;
}

.footer__secondary {
  font-size: 0.75rem;
  line-height: 150%;
  white-space: nowrap;
  padding-top: 1rem;
  color: var(--grey-400);
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.footer__link {
  color: var(--grey-400);
  text-decoration: none;
  transition: .25s;
}

.footer__link:hover {
  color: var(--white);
  text-decoration: none;
  transition: .25s;
}

@media (min-width: 768px) {
  .footer {
    padding-top: 2.375rem;
    padding-bottom: 2.375rem;
  }
  .footer__row {
    flex-direction: row;
  }
  .footer__info {
    flex-shrink: 0;
    width: 10.75rem;
  }
  .footer__main {
    flex-grow: 1;
    row-gap: 2.5rem;
  }
  .footer__primary {
    font-size: 0.875rem;
    flex-direction: row;
    justify-content: space-between;
  }
  .footer__secondary {
    padding-top: 1.75rem;
  }
  .footer__contacts {
    min-width: 13.5rem;
  }
}

@media (min-width: 1230px) {
  .footer {
    padding-top: 2.875rem;
    padding-bottom: 2.75rem;
  }
  .footer__main {
    row-gap: 2.125rem;
  }
  .footer__info {
    width: 18.375rem;
  }
  .footer__logo {
    width: 11rem;
  }
  .footer__contacts {
    width: 23.25rem;
  }
}

.search {
  width: 100%;
  position: relative;
  display: flex;
}

.search__input {
  flex-grow: 1;
  width: 100%;
  z-index: 5;
  border: none;
  outline: none;
  color: var(--black);
  position: relative;
  padding: 0 40px 6px 12px;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  height: 28px;
  display: block;
  background: transparent;
  border-bottom: 1px solid var(--green);
}

.search__input::-moz-placeholder {
  color: var(--grey-200);
  opacity: 1;
}

.search__input:-ms-input-placeholder {
  color: var(--grey-200);
}

.search__input::-webkit-input-placeholder {
  color: var(--grey-200);
}

.search__input::placeholder {
  color: var(--grey-200);
}

.search__input:focus::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.search__input:focus:-ms-input-placeholder {
  color: transparent;
}

.search__input:focus::-webkit-input-placeholder {
  color: transparent;
}

.search__input:focus::placeholder {
  color: transparent;
}

.search__input:focus + .search__button {
  stroke: var(--white);
}

.search__input:focus + .search__button:before {
  opacity: 1;
  visibility: visible;
}

.search__button {
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  border: none;
  outline: none;
  cursor: pointer;
  position: relative;
  background: transparent;
  width: 56px;
  height: 28px;
  flex-shrink: 0;
  stroke: var(--green);
  display: flex;
  align-items: center;
  justify-content: center;
  background: url("../img/search_btn__base.svg") 100% 100% no-repeat;
  background-size: cover;
}

.search__button:after, .search__button:before {
  top: 0;
  left: 0;
  z-index: 1;
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  opacity: 0;
  visibility: hidden;
  transition: .25s;
}

.search__button:after {
  opacity: 0;
  visibility: hidden;
  background: url("../img/search_btn__hover.svg") 100% 100% no-repeat;
  background-size: cover;
  transition: .25s;
}

.search__button:before {
  background: url("../img/search_btn__focused.svg") 100% 100% no-repeat;
  background-size: cover;
  transition: .25s;
}

.search__button i {
  z-index: 10;
  height: 20px;
  flex-shrink: 0;
  position: relative;
  display: inline-block;
}

@media (min-width: 1230px) {
  .search__input {
    height: 40px;
    font-size: 0.875rem;
    line-height: 1.25rem;
    padding: 10px 40px 10px 12px;
  }
  .search__button {
    width: 82px;
    height: 40px;
  }
  .search__button:hover {
    stroke: var(--green) !important;
  }
  .search__button:hover:after {
    opacity: 1;
    visibility: visible;
    transition: .25s;
  }
}

.mobile-nav {
  left: 0;
  right: 0;
  bottom: 0;
  top: 2.75rem;
  z-index: 950;
  position: fixed;
  overflow-y: auto;
  color: var(--white);
  background: var(--green);
  padding: 1.25rem 0.625rem 3.75rem 0.625rem;
  opacity: 0;
  visibility: hidden;
  transition: .25s;
}

.mobile-nav__menu {
  padding: 0;
  margin: 0;
  list-style: none;
}

.mobile-nav__menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mobile-nav__menu a {
  color: white;
  text-decoration: none;
}

.mobile-nav__menu a:hover {
  color: white;
  text-decoration: none;
}

.mobile-nav__menu > li > a {
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.5rem;
  padding: 0.5625rem 0.875rem;
  display: block;
}

.mobile-nav__menu > li > ul {
  font-size: 0.875rem;
  line-height: 1.125rem;
  background: #4EA033;
}

.mobile-nav__menu > li > ul > li > a {
  display: block;
  font-weight: 500;
  padding: 0.75rem 0.875rem;
}

.mobile-nav__menu > li > ul > li > ul > li > a {
  display: block;
  color: var(--grey-100);
  padding: 0.6875rem 1.5rem;
}

.mobile-nav__menu > li > ul > li > ul > li > a:hover {
  color: var(--grey-100);
}

.mobile-nav__menu > li > ul > li > ul > li > ul {
  background: #47992C;
}

.mobile-nav__menu > li > ul > li > ul > li > ul > li > a {
  display: block;
  padding: 0.6875rem 2rem;
}

.mobile-nav__lng {
  margin: 0;
  color: white;
  border: none;
  outline: none;
  display: block;
  cursor: pointer;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.5rem;
  text-decoration: none;
  padding: 0.5rem 0.875rem;
  background: transparent;
}

@media (min-width: 768px) {
  .mobile-nav {
    display: none;
  }
}

.nav-open {
  overflow: hidden;
}

.nav-open .mobile-nav {
  opacity: 1;
  visibility: visible;
  transition: .25s;
}

.nav-open .header__search-toggle {
  opacity: 0;
  visibility: hidden;
}

.nav-open .header__burger span {
  opacity: 0;
  visibility: hidden;
}

.nav-open .header__burger:after {
  width: 20px;
  transform: translateY(5px) translateX(0) rotate(45deg);
  transition: .25s;
}

.nav-open .header__burger:before {
  width: 20px;
  transform: translateY(-5px) translateX(0) rotate(-45deg);
  transition: .25s;
}

@media (min-width: 768px) {
  .nav-open {
    overflow: visible;
  }
}

.mobile-search {
  left: 0;
  right: 0;
  bottom: 0;
  top: 2.75rem;
  z-index: 950;
  position: fixed;
  overflow-y: auto;
  color: var(--white);
  background: var(--green);
  padding: 1.25rem;
  opacity: 0;
  visibility: hidden;
  transition: .25s;
}

@media (min-width: 768px) {
  .mobile-search {
    display: none;
  }
}

.mobile-search-open .mobile-search {
  opacity: 1;
  visibility: visible;
  transition: .25s;
}

.mobile-search-open .header__burger {
  opacity: 0;
  visibility: hidden;
  display: none;
}

.mobile-search-open .header__search-toggle {
  position: relative;
}

.mobile-search-open .header__search-toggle svg {
  opacity: 0;
  visibility: hidden;
}

.mobile-search-open .header__search-toggle:after, .mobile-search-open .header__search-toggle:before {
  font-size: 0;
  line-height: 0;
  top: calc(50% - 1px);
  left: calc(50% - 10px);
  z-index: 1;
  content: '';
  width: 20px;
  height: 2px;
  background: var(--green);
  position: absolute;
}

.mobile-search-open .header__search-toggle:after {
  transform: rotate(45deg);
}

.mobile-search-open .header__search-toggle:before {
  transform: rotate(-45deg);
}

@media (min-width: 768px) {
  .mobile-search-open {
    overflow: visible;
  }
}

.search-block {
  position: relative;
}

.search-block__icon {
  left: 0;
  top: calc(50% - 10px);
  font-size: 0;
  line-height: 0;
  stroke: white;
  width: 20px;
  height: 20px;
  position: absolute;
}

.search-block__input {
  border: none;
  width: 100%;
  height: 32px;
  display: block;
  outline: none;
  color: white;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  padding: 4px 50px 4px 30px;
  background: url("../img/search_white_border.svg") 100% 100% no-repeat;
}

.search-block__input::-moz-placeholder {
  color: white;
  opacity: 1;
}

.search-block__input:-ms-input-placeholder {
  color: white;
}

.search-block__input::-webkit-input-placeholder {
  color: white;
}

.search-block__input::placeholder {
  color: white;
}

.search-block__input:focus::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.search-block__input:focus:-ms-input-placeholder {
  color: transparent;
}

.search-block__input:focus::-webkit-input-placeholder {
  color: transparent;
}

.search-block__input:focus::placeholder {
  color: transparent;
}

.search-block__reset {
  right: 20px;
  padding: 0;
  border: none;
  outline: none;
  z-index: 20;
  top: calc(50% - 10px);
  font-size: 0;
  line-height: 0;
  stroke: white;
  width: 20px;
  height: 20px;
  display: block;
  cursor: pointer;
  position: absolute;
  background: transparent;
  opacity: 0;
  visibility: hidden;
  transition: .25s;
}

.search-block.filled .search-block__reset {
  opacity: 1;
  visibility: visible;
}

.heading {
  font-weight: 700;
  line-height: 120%;
  font-size: 1.25rem;
}

.heading__text {
  position: relative;
  display: inline-block;
  padding-right: 1.5rem;
  padding-bottom: 0.625rem;
}

.heading__text:after {
  bottom: 0;
  right: 50px;
  height: 1px;
  width: 125rem;
  position: absolute;
}

.heading__text:before {
  right: 0;
  bottom: 0;
  content: '';
  width: 3000px;
  height: 25px;
  display: block;
  position: absolute;
  background-image: url("../img/heading_line_sm.svg");
  background-repeat: no-repeat;
  background-position: 100% 100%;
}

.heading__text--sm {
  padding: 0;
}

.heading__text--sm:after, .heading__text--sm:before {
  opacity: 0;
  visibility: hidden;
}

@media (min-width: 768px) {
  .heading {
    font-size: 1.75rem;
  }
  .heading__text {
    padding-right: 1.875rem;
    padding-bottom: 1.25rem;
  }
  .heading__text:before {
    height: 2.25rem;
    background-image: url("../img/heading_line_md.svg");
  }
  .heading__text--sm {
    padding-right: 1.5rem;
    padding-bottom: 0.625rem;
  }
  .heading__text--sm:after, .heading__text--sm:before {
    opacity: 1;
    visibility: visible;
  }
}

@media (min-width: 1230px) {
  .heading {
    font-size: 2rem;
  }
  .heading__text {
    padding-right: 2.25rem;
    padding-bottom: 0.9375rem;
  }
  .heading__text:before {
    height: 2.5rem;
    background-image: url("../img/heading_line_xl.svg");
  }
  .heading__text--sm {
    padding-right: 2.25rem;
    padding-bottom: 0.9375rem;
  }
}

.promo {
  position: relative;
  margin-bottom: 0.625rem;
}

.promo__media {
  margin: 0 auto;
  padding: 1.25rem;
}

.promo__text p {
  margin-bottom: 0.5rem;
}

.promo__text p:last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .promo {
    margin-bottom: 1.25rem;
  }
  .promo__media {
    width: 45.5rem;
  }
}

@media (min-width: 992px) {
  .promo__media {
    width: 60rem;
  }
}

@media (min-width: 1230px) {
  .promo {
    margin-bottom: 0;
  }
  .promo__media {
    width: auto;
  }
  .promo__media {
    top: 0;
    left: 0;
    bottom: 0;
    padding: 0;
    overflow: hidden;
    right: calc(50% + 10px);
    z-index: 1;
    position: absolute;
  }
  .promo__image {
    height: 100%;
    min-width: 87.5rem;
    position: relative;
  }
  .promo__main {
    z-index: 5;
    position: relative;
  }
  .promo__content {
    padding: 2.5rem 0;
    margin-left: 38.125rem;
    min-height: 43.125rem;
  }
}

.directions {
  position: relative;
}

.directions:before {
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  content: '';
  width: 4.375rem;
  position: absolute;
  background: linear-gradient(270deg, #000 0%, rgba(217, 217, 217, 0) 100%);
  opacity: 0.05;
}

.directions__media {
  display: none;
}

.directions__main {
  z-index: 10;
  position: relative;
}

.directions__main .swiper-slide {
  height: auto;
  width: 12.5rem;
}

.directions__item {
  line-height: 150%;
  font-size: 0.75rem;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.directions__icon {
  width: 2.5rem;
  margin-bottom: 0.625rem;
}

.directions__title {
  font-weight: 700;
  font-size: 1rem;
  line-height: 150%;
  min-height: 5.625rem;
  padding-bottom: 0.625rem;
  border-bottom: 2px solid var(--green);
}

.directions__text {
  padding: 1rem 0;
  flex-grow: 1;
}

.directions__link {
  font-weight: 500;
  color: var(--green);
  stroke: var(--green);
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}

.directions__link:hover {
  color: var(--grey-400);
  stroke: var(--grey-400);
  text-decoration: none;
}

.directions__link span {
  display: inline-block;
}

.directions__link i {
  font-size: 0;
  line-height: 0;
  height: 1.5rem;
  display: inline-block;
  margin-left: 0.25rem;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .directions:before {
    display: none;
  }
  .directions__item {
    font-size: 0.875rem;
  }
  .directions__main .swiper-slide {
    width: auto;
  }
  .directions__icon {
    margin-bottom: 1rem;
  }
  .directions__title {
    font-size: 1.125rem;
    min-height: 6.25rem;
  }
}

@media (min-width: 992px) {
  .directions {
    display: flex;
  }
  .directions__media {
    padding-right: 2.5rem;
    display: flex;
    flex-grow: 1;
    align-items: center;
  }
  .directions__main {
    width: 42.5rem;
    flex-shrink: 0;
  }
}

@media (min-width: 1230px) {
  .directions__image {
    width: 347px;
  }
  .directions__icon {
    width: 3.125rem;
    margin-bottom: 1.25rem;
  }
  .directions__title {
    font-size: 1.5rem;
    min-height: 8.125rem;
  }
  .directions__text {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}

.choose-us {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-column-gap: 1.25rem;
  grid-template-columns: 1fr;
}

.choose-us__item {
  padding: 1.25rem;
  font-size: 0.75rem;
  background: var(--white);
  border-bottom: 3px solid var(--green);
}

.choose-us__header {
  margin-bottom: 1.25rem;
  display: flex;
  align-items: center;
}

.choose-us__icon {
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  margin-right: 1.25rem;
}

.choose-us__title {
  font-weight: 700;
  font-size: 1rem;
}

.choose-us__text {
  opacity: .8;
}

@media (min-width: 768px) {
  .choose-us {
    grid-template-columns: 1fr 1fr;
  }
  .choose-us__item {
    padding: 2.5rem 1.25rem;
  }
}

@media (min-width: 1230px) {
  .choose-us {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .choose-us__item {
    font-size: 0.875rem;
    padding: 3.75rem 0.875rem 3.375rem 1.5625rem;
  }
  .choose-us__header {
    display: block;
    margin-bottom: 1rem;
  }
  .choose-us__icon {
    width: 5rem;
    height: 5rem;
    margin: 0 auto 3.125rem auto;
  }
  .choose-us__title {
    font-size: 1.25rem;
  }
}

.mission {
  position: relative;
  display: grid;
  grid-row-gap: 1.25rem;
  grid-template-columns: 1fr;
}

.mission__content {
  z-index: 10;
  position: relative;
}

.mission__header {
  font-weight: 700;
  font-size: 1.125rem;
  margin-bottom: 0.5rem;
}

.mission__text p {
  margin-bottom: 0.5rem;
}

.mission__text p:last-child {
  margin-bottom: 0;
}

.mission__button {
  margin-top: 1.25rem;
}

.mission__media {
  overflow: hidden;
  height: 10.625rem;
}

.mission__image {
  height: 100%;
}

.mission__image--about {
  height: 130%;
  margin-bottom: -30%;
}

.mission__pattern {
  display: none;
}

@media (min-width: 768px) {
  .mission {
    grid-row-gap: 2.5rem;
  }
  .mission__header {
    font-size: 1.25rem;
    margin-bottom: 0.625rem;
  }
  .mission__media {
    height: 18.25rem;
  }
  .mission__media__image--about {
    height: calc(100% + 110px);
    margin-bottom: -110px;
  }
  .mission__media--about {
    height: 22.5rem;
  }
  .mission__image--about {
    height: 100%;
    margin-bottom: 0;
  }
}

@media (min-width: 992px) {
  .mission {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1230px) {
  .mission {
    grid-template-columns: auto 35.625rem;
  }
  .mission__media {
    height: 24.5rem;
  }
  .mission__media--about {
    height: auto;
  }
  .mission__header {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
  .mission__button {
    text-align: right;
    margin-top: 5rem;
  }
  .mission__text p {
    margin-bottom: 0.75rem;
  }
  .mission__text p:last-child {
    margin-bottom: 0;
  }
  .mission__pattern {
    z-index: 1;
    bottom: -8.125rem;
    right: 57.875rem;
    width: 29.25rem;
    display: block;
    position: absolute;
  }
}

[data-news] .swiper-slide {
  width: 12.5rem;
  height: auto;
}

@media (min-width: 768px) {
  [data-news] .swiper-slide {
    width: auto;
  }
}

.news-item {
  height: 100%;
  background: var(--white);
  display: flex;
  flex-direction: column;
}

.news-item--grey {
  background: var(--grey);
}

.news-item__image {
  display: block;
  height: 10.125rem;
}

.news-item__content {
  padding: 1.25rem;
  display: flex;
  flex-grow: 1;
  flex-direction: column;
}

.news-item__date {
  color: #A7A7A7;
  font-size: 0.75rem;
  margin-bottom: 0.5rem;
}

.news-item__title {
  flex-grow: 1;
  font-weight: 700;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.news-item__title a {
  color: var(--black);
  text-decoration: none;
  transition: .25s;
}

.news-item__title a:hover {
  color: var(--green);
  text-decoration: none;
  transition: .25s;
}

.news-item__text {
  font-size: 0.75rem;
  color: rgba(0, 0, 0, 0.6);
  margin-bottom: 1rem;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
}

@media (min-width: 768px) {
  .news-item__text {
    font-size: 0.875rem;
  }
}

@media (min-width: 1230px) {
  .news-item__content {
    padding: 1.5rem 1.25rem;
  }
  .news-item__date {
    margin-bottom: 0.875rem;
  }
  .news-item__title {
    font-size: 1.25rem;
    margin-bottom: 0.875rem;
  }
  .news-item__text {
    font-size: 1rem;
    margin-bottom: 0.875rem;
  }
}

.news-group {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-column-gap: 1.25rem;
  grid-template-columns: 1fr;
}

@media (min-width: 768px) {
  .news-group {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1230px) {
  .news-group {
    grid-row-gap: 2.5rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.about-cover {
  position: relative;
}

.about-cover__breadcrumb {
  display: none;
}

.about-cover__media {
  margin: 0 auto;
  padding: 1.25rem;
  position: relative;
  max-width: 35rem;
}

.about-cover__media:before {
  top: 1.25rem;
  left: 1.25rem;
  bottom: 1.25rem;
  content: '';
  z-index: 10;
  width: 3.875rem;
  position: absolute;
  background: linear-gradient(90deg, white 0%, rgba(255, 255, 255, 0) 100%);
}

.about-cover__image {
  height: 10.625rem;
}

.about-cover__main {
  padding-bottom: 1.875rem;
}

.about-cover__text p:last-child {
  margin-bottom: 0;
}

@media (min-width: 576px) {
  .about-cover__image {
    height: 15rem;
  }
}

@media (min-width: 768px) {
  .about-cover__breadcrumb {
    display: block;
    margin: 1.25rem 0;
  }
  .about-cover__media {
    padding: 0;
    max-width: 43rem;
  }
  .about-cover__media:before {
    top: 0;
    left: 0;
    bottom: 0;
    width: 6.125rem;
  }
  .about-cover__image {
    height: 18.25rem;
  }
  .about-cover__main {
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }
  .about-cover__header {
    line-height: 120%;
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
  }
  .about-cover__text {
    line-height: 150%;
    font-size: 1.125rem;
  }
}

@media (min-width: 992px) {
  .about-cover__media {
    max-width: 57.5rem;
  }
  .about-cover__media:before {
    width: 7.5rem;
  }
  .about-cover__image {
    height: 25rem;
  }
}

@media (min-width: 1230px) {
  .about-cover {
    min-height: 43.125rem;
  }
  .about-cover__media {
    margin: 0;
    width: auto;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 0;
    overflow: hidden;
    left: calc(50% + 10px);
    z-index: 1;
    position: absolute;
  }
  .about-cover__image {
    top: 0;
    right: -168px;
    width: 1199px;
    height: 100%;
    position: absolute;
  }
  .about-cover__main {
    z-index: 5;
    position: relative;
  }
  .about-cover__content {
    padding: 2.5rem 0;
    max-width: 35.625rem;
  }
  .about-cover__header {
    font-size: 3.25rem;
  }
}

.who__title {
  line-height: 150%;
  font-size: 0.875rem;
  position: relative;
  padding-top: 0.625rem;
  margin-bottom: 1.25rem;
}

.who__title:before {
  top: 0;
  left: 0;
  content: '';
  height: 2px;
  width: 55px;
  position: absolute;
  background: var(--green);
}

.who__main {
  display: grid;
  grid-row-gap: 0.625rem;
  grid-column-gap: 0.625rem;
  grid-template-columns: 1fr;
}

.who__item {
  font-weight: 500;
  line-height: 150%;
  font-size: 1rem;
  background: white;
  display: flex;
  align-items: center;
  border-bottom: 2px solid var(--green);
  padding: 0.625rem 0.625rem 0.5rem 0.625rem;
}

.who__icon {
  width: 2.5rem;
  flex-shrink: 0;
  display: block;
  margin-right: 1rem;
}

@media (min-width: 576px) {
  .who__main {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 768px) {
  .who__lead {
    font-size: 1.25rem;
  }
  .who__title {
    font-size: 1rem;
    padding-top: 1.25rem;
  }
  .who__main {
    grid-row-gap: 1.25rem;
    grid-column-gap: 1.25rem;
  }
  .who__item {
    font-size: 1.25rem;
    min-height: 6.25rem;
    padding: 1.25rem 0.375rem 1.125rem 1.25rem;
  }
  .who__icon {
    width: 3.125rem;
  }
}

@media (min-width: 992px) {
  .who__main {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (min-width: 1230px) {
  .who__lead {
    margin-bottom: 2.0625rem;
  }
  .who__title {
    margin-bottom: 2.0625rem;
  }
  .who__main {
    grid-row-gap: 2.5rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

.decisions {
  display: grid;
  grid-row-gap: 0.625rem;
  grid-template-columns: 1fr;
}

.decisions__item {
  color: white;
  padding: 1.25rem;
  font-size: 0.875rem;
  line-height: 150%;
  line-height: 150%;
  background: var(--green);
  display: flex;
  align-items: center;
  column-gap: 1.25rem;
  justify-content: space-between;
}

.decisions__title {
  opacity: 0.6;
  font-size: 0.75rem;
  margin-bottom: 0.25rem;
}

.decisions__text {
  font-weight: 700;
}

.decisions__link {
  fill: white;
  color: white;
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.25rem;
  text-decoration: none;
  display: inline-flex;
  white-space: nowrap;
  align-items: center;
}

.decisions__link span {
  display: none;
}

.decisions__link i {
  font-size: 0;
  line-height: 0;
  height: 1.5rem;
  flex-shrink: 0;
  display: inline-block;
}

.decisions__link:hover {
  fill: white;
  color: white;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .decisions {
    grid-row-gap: 1.25rem;
    grid-column-gap: 1.25rem;
    grid-template-columns: 40.1% 1fr 40.1%;
  }
  .decisions__item {
    font-size: 1rem;
    min-height: 10.375rem;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
  }
  .decisions__item:last-child {
    grid-column: span 2;
  }
  .decisions__title {
    font-size: 0.875rem;
  }
  .decisions__wrap {
    flex-grow: 1;
  }
  .decisions__text {
    max-width: 22.5rem;
    margin-bottom: 1.25rem;
  }
  .decisions__link span {
    margin-right: 0.25rem;
    display: inline-block;
  }
  .decisions__media {
    height: 10.375rem;
    grid-column: span 2;
  }
}

@media (min-width: 1230px) {
  .decisions {
    grid-template-columns: 23.3125rem 1fr 23.3125rem;
  }
  .decisions__media {
    height: 19.3125rem;
  }
  .decisions__title {
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
  .decisions__item {
    padding: 2.5rem;
    min-height: 19.3125rem;
    font-size: 1.25rem;
  }
  .decisions__link {
    font-weight: 400;
  }
  .decisions__link span {
    margin-right: 0.75rem;
  }
}

.why {
  display: grid;
  grid-row-gap: 0.5rem;
  grid-column-gap: 1.25rem;
  grid-template-columns: 1fr;
}

.why__header {
  font-weight: 700;
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-bottom: 0.25rem;
  display: flex;
  align-items: center;
}

.why__icon {
  width: 1.25rem;
  height: 1.25rem;
  margin-right: 0.625rem;
  flex-shrink: 0;
}

.why__text {
  opacity: .8;
  line-height: 150%;
  font-size: 0.75rem;
  padding-left: 1.875rem;
}

@media (min-width: 768px) {
  .why {
    grid-row-gap: 1.25rem;
    grid-template-rows: auto auto auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-flow: column;
  }
  .why__header {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-bottom: 0.25rem;
  }
  .why__icon {
    width: 1.875rem;
    height: 1.875rem;
    margin-right: 0.5rem;
  }
  .why__text {
    font-size: 0.875rem;
    padding-left: 2.375rem;
  }
}

@media (min-width: 992px) {
  .why {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: inherit;
    grid-auto-flow: inherit;
  }
}

@media (min-width: 1230px) {
  .why {
    grid-column-gap: 1.25rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .why__header {
    font-size: 1.25rem;
    line-height: 1.875rem;
  }
  .why__icon {
    margin-right: 0.75rem;
  }
  .why__text {
    font-size: 1rem;
    padding-left: 3rem;
  }
}

.reliability {
  padding: 1.25rem;
  background: white;
  line-height: 150%;
  font-size: 0.75rem;
  text-align: center;
}

.reliability__icon {
  width: 3.75rem;
  margin: 0 auto 1.875rem auto;
}

.reliability__title {
  color: var(--green);
  font-weight: 700;
  line-height: 150%;
  font-size: 0.875rem;
  margin-bottom: 1rem;
}

.reliability__text {
  opacity: .7;
}

@media (min-width: 1230px) {
  .reliability {
    padding: 2.5rem;
    font-size: 0.875rem;
    min-height: 18.4375rem;
  }
  .reliability__icon {
    width: 6.25rem;
    margin-bottom: 1.875rem;
  }
  .reliability__title {
    font-size: 1rem;
    margin-bottom: 1rem;
  }
  .reliability__text {
    padding: 0 1.25rem;
  }
}

[data-reliability] {
  overflow: visible;
}

[data-reliability] .swiper-slide {
  width: 12.5rem;
}

@media (min-width: 768px) {
  [data-reliability] .swiper-wrapper {
    display: grid;
    grid-column-gap: 1.25rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
  [data-reliability] .swiper-slide {
    width: auto;
  }
}

.side-nav {
  z-index: 20;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.side-nav__link {
  display: flex;
  align-items: center;
  height: 2.5rem;
  font-weight: 500;
  color: var(--grey-600);
  font-size: 0.625rem;
  line-height: 150%;
  position: relative;
  text-decoration: none;
  transition: .25s;
}

.side-nav__link:before {
  left: 0;
  right: 0;
  bottom: 0;
  content: '';
  height: 2px;
  position: absolute;
  background: transparent;
}

.side-nav__link:hover {
  color: var(--green);
  text-decoration: none;
  transition: .25s;
}

.side-nav__link.active {
  color: var(--black);
  font-weight: 700;
}

.side-nav__link.active:before {
  background: var(--green);
}

@media (min-width: 768px) {
  .side-nav {
    row-gap: 1.25rem;
    flex-direction: column;
    align-items: flex-start;
  }
  .side-nav__item {
    width: 100%;
  }
  .side-nav__link {
    height: auto;
    line-height: 150%;
    font-size: 0.75rem;
    min-height: 1.75rem;
    padding: 0 0.625rem;
  }
  .side-nav__link:before {
    top: 0;
    height: auto;
    right: auto;
    width: 2px;
  }
}

@media (min-width: 1230px) {
  .side-nav {
    row-gap: 1.5rem;
  }
  .side-nav__link {
    line-height: 150%;
    font-size: 1rem;
    min-height: 2rem;
    padding-left: 1rem;
  }
}

.post__date {
  color: #A7A7A7;
  font-size: 0.625rem;
  line-height: 0.875rem;
  margin-bottom: 1rem;
}

.post__group {
  margin-bottom: 1.25rem;
}

.post__lead {
  font-weight: 500;
  font-size: 1rem;
  line-height: 150%;
  margin-bottom: 0.75rem;
}

.post__nav {
  margin-top: 1.25rem;
  display: flex;
  column-gap: 1.75rem;
  align-items: center;
  justify-content: center;
}

.post__subtitle {
  color: var(--green);
  font-weight: 700;
  font-size: 1rem;
  margin-bottom: 1rem;
}

@media (min-width: 768px) {
  .post__date {
    font-size: 0.75rem;
    line-height: 150%;
    margin-bottom: 1.625rem;
  }
  .post__lead {
    font-size: 1.25rem;
    min-height: 6.25rem;
    margin-bottom: 1.25rem;
    padding-right: 7.5rem;
    position: relative;
  }
  .post__lead:before {
    top: 0;
    right: -40px;
    content: '';
    width: 149px;
    height: 100px;
    position: absolute;
    background: url("../img/post_lead_pattern.svg") 50% 50% no-repeat;
    background-size: cover;
  }
  .post__subtitle {
    font-size: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .post__nav {
    margin-top: 2.5rem;
  }
  .post__group {
    margin-bottom: 2.5rem;
  }
  .post__lead {
    min-height: 9rem;
    font-size: 1.5rem;
    padding-right: 16.5625rem;
  }
  .post__lead:before {
    top: -23px;
    right: -38px;
    width: 256px;
    height: 172px;
  }
  .post__subtitle {
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
}

.blockquote {
  margin: 0;
  font-weight: 500;
  font-size: 1rem;
  line-height: 150%;
  padding: 0 0 0 0.875rem;
  border-left: 4px solid var(--green);
}

@media (min-width: 768px) {
  .blockquote {
    font-size: 1.25rem;
    position: relative;
  }
  .blockquote__lead {
    font-size: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .blockquote {
    font-size: 1.5rem;
    padding-left: 1.375rem;
  }
}

.post-image__xl {
  display: none;
}

@media (min-width: 1230px) {
  .post-image__sm {
    display: none;
  }
  .post-image__xl {
    display: block;
  }
}

.video-group {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-column-gap: 1.25rem;
  grid-template-columns: 1fr;
}

@media (min-width: 768px) {
  .video-group {
    grid-row-gap: 1.875rem;
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 992px) {
  .video-group {
    grid-column-gap: 1.5rem;
  }
}

.video-item__media {
  display: block;
  position: relative;
}

.video-item__media i {
  top: calc(50% - 23px);
  left: calc(50% - 23px);
  z-index: 10;
  width: 46px;
  height: 46px;
  overflow: hidden;
  border-radius: 50%;
  position: absolute;
}

.video-item__media:before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  content: '';
  position: absolute;
  background: black;
  opacity: 0;
  visibility: hidden;
  transition: .25s;
}

.video-item__media:hover:before {
  opacity: .4;
  visibility: visible;
  transition: .25s;
}

.video-item__title {
  font-weight: 400;
  line-height: 150%;
  font-size: 0.875rem;
  color: var(--black);
  margin-top: 0.5rem;
}

.video-item__title a {
  color: var(--black);
  text-decoration: none;
}

.video-item__title a:hover {
  color: var(--black);
  text-decoration: none;
}

@media (min-width: 768px) {
  .video-item__media {
    height: 11.125rem;
  }
}

@media (min-width: 1230px) {
  .video-item__media {
    height: 15.5rem;
  }
  .video-item__media i {
    top: calc(50% - 30px);
    left: calc(50% - 30px);
    z-index: 10;
    width: 60px;
    height: 60px;
  }
  .video-item__title {
    font-weight: 500;
    font-size: 1.125rem;
    margin-top: 1.25rem;
  }
}

.manual-group {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-column-gap: 1.25rem;
  grid-template-columns: 1fr;
}

@media (min-width: 576px) {
  .manual-group {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 992px) {
  .manual-group {
    grid-row-gap: 2rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (min-width: 1230px) {
  .manual-group {
    grid-row-gap: 3.5rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

.manual-item {
  display: block;
}

.manual-item__media {
  display: block;
  padding: 1.5rem;
  background: #919290;
}

.manual-item__image {
  display: block;
  max-width: 12.5rem;
  margin: 0 auto;
}

.manual-item__title {
  color: var(--black);
  line-height: 150%;
  font-size: 0.875rem;
  display: block;
  margin-top: 0.625rem;
}

.manual-item__title a {
  color: var(--black);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: .25s;
}

.manual-item__title a:hover {
  color: var(--black);
  text-decoration: none;
  border-bottom-color: var(--green);
  transition: .25s;
}

@media (min-width: 1230px) {
  .manual-item__media {
    padding: 2.625rem 1.5rem;
  }
  .manual-item__title {
    font-size: 1.125rem;
    margin-top: 1.25rem;
  }
}

.task-block {
  overflow: hidden;
  color: var(--white);
  background: var(--green);
}

.task-block__main {
  position: relative;
  padding: 1.875rem 0;
}

.task-block__content {
  z-index: 10;
  position: relative;
}

.task-block__content p {
  margin-bottom: 0;
}

.task-block__title {
  font-weight: 700;
  line-height: 150%;
  font-size: 1.125rem;
}

.task-block__media {
  bottom: 0;
  right: -43px;
  z-index: 1;
  width: 207px;
  position: absolute;
  fill: rgba(255, 255, 255, 0.15);
}

@media (min-width: 768px) {
  .task-block__main {
    padding: 2.5rem 0;
  }
  .task-block__content {
    max-width: 46.625rem;
  }
  .task-block__title {
    font-size: 1.25rem;
  }
  .task-block__media {
    width: 374px;
    right: -67px;
    bottom: -15px;
  }
}

@media (min-width: 1230px) {
  .task-block__main {
    min-height: 21.25rem;
    padding: 5rem 0;
  }
  .task-block__content {
    max-width: inherit;
    padding-left: 25.875rem;
  }
  .task-block__title {
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
  .task-block__media {
    left: 0;
    bottom: 0;
    right: auto;
  }
}

.benefit {
  position: relative;
}

.benefit__item {
  height: 100%;
  line-height: 150%;
  font-size: 0.75rem;
  color: var(--black);
  fill: var(--green);
  stroke: var(--green);
  min-height: 13.125rem;
  padding: 2rem 1rem 3.75rem 1rem;
  background: white;
  position: relative;
  transition: .25s;
}

.benefit__item--grey {
  background: var(--grey);
}

.benefit__item:before {
  top: 1rem;
  left: 1rem;
  content: '';
  width: 33px;
  height: 2px;
  position: absolute;
  background: var(--green);
  transition: .25s;
}

.benefit__item:hover {
  color: white;
  fill: var(--white);
  stroke: var(--white);
  background: var(--green);
  transition: .25s;
}

.benefit__item:hover:before {
  background: white;
  transition: .25s;
}

.benefit__text {
  opacity: .8;
}

.benefit__icon {
  right: 1rem;
  bottom: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
}

.benefit__icon--left {
  left: 1rem;
  right: auto;
}

.benefit__nav {
  top: calc(50% - 17px);
  z-index: 20;
  display: none;
  position: absolute;
}

.benefit__nav--prev {
  left: -17px;
}

.benefit__nav--next {
  right: -17px;
}

@media (min-width: 768px) {
  .benefit__item {
    font-size: 0.875rem;
    min-height: 21.25rem;
    padding: 3.125rem 1.875rem 5rem 1.875rem;
  }
  .benefit__item:before {
    top: 1.875rem;
    left: 1.875rem;
    height: 3px;
  }
  .benefit__item--md {
    min-height: 22.5rem;
  }
  .benefit__icon {
    right: 1.875rem;
    bottom: 1.875rem;
    width: 5rem;
    height: 5rem;
  }
  .benefit__icon--left {
    left: 1.875rem;
    right: auto;
  }
}

@media (min-width: 1230px) {
  .benefit__item {
    font-size: 1rem;
  }
  .benefit__nav {
    display: block;
  }
}

[data-benefit] {
  overflow: visible;
}

[data-benefit] .swiper {
  overflow: visible;
}

[data-benefit] .swiper-slide {
  height: auto;
  width: 12.5rem;
}

@media (min-width: 768px) {
  [data-benefit] .swiper-slide {
    width: 17.1875rem;
  }
}

@media (min-width: 1230px) {
  [data-benefit] {
    overflow: hidden;
  }
  [data-benefit] .swiper {
    overflow: hidden;
  }
  [data-benefit] .swiper-slide {
    width: auto;
  }
}

[data-advantages] {
  overflow: visible;
}

[data-advantages] .swiper-slide {
  height: auto;
  width: 12.5rem;
}

@media (min-width: 768px) {
  [data-advantages] .swiper-slide {
    width: 17.1875rem;
  }
}

@media (min-width: 1230px) {
  [data-advantages] {
    overflow: hidden;
  }
  [data-advantages] .swiper-slide {
    width: auto;
  }
}

.tools {
  display: flex;
  row-gap: 1rem;
  flex-direction: column;
}

.tools:not(:last-child) {
  margin-bottom: 1.25rem;
}

.tools__title {
  color: var(--green);
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.tools__text {
  opacity: .8;
}

.tools__image {
  margin: 0 auto;
  max-width: 37.5rem;
}

@media (min-width: 768px) {
  .tools {
    row-gap: 1.25rem;
  }
  .tools__title {
    font-size: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .tools {
    flex-direction: row;
    justify-content: space-between;
    column-gap: 2.5rem;
  }
  .tools:not(:last-child) {
    margin-bottom: 2.5rem;
  }
  .tools__media {
    width: 35.625rem;
    flex-shrink: 0;
  }
  .tools__title {
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
  .tools__wrap {
    max-width: 27.5rem;
  }
  .tools--reverse {
    align-items: center;
    flex-direction: row-reverse;
  }
}

.market-advantages {
  display: grid;
  position: relative;
  grid-row-gap: 1rem;
  grid-template-columns: 1fr;
}

.market-advantages__content p {
  margin-bottom: 0.5rem;
}

.market-advantages__content p:last-child {
  margin-bottom: 0;
}

.market-advantages__main {
  display: grid;
  grid-row-gap: 1rem;
  grid-column-gap: 1rem;
  grid-template-columns: 1fr 1fr;
}

.market-advantages__item {
  line-height: 150%;
  font-size: 0.625rem;
  text-align: center;
  padding: 0.625rem;
  background: white;
}

.market-advantages__icon {
  width: 2.5rem;
  margin: 0 auto 0.75rem auto;
}

.market-advantages__text {
  opacity: .8;
}

.market-advantages__media {
  display: none;
}

@media (min-width: 768px) {
  .market-advantages {
    grid-row-gap: 1.25rem;
  }
  .market-advantages__main {
    grid-row-gap: 1.25rem;
    grid-column-gap: 1.25rem;
  }
  .market-advantages__item {
    font-size: 1rem;
    padding: 2.5rem 3rem 1.875rem 3rem;
  }
  .market-advantages__icon {
    width: 5rem;
    margin-bottom: 1.875rem;
  }
}

@media (min-width: 1230px) {
  .market-advantages {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr 35.625rem;
  }
  .market-advantages__content p {
    margin-bottom: 2.5rem;
  }
  .market-advantages__content p:last-child {
    margin-bottom: 0;
  }
  .market-advantages__item {
    min-height: 19.5rem;
    padding: 3.75rem 1.875rem 2.875rem 1.875rem;
  }
  .market-advantages__media {
    fill: white;
    width: 468px;
    display: block;
    left: -15rem;
    bottom: -5rem;
    position: absolute;
  }
}

.level {
  position: relative;
  display: grid;
  grid-row-gap: 0.75rem;
  grid-template-columns: 1fr;
}

.level__steps {
  font-weight: 700;
  line-height: 150%;
  font-size: 1.125rem;
  color: var(--green);
  margin-bottom: 0.25rem;
  display: flex;
  align-items: center;
}

.level__line {
  height: 1px;
  width: 48px;
  font-size: 0;
  line-height: 0;
  flex-shrink: 0;
  margin: 0 0.5rem;
  background: var(--green);
}

.level__title {
  font-weight: 700;
  line-height: 150%;
  font-size: 1.125rem;
  margin-bottom: 0.25rem;
}

.level__media {
  display: none;
}

@media (min-width: 768px) {
  .level {
    grid-row-gap: 1.25rem;
  }
  .level__steps {
    font-size: 1.25rem;
    margin-bottom: 0.5rem;
  }
  .level__title {
    font-size: 1.25rem;
    margin-bottom: 0.5rem;
  }
}

@media (min-width: 992px) {
  .level {
    grid-column-gap: 1.25rem;
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 1230px) {
  .level__line {
    width: 54px;
    margin: 0 1rem;
  }
  .level__steps {
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
  .level__title {
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
  .level__wrap {
    max-width: 32.5rem;
  }
  .level__media {
    top: -28px;
    right: -280px;
    width: 336px;
    display: block;
    position: absolute;
    fill: var(--green);
    opacity: .2;
  }
}

.decision-block {
  position: relative;
  display: grid;
  grid-row-gap: 1.25rem;
  grid-template-columns: 1fr;
}

.decision-block__content {
  z-index: 10;
  position: relative;
}

.decision-block__header {
  font-weight: 700;
  line-height: 120%;
  font-size: 1.125rem;
  margin-bottom: 1rem;
}

.decision-block__text p {
  margin-bottom: 0.5rem;
}

.decision-block__text p:last-child {
  margin-bottom: 0;
}

.decision-block__media {
  height: 10.9375rem;
  overflow: hidden;
}

.decision-block__image {
  height: 100%;
}

.decision-block__image--xl {
  display: none;
}

.decision-block__pattern {
  display: none;
}

@media (min-width: 768px) {
  .decision-block__header {
    font-weight: 800;
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
  }
  .decision-block__media {
    height: 18.25rem;
  }
}

@media (min-width: 992px) {
  .decision-block {
    grid-column-gap: 2.5rem;
    grid-template-columns: 1fr 1fr;
  }
  .decision-block__media {
    height: auto;
  }
  .decision-block__image--sm {
    display: none;
  }
  .decision-block__image--xl {
    display: block;
  }
}

@media (min-width: 1230px) {
  .decision-block {
    grid-template-columns: auto 35.625rem;
  }
  .decision-block__header {
    font-size: 2rem;
    margin-bottom: 2.25rem;
  }
  .decision-block__text p {
    margin-bottom: 0.75rem;
  }
  .decision-block__text p:last-child {
    margin-bottom: 0;
  }
  .decision-block__pattern {
    z-index: 1;
    bottom: 3.125rem;
    left: -13.5rem;
    width: 29.25rem;
    display: block;
    position: absolute;
  }
}

.approach {
  display: grid;
  grid-row-gap: 1rem;
  grid-column-gap: 1rem;
  grid-template-columns: 1fr 1fr;
}

.approach__item {
  line-height: 140%;
  font-size: 0.75rem;
}

.approach__icon {
  width: 2.5rem;
  margin-bottom: 0.625rem;
}

@media (min-width: 768px) {
  .approach {
    grid-row-gap: 1.25rem;
    grid-column-gap: 1.25rem;
  }
  .approach__item {
    font-size: 0.875rem;
  }
  .approach__icon {
    width: 3.125rem;
    margin-bottom: 1.25rem;
  }
}

@media (min-width: 992px) {
  .approach {
    grid-row-gap: 1.875rem;
    grid-column-gap: 2.5rem;
  }
}

@media (min-width: 1230px) {
  .approach {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .approach__icon {
    width: 4.375rem;
  }
}

.components {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-template-columns: 1fr;
}

.components__subtitle {
  margin-bottom: 0.5rem;
}

.components__primary {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-template-columns: 1fr;
}

.components__header {
  font-weight: 700;
  line-height: 150%;
  font-size: 1rem;
  text-align: center;
}

.components__header br {
  display: none;
}

.components__secondary {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-column-gap: 1.25rem;
  grid-template-columns: 1fr;
}

.components__title {
  font-weight: 700;
  line-height: 150%;
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
}

.components__item {
  padding: 1rem;
  background: white;
}

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

.components__item ul li {
  position: relative;
  padding-left: 1.125rem;
}

.components__item ul li:not(:last-child) {
  margin-bottom: 0.5rem;
}

.components__item ul li:before {
  left: 0.3125rem;
  top: 0.5rem;
  width: 6px;
  height: 6px;
  content: '';
  border-radius: 50%;
  position: absolute;
  background: var(--black);
}

@media (min-width: 768px) {
  .components__subtitle {
    margin-bottom: 1rem;
  }
  .components__item {
    padding: 1.25rem;
  }
  .components__item ul li {
    padding-left: 1.5rem;
  }
  .components__item ul li:before {
    left: 0.25rem;
  }
  .components__item ul li:not(:last-child) {
    margin-bottom: 1rem;
  }
  .components__title {
    font-size: 1.125rem;
    margin-bottom: 1rem;
  }
  .components__header {
    font-size: 1.25rem;
  }
  .components__header br {
    display: block;
  }
}

@media (min-width: 1230px) {
  .components {
    grid-row-gap: 2.5rem;
  }
  .components__primary {
    grid-column-gap: 3.75rem;
    grid-template-columns: 1fr 1fr;
  }
  .components__header {
    font-size: 1.5rem;
  }
  .components__secondary {
    grid-template-columns: 1fr 1fr;
  }
  .components__item {
    padding: 2.5rem;
  }
  .components__item ul li:before {
    top: 0.625rem;
  }
  .components__item ul li:not(:last-child) {
    margin-bottom: 1rem;
  }
}

.filling__media {
  display: none;
}

.filling__logo {
  width: 8.625rem;
  display: block;
  margin-bottom: 1.875rem;
}

.filling__title {
  font-weight: 700;
  font-size: 1rem;
  margin-bottom: 1.25rem;
}

.filling__text {
  margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .filling__logo {
    width: 9.375rem;
    margin-bottom: 2.5rem;
  }
  .filling__media {
    margin-bottom: 2.5rem;
  }
}

@media (min-width: 1230px) {
  .filling {
    display: flex;
    justify-content: space-between;
  }
  .filling__main {
    width: 48rem;
    flex-grow: 0;
    flex-shrink: 0;
  }
  .filling__media {
    fill: white;
    display: block;
    width: 19.5625rem;
    flex-grow: 0;
    flex-shrink: 0;
    margin: 0;
  }
  .filling__title {
    font-size: 1.125rem;
  }
}

[data-filling] {
  overflow: visible;
}

[data-filling] .swiper-slide {
  width: 12.5rem;
}

@media (min-width: 768px) {
  [data-filling] .swiper-wrapper {
    width: 100%;
    display: grid;
    grid-column-gap: 1.25rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
  [data-filling] .swiper-slide {
    width: auto;
  }
}

.features-item {
  line-height: 150%;
  font-size: 0.875rem;
}

.features-item__icon {
  width: 2.5rem;
  margin-bottom: 1.25rem;
}

.features-item__title {
  color: var(--green);
  font-weight: 700;
  font-size: 0.875rem;
  margin-bottom: 0.75rem;
}

.features-item__text {
  opacity: .7;
}

.features-item__text ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.features-item__text ul li {
  position: relative;
  padding-left: 1.125rem;
}

.features-item__text ul li:before {
  top: 9px;
  left: 4px;
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  background: var(--black);
}

@media (min-width: 768px) {
  .features-item__icon {
    width: 4.375rem;
  }
  .features-item__title {
    font-size: 1.125rem;
    margin-bottom: 0.75rem;
  }
}

[data-features] {
  overflow: visible;
}

[data-features] .swiper-slide {
  width: 12.5rem;
}

@media (min-width: 768px) {
  [data-features] .swiper-slide {
    width: 17.1875rem;
  }
}

@media (min-width: 1230px) {
  [data-features] {
    overflow: hidden;
  }
  [data-features] .swiper-slide {
    width: auto;
  }
}

.unit-cover {
  position: relative;
}

.unit-cover__breadcrumb {
  display: none;
}

.unit-cover__media {
  overflow: hidden;
  margin: 0 auto;
  padding: 1.25rem;
  position: relative;
  max-width: 35rem;
}

.unit-cover__media:before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: '';
  z-index: 10;
  position: absolute;
  background: url("../img/unit_linear.svg") 0 0 no-repeat;
  background-size: cover;
}

.unit-cover__image {
  height: 10.625rem;
}

.unit-cover__main {
  padding-bottom: 1.875rem;
}

.unit-cover__subtitle {
  font-weight: 500;
  line-height: 150%;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.unit-cover__text p:last-child {
  margin-bottom: 0;
}

@media (min-width: 576px) {
  .unit-cover__image {
    height: 15rem;
  }
}

@media (min-width: 768px) {
  .unit-cover__breadcrumb {
    display: block;
    margin: 1.25rem 0;
  }
  .unit-cover__media {
    padding: 0;
    max-width: 43rem;
  }
  .unit-cover__image {
    height: 18.25rem;
  }
  .unit-cover__main {
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }
  .unit-cover__header {
    line-height: 120%;
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
  }
  .unit-cover__subtitle {
    font-size: 1.25rem;
  }
  .unit-cover__text {
    line-height: 150%;
    font-size: 1rem;
  }
}

@media (min-width: 992px) {
  .unit-cover__media {
    max-width: 57.5rem;
  }
  .unit-cover__image {
    height: 25rem;
  }
}

@media (min-width: 1230px) {
  .unit-cover {
    min-height: 33.125rem;
  }
  .unit-cover__media {
    margin: 0;
    width: auto;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 0;
    overflow: hidden;
    left: calc(50% + 10px);
    z-index: 1;
    position: absolute;
  }
  .unit-cover__image {
    top: 0;
    right: -168px;
    width: 1199px;
    height: 100%;
    position: absolute;
  }
  .unit-cover__main {
    z-index: 5;
    position: relative;
  }
  .unit-cover__content {
    max-width: 35.625rem;
  }
  .unit-cover__header {
    font-size: 2.25rem;
    margin-bottom: 1.25rem;
  }
  .unit-cover__subtitle {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }
}

.unit-media {
  overflow: hidden;
  margin-bottom: 1.25rem;
  border-radius: 30px 0 30px 0;
  padding: 2px;
  background: linear-gradient(180deg, #E8F6E4 0%, #51B42F 100%);
  display: flex;
}

.unit-media__item {
  height: 244px;
  flex-grow: 1;
  transition: .5s;
  padding: 0 1px;
  overflow: hidden;
  background: linear-gradient(180deg, #E8F6E4 0%, #51B42F 100%);
}

.unit-media__item:first-child {
  border-radius: 27px 0 0 0;
  padding-left: 0;
}

.unit-media__item:last-child {
  border-radius: 0 0 27px 0;
  padding-right: 0;
}

@media (min-width: 768px) {
  .unit-media {
    padding: 4px;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .unit-media__item {
    height: 466px;
    padding: 0 2px;
  }
  .unit-media__item:hover {
    width: 360px;
    transition: .5s;
    flex-shrink: 0;
  }
}

@media (min-width: 1230px) {
  .unit-media {
    margin-bottom: 2.5rem;
  }
  .unit-media__item {
    height: 498px;
  }
  .unit-media__item:hover {
    width: 500px;
  }
}

.unit-content {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-column-gap: 2.5rem;
  grid-template-columns: 1fr;
  margin-bottom: 2.5rem;
}

.unit-content__text:not(:last-child) {
  margin-bottom: 0.5rem;
}

.unit-content__title {
  font-weight: 700;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.unit-content__item {
  display: flex;
  align-items: center;
}

.unit-content__item:not(:last-child) {
  margin-bottom: 1rem;
}

.unit-content__icon {
  width: 2.5rem;
  height: 2.5rem;
  flex-shrink: 0;
  margin-right: 0.75rem;
}

@media (min-width: 768px) {
  .unit-content {
    margin-bottom: 2.5rem;
  }
  .unit-content__text:not(:last-child) {
    margin-bottom: 1rem;
  }
  .unit-content__title {
    font-size: 1.125rem;
    margin-bottom: 1rem;
  }
  .unit-content__icon {
    margin-right: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .unit-content {
    grid-template-columns: 1fr 24.5rem;
  }
  .unit-content__item {
    font-size: 1rem;
  }
  .unit-content__item:not(:last-child) {
    margin-bottom: 2.5rem;
  }
  .unit-content__title {
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .unit-content__text:not(:last-child) {
    margin-bottom: 1.25rem;
  }
}

.unit-drawings__header {
  color: white;
  font-weight: 500;
  line-height: 150%;
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  background: var(--green);
  border-radius: 8px 8px 0 0;
}

.unit-drawings__main {
  position: relative;
}

.unit-drawings__pagination {
  margin-top: 0.3125rem;
}

.unit-drawings__nav {
  display: none;
}

.unit-drawings__item {
  display: block;
  max-width: 855px;
  margin: 0 auto;
}

.unit-drawings .swiper-pagination {
  left: auto;
  right: auto;
  bottom: auto;
  font-size: 0;
  line-height: 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 1rem;
}

.unit-drawings .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: block;
  flex-shrink: 0;
  cursor: pointer;
  border-radius: 50%;
  background: var(--grey-200);
}

.unit-drawings .swiper-pagination-bullet-active {
  background: var(--green);
}

@media (min-width: 768px) {
  .unit-drawings__header {
    font-size: 1.125rem;
    padding: 0.875rem 1rem;
  }
  .unit-drawings__pagination {
    display: none;
  }
  .unit-drawings__nav {
    top: calc(50% - 17px);
    z-index: 20;
    display: block;
    position: absolute;
  }
  .unit-drawings__nav--prev {
    left: -16px;
  }
  .unit-drawings__nav--next {
    right: -16px;
  }
}

.capability {
  display: grid;
  grid-row-gap: 0.5rem;
  grid-template-columns: 1fr;
}

.capability__lead {
  font-weight: 700;
  font-size: 0.875rem;
  color: var(--green);
}

.capability__text {
  margin-top: 0.5rem;
}

@media (min-width: 768px) {
  .capability {
    grid-column-gap: 1.25rem;
    grid-template-columns: 17.125rem 1fr;
  }
  .capability__lead {
    font-size: 1rem;
  }
  .capability__text {
    margin-top: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .capability {
    grid-template-columns: 23.375rem 1fr;
  }
  .capability__lead {
    font-size: 1.125rem;
    padding-right: 2.5rem;
  }
  .capability__text {
    margin-top: 2.5rem;
  }
}

.specificity {
  height: 100%;
  padding: 1rem;
  background: white;
  position: relative;
  font-size: 0.625rem;
  line-height: 0.875rem;
  min-height: 15.3125rem;
}

.specificity__title {
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 150%;
  position: relative;
  margin-bottom: 0.625rem;
  padding-bottom: 0.625rem;
}

.specificity__title:before {
  left: 0;
  bottom: 0;
  content: '';
  height: 2px;
  width: 33px;
  position: absolute;
  background: var(--green);
}

.specificity__icon {
  left: 1rem;
  bottom: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  position: absolute;
}

@media (min-width: 768px) {
  .specificity {
    padding: 1.25rem;
    font-size: 0.875rem;
    line-height: 150%;
    min-height: 20rem;
  }
  .specificity__title {
    font-size: 1rem;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
  }
  .specificity__icon {
    left: 1.25rem;
    bottom: 1.25rem;
    width: 5rem;
    height: 5rem;
  }
}

@media (min-width: 1230px) {
  .specificity {
    min-height: 22.5rem;
    padding: 2.5rem 1.25rem;
  }
}

[data-specificity] {
  overflow: visible;
}

[data-specificity] .swiper-slide {
  width: 12.5rem;
}

@media (min-width: 768px) {
  [data-specificity] .swiper-slide {
    height: auto;
    width: 17.1875rem;
  }
}

@media (min-width: 1230px) {
  [data-specificity] {
    overflow: hidden;
  }
  [data-specificity] .swiper-slide {
    width: auto;
  }
}

.units__title {
  font-weight: 500;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.units__media {
  margin: 1rem 0;
}

.units__media .swiper {
  overflow: visible;
}

.units__media .swiper-slide {
  width: 12.5rem;
}

.units__media .swiper-pagination {
  left: auto;
  right: auto;
  bottom: auto;
  font-size: 0;
  line-height: 0;
  margin-top: 1rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 0.1875rem;
}

.units__media .swiper-pagination-bullet {
  width: 4px;
  height: 4px;
  display: block;
  flex-shrink: 0;
  cursor: pointer;
  border-radius: 50%;
  background: var(--grey-200);
}

.units__media .swiper-pagination-bullet-active {
  background: var(--green);
}

@media (min-width: 768px) {
  .units__title {
    font-size: 1.125rem;
  }
  .units__media {
    margin: 1.25rem 0;
  }
  .units__media .swiper-wrapper {
    max-width: 100%;
    display: grid;
    grid-row-gap: 1.25rem;
    grid-column-gap: 1.25rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .units__media .swiper-slide {
    width: auto;
  }
  .units__media .swiper-pagination {
    display: none;
  }
}

@media (min-width: 1230px) {
  .units__title {
    font-size: 1.25rem;
    margin-bottom: 1.875rem;
  }
  .units__media {
    margin: 2.5rem 0;
  }
}

.error-page {
  padding: 5.625rem 0;
  text-align: center;
  font-size: 1rem;
  line-height: 150%;
}

.error-page__header {
  font-weight: 700;
  line-height: 120%;
  font-size: 8.75rem;
  color: var(--green);
  margin-bottom: 1.25rem;
}

.error-page__title {
  line-height: 150%;
  font-size: 1.25rem;
  color: var(--green);
  margin-bottom: 1.25rem;
}

.error-page__text {
  padding: 0 1.25rem;
  margin-bottom: 1.25rem;
}

@media (min-width: 768px) {
  .error-page__header {
    font-size: 9.375rem;
    margin-bottom: 1.5rem;
  }
  .error-page__title {
    margin-bottom: 1.5rem;
  }
  .error-page__text {
    margin-bottom: 1.375rem;
  }
}

.search-result__message {
  font-size: 0.875rem;
  line-height: 150%;
  margin-bottom: 1rem;
}

.search-result__message--found {
  color: var(--grey-600);
}

.search-result__main {
  display: grid;
  grid-row-gap: 0.5rem;
  grid-template-columns: 1fr;
}

.search-result__item {
  line-height: 150%;
  font-size: 0.875rem;
  color: var(--grey-600);
}

.search-result__title {
  font-weight: 500;
  font-size: 1rem;
  position: relative;
  margin-bottom: 0.625rem;
  padding-bottom: 0.625rem;
}

.search-result__title:before {
  left: 0;
  bottom: 0;
  content: '';
  height: 2px;
  width: 80px;
  position: absolute;
  background: var(--green);
}

.search-result__title a {
  color: var(--black);
  text-decoration: none;
  transition: .25s;
}

.search-result__title a:hover {
  color: var(--green);
  text-decoration: none;
  transition: .25s;
}

@media (min-width: 768px) {
  .search-result {
    margin-top: 1.875rem;
  }
  .search-result__message {
    font-size: 1.25rem;
    margin-bottom: 1.875rem;
  }
  .search-result__main {
    grid-row-gap: 1.25rem;
  }
  .search-result__item {
    font-size: 1.125rem;
  }
  .search-result__title {
    font-size: 1.5rem;
  }
}

@media (min-width: 1230px) {
  .search-result {
    margin-top: 2.5rem;
  }
  .search-result__message {
    margin-bottom: 2.5rem;
  }
  .search-result__main {
    grid-row-gap: 2.5rem;
  }
}

.primary {
  position: relative;
}

.primary__breadcrumb {
  display: none;
}

.primary__media {
  margin: 0 auto;
  padding: 1.25rem;
  position: relative;
  max-width: 35rem;
}

.primary__image {
  height: 10.625rem;
}

.primary__main {
  padding-bottom: 1.875rem;
}

.primary__text p:last-child {
  margin-bottom: 0;
}

.primary__header {
  font-weight: 700;
  line-height: 120%;
  font-size: 1.5rem;
  margin-bottom: 1rem;
}

@media (min-width: 576px) {
  .primary__image {
    height: 15rem;
  }
}

@media (min-width: 768px) {
  .primary__breadcrumb {
    display: block;
    margin: 1.25rem 0;
  }
  .primary__media {
    padding: 0;
    max-width: 43rem;
  }
  .primary__image {
    height: 18.25rem;
  }
  .primary__main {
    padding-top: 1.25rem;
    padding-bottom: 2.5rem;
  }
  .primary__header {
    line-height: 120%;
    font-size: 1.75rem;
    margin-bottom: 1.25rem;
  }
  .primary__text {
    line-height: 150%;
    font-size: 1.125rem;
  }
}

@media (min-width: 992px) {
  .primary__media {
    max-width: 57.5rem;
  }
  .primary__media:before {
    width: 7.5rem;
  }
  .primary__image {
    height: 25rem;
  }
}

@media (min-width: 1230px) {
  .primary {
    min-height: 29.75rem;
  }
  .primary__media {
    margin: 0;
    width: auto;
    top: 0;
    right: 0;
    bottom: 0;
    padding: 0;
    max-width: inherit;
    overflow: hidden;
    left: calc(50% + 10px);
    z-index: 1;
    position: absolute;
  }
  .primary__image {
    top: 0;
    left: 0;
    width: 710px;
    height: 100%;
    position: absolute;
  }
  .primary__main {
    z-index: 5;
    position: relative;
  }
  .primary__content {
    padding: 0;
    max-width: 35.625rem;
  }
}

@media (min-width: 1640px) {
  .primary__header {
    font-size: 2.25rem;
  }
  .primary__image {
    width: 100%;
  }
}

.stages {
  padding-top: 1.875rem;
  background: var(--light-blue);
}

.stages__heading {
  margin-bottom: 1.875rem;
}

@media (min-width: 768px) {
  .stages {
    padding-top: 0;
    padding-bottom: 2.5rem;
    background: white;
  }
  .stages__heading {
    margin-bottom: 1.25rem;
  }
}

@media (min-width: 1230px) {
  .stages {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}

.stage {
  position: relative;
  border-bottom: 1px solid var(--green);
}

.stage:first-child {
  border-top: 1px solid var(--green);
}

.stage:last-child .stage__content:before {
  display: none;
}

.stage__header {
  cursor: pointer;
  padding: 1rem 0;
  display: grid;
  align-items: center;
  grid-template-columns: 7rem 1fr;
}

.stage__info {
  flex-shrink: 1;
}

.stage__step {
  font-weight: 700;
  line-height: 150%;
  font-size: 1rem;
  color: var(--green);
}

.stage__title {
  font-weight: 700;
  line-height: 150%;
  font-size: 0.75rem;
  color: var(--black);
}

.stage__content {
  position: relative;
}

.stage__content:before {
  bottom: -10px;
  right: 20px;
  content: '';
  z-index: 10;
  width: 20px;
  height: 20px;
  position: absolute;
  background: var(--green);
  transform: rotate(45deg);
  opacity: 0;
  visibility: hidden;
}

.stage__wrap {
  z-index: 10;
  position: relative;
  padding-bottom: 1rem;
}

.stage__pattern {
  display: none;
}

.stage.open {
  z-index: 10;
  color: white;
  background: var(--green);
}

.stage.open:after, .stage.open:before {
  top: -1px;
  bottom: -1px;
  z-index: 1;
  content: '';
  width: 2000px;
  position: absolute;
  background: var(--green);
}

.stage.open:after {
  left: 100%;
}

.stage.open:before {
  right: 100%;
}

.stage.open .stage__step {
  color: white;
}

.stage.open .stage__title {
  color: white;
}

.stage.open .stage__content:before {
  opacity: 1;
  visibility: visible;
}

@media (min-width: 768px) {
  .stage {
    background: var(--light-blue);
  }
  .stage__header {
    font-size: 1.125rem;
    padding: 1.25rem;
    grid-column-gap: 1.25rem;
    grid-template-columns: 12.5rem 1fr;
  }
  .stage__title {
    font-weight: 500;
    font-size: 1.125rem;
  }
  .stage__step {
    font-size: 1.5rem;
  }
  .stage__content:before {
    right: auto;
    left: 180px;
  }
  .stage__wrap {
    padding: 0 1.25rem 1.25rem 1.25rem;
  }
  .stage.open:after, .stage.open:before {
    display: none;
  }
}

@media (min-width: 1230px) {
  .stage__header {
    font-size: 1.5rem;
    padding: 1.625rem 2.5rem;
    grid-template-columns: 21.25rem 1fr;
  }
  .stage__step {
    font-size: 2rem;
  }
  .stage__title {
    font-size: 1.5rem;
  }
  .stage__content:before {
    width: 30px;
    height: 30px;
    right: auto;
    left: 270px;
    bottom: -15px;
  }
  .stage__wrap {
    padding: 1rem 5.375rem 3.625rem 25rem;
  }
  .stage__pattern {
    left: 0;
    bottom: 0;
    z-index: 1;
    width: 468px;
    display: block;
    position: absolute;
    fill: white;
    opacity: .3;
  }
}

.stage-content {
  display: grid;
  font-size: 0.5625rem;
  line-height: 150%;
  color: var(--black);
  grid-row-gap: 1rem;
  grid-column-gap: 1rem;
  grid-template-columns: 1fr 1fr;
}

.stage-content__item {
  padding: 0.5rem;
  text-align: center;
  min-height: 8.375rem;
  background: rgba(249, 249, 249, 0.7);
}

.stage-content__item--xl {
  grid-column: span 2;
}

.stage-content__icon {
  width: 2.5rem;
  margin: 0 auto 0.5rem auto;
}

.stage-content__text {
  opacity: .8;
}

@media (min-width: 768px) {
  .stage-content {
    font-size: 0.75rem;
    line-height: 150%;
    grid-row-gap: 1.25rem;
    grid-column-gap: 1.25rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .stage-content__item {
    padding: 1rem;
    min-height: 8.875rem;
  }
  .stage-content__icon {
    margin-bottom: 1rem;
  }
}

@media (min-width: 992px) {
  .stage-content {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}

@media (min-width: 1230px) {
  .stage-content {
    font-size: 1rem;
    grid-template-columns: 1fr 1fr;
  }
  .stage-content__item {
    min-height: 15.125rem;
    padding: 1.75rem 1.25rem;
  }
  .stage-content__item--xl {
    min-height: 12.125rem;
  }
  .stage-content__icon {
    width: 4.375rem;
    margin-bottom: 1.25rem;
  }
}

.project__content {
  margin-bottom: 1rem;
}

.project__item {
  display: block;
  overflow: hidden;
  height: 11.875rem;
}

.project__name {
  font-weight: 500;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.project__text {
  opacity: .9;
}

.project__media {
  position: relative;
}

.project__nav {
  top: calc(50% - 17px);
  z-index: 20;
  display: none;
  position: absolute;
}

.project__nav--prev {
  left: -16px;
}

.project__nav--next {
  right: -16px;
}

.project .swiper-pagination {
  left: 0;
  right: 0;
  bottom: 0;
  font-size: 0;
  line-height: 0;
  position: relative;
  margin-top: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: 1rem;
}

.project .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: block;
  cursor: pointer;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--grey-200);
}

.project .swiper-pagination-bullet-active {
  background: var(--green);
}

@media (min-width: 768px) {
  .project__name {
    font-size: 1.125rem;
  }
  .project__content {
    font-size: 1rem;
    line-height: 150%;
    margin-bottom: 1.25rem;
  }
  .project__item {
    height: auto;
  }
  .project__nav {
    display: block;
  }
  .project .swiper-pagination {
    display: none;
  }
}

@media (min-width: 1230px) {
  .project {
    display: flex;
    column-gap: 3.75rem;
    align-items: flex-start;
    justify-content: space-between;
  }
  .project__name {
    font-size: 1.25rem;
    margin-bottom: 1.25rem;
  }
  .project__content {
    flex-grow: 1;
    font-size: 1rem;
    line-height: 150%;
  }
  .project__content .pretty-list li:before {
    top: -2px;
  }
  .project__media {
    width: 35rem;
    flex-shrink: 0;
  }
  .project__item {
    height: 20rem;
  }
}

.cookie-overlay {
  left: 0;
  right: 0;
  bottom: 0;
  height: auto;
  z-index: 1200;
  position: fixed;
  padding: 1.25rem 1.875rem;
}

.cookie {
  margin: 0 auto;
  max-width: 31.25rem;
  color: white;
  position: relative;
  font-size: 0.875rem;
  line-height: 1.3125rem;
}

.cookie:before {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  content: '';
  position: absolute;
  background: var(--green);
  border-radius: 30px 0 30px 0;
  transform: skew(-10deg);
}

.cookie__main {
  z-index: 10;
  padding: 1.25rem 42px;
  position: relative;
}

.cookie__title {
  font-weight: 500;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}

.cookie__text {
  opacity: .7;
  margin-bottom: 1.25rem;
}

.cookie .btn {
  width: 100%;
}

.cookie .btn span {
  flex-grow: 1;
}

@media (min-width: 768px) {
  .cookie {
    max-width: 71rem;
  }
  .cookie__main {
    display: flex;
    column-gap: 2.5rem;
    align-items: center;
    justify-content: space-between;
  }
  .cookie__text {
    margin-bottom: 0;
  }
}

@media (min-width: 1230px) {
  .cookie__title {
    font-size: 1.125rem;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed_responsive_item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive_21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive_16by9::before {
  padding-top: 56.25%;
}

.embed-responsive_4by3::before {
  padding-top: 75%;
}

.embed-responsive_1by1::before {
  padding-top: 100%;
}

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

.img-cover {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
}

.img-cover--bottom {
  object-position: center bottom;
}

.img-contain {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center center;
}

.ico-svg {
  position: relative;
  display: inline-block;
  width: auto;
  height: 100%;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.hide {
  opacity: 0 !important;
  display: none !important;
  visibility: hidden !important;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

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

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

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

.text-justify {
  text-align: justify !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mb-10 {
  margin-bottom: 0.625rem !important;
}

.mb-20 {
  margin-bottom: 1.25rem !important;
}

.mb-30 {
  margin-bottom: 1.875rem !important;
}

.mb-40 {
  margin-bottom: 2.5rem !important;
}

.mb-50 {
  margin-bottom: 3.125rem !important;
}

.mb-60 {
  margin-bottom: 3.75rem !important;
}

.mb-1 {
  margin-bottom: 1rem !important;
}

.mb-15 {
  margin-bottom: 1.5rem !important;
}

.mb-2 {
  margin-bottom: 2rem !important;
}

.mb-25 {
  margin-bottom: 2.5rem !important;
}

.mb-3 {
  margin-bottom: 3rem !important;
}

.mb-35 {
  margin-bottom: 3.5rem !important;
}

.mb-4 {
  margin-bottom: 4rem !important;
}

.d-flex {
  display: flex;
}

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

.align-start {
  align-items: flex-start;
}

.align-end {
  align-items: flex-end;
}

.justify-content-between {
  justify-content: space-between;
}

.justify-content-start {
  justify-content: flex-start;
}

.justify-content-end {
  justify-content: flex-end;
}

.justify-content-center {
  justify-content: center;
}

.overflow-hidden {
  overflow: hidden;
}

.color-green {
  color: var(--green);
}

@media (max-width: 767px) {
  .hide-sm {
    display: none;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5taW4uY3NzIiwic291cmNlcyI6WyJtYWluLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJsYXlvdXQvX2Z1bmN0aW9ucy5zY3NzIiwibWl4aW5zL19taXhpbnMuc2NzcyIsIm1peGlucy9faGVscGVycy5zY3NzIiwibWl4aW5zL19jb250YWluZXIuc2NzcyIsIm1peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsIm1peGlucy9fZ3JpZC5zY3NzIiwibWl4aW5zL19mb250ZmFjZS5zY3NzIiwibWl4aW5zL192aXN1YWxseS1oaWRkZW4uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvc3dpcGVyLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvc3dpcGVyL3N3aXBlci12YXJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGZhbmN5YXBwcy91aS9zcmMvRmFuY3lib3gvRmFuY3lib3guc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFuY3lhcHBzL3VpL3NyYy9DYXJvdXNlbC9DYXJvdXNlbC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYW5jeWFwcHMvdWkvc3JjL0Nhcm91c2VsL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYW5jeWFwcHMvdWkvc3JjL0Nhcm91c2VsL3Njc3MvYmFzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYW5jeWFwcHMvdWkvc3JjL0Nhcm91c2VsL3BsdWdpbnMvRG90cy9Eb3RzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGZhbmN5YXBwcy91aS9zcmMvQ2Fyb3VzZWwvcGx1Z2lucy9OYXZpZ2F0aW9uL05hdmlnYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFuY3lhcHBzL3VpL3NyYy9GYW5jeWJveC9zY3NzL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFuY3lhcHBzL3VpL3NyYy9GYW5jeWJveC9zY3NzL19taXhpbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFuY3lhcHBzL3VpL3NyYy9GYW5jeWJveC9zY3NzL2Jhc2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFuY3lhcHBzL3VpL3NyYy9GYW5jeWJveC9zY3NzL3NwaW5uZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFuY3lhcHBzL3VpL3NyYy9GYW5jeWJveC9zY3NzL2FuaW1hdGlvbnMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9AZmFuY3lhcHBzL3VpL3NyYy9GYW5jeWJveC9zY3NzL3Njcm9sbGJhci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYW5jeWFwcHMvdWkvc3JjL0ZhbmN5Ym94L3Njc3MvY3Vyc29yLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGZhbmN5YXBwcy91aS9zcmMvRmFuY3lib3gvcGx1Z2lucy9JbWFnZS9JbWFnZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL0BmYW5jeWFwcHMvdWkvc3JjL0ZhbmN5Ym94L3BsdWdpbnMvSHRtbC9IdG1sLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGZhbmN5YXBwcy91aS9zcmMvRmFuY3lib3gvcGx1Z2lucy9UaHVtYnMvVGh1bWJzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGZhbmN5YXBwcy91aS9zcmMvRmFuY3lib3gvcGx1Z2lucy9Ub29sYmFyL1Rvb2xiYXIuc2NzcyIsImxheW91dC9fZm9udHMuc2NzcyIsImxheW91dC9fYmFzZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplLmNzcyIsImNvbXBvbmVudHMvX2Z1bGxzY3JlZW4uc2NzcyIsImNvbXBvbmVudHMvX2NvbnRhaW5lcnMuc2NzcyIsImNvbXBvbmVudHMvX2dyaWQuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2Zvcm1zLnNjc3MiLCJjb21wb25lbnRzL2Zvcm1zL19pbnB1dHMuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX2NoZWNrYm94ZXMuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3JhZGlvYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fY2hvaWNlcy5zY3NzIiwiY29tcG9uZW50cy9mb3Jtcy9fcmFuZ2Uuc2NzcyIsImNvbXBvbmVudHMvZm9ybXMvX3F1YW50aXR5LnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9fdGFicy5zY3NzIiwiY29tcG9uZW50cy9fY29sbGFwc2Uuc2NzcyIsImNvbXBvbmVudHMvX3Nwb2lsZXJzLnNjc3MiLCJjb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwiY29tcG9uZW50cy9fcmF0aW5nLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19wYWdlLW5hdi5zY3NzIiwiX2NvbnRlbnQuc2NzcyIsInBhcnRzL19oZWFkZXIuc2NzcyIsInBhcnRzL19mb290ZXIuc2NzcyIsInBhcnRzL19zZWFyY2guc2NzcyIsInBhcnRzL19tb2JpbGUtbmF2LnNjc3MiLCJwYXJ0cy9fbW9iaWxlLXNlYXJjaC5zY3NzIiwicGFydHMvX2hlYWRpbmcuc2NzcyIsInBhcnRzL19wcm9tby5zY3NzIiwicGFydHMvX2RpcmVjdGlvbnMuc2NzcyIsInBhcnRzL19jaG9vc2UtdXMuc2NzcyIsInBhcnRzL19taXNzaW9uLnNjc3MiLCJwYXJ0cy9fbmV3cy5zY3NzIiwicGFydHMvX2Fib3V0LWNvdmVyLnNjc3MiLCJwYXJ0cy9fd2hvLnNjc3MiLCJwYXJ0cy9fZGVjaXNpb25zLnNjc3MiLCJwYXJ0cy9fd2h5LnNjc3MiLCJwYXJ0cy9fcmVsaWFiaWxpdHkuc2NzcyIsInBhcnRzL19zaWRlLW5hdi5zY3NzIiwicGFydHMvX3Bvc3Quc2NzcyIsInBhcnRzL192aWRlby5zY3NzIiwicGFydHMvX21hbnVhbC5zY3NzIiwicGFydHMvX3Rhc2stYmxvY2suc2NzcyIsInBhcnRzL19iZW5lZml0LnNjc3MiLCJwYXJ0cy9fdG9vbHMuc2NzcyIsInBhcnRzL19tYXJrZXQtYWR2YW50YWdlcy5zY3NzIiwicGFydHMvX2xldmVsLnNjc3MiLCJwYXJ0cy9fZGVjaXNpb24tYmxvY2suc2NzcyIsInBhcnRzL19hcHByb2FjaC5zY3NzIiwicGFydHMvX2NvbXBvbmVudHMuc2NzcyIsInBhcnRzL19maWxsaW5nLnNjc3MiLCJwYXJ0cy9fZmVhdHVyZXMtaXRlbS5zY3NzIiwicGFydHMvX3VuaXQtY292ZXIuc2NzcyIsInBhcnRzL191bml0LW1lZGlhLnNjc3MiLCJwYXJ0cy9fdW5pdC1jb250ZW50LnNjc3MiLCJwYXJ0cy9fdW5pdC1kcmF3aW5ncy5zY3NzIiwicGFydHMvX2NhcGFiaWxpdHkuc2NzcyIsInBhcnRzL19zcGVjaWZpY2l0eS5zY3NzIiwicGFydHMvX3VuaXRzLnNjc3MiLCJwYXJ0cy9fZXJyb3ItcGFnZS5zY3NzIiwicGFydHMvX3NlYXJjaC1yZXN1bHQuc2NzcyIsInBhcnRzL19wcmltYXJ5LnNjc3MiLCJwYXJ0cy9fc3RhZ2VzLnNjc3MiLCJwYXJ0cy9fcHJvamVjdC5zY3NzIiwicGFydHMvX2Nvb2tpZS5zY3NzIiwibGF5b3V0L191dGlsaXRpZXMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICd2YXJpYWJsZXMnO1xuQGltcG9ydCAnLi9sYXlvdXQvZnVuY3Rpb25zJztcbkBpbXBvcnQgJy4vbWl4aW5zL21peGlucyc7XG5cbi8vIFBsdWdpbnNcbkBpbXBvcnQgJ25vZGVfbW9kdWxlcy9zd2lwZXIvc3dpcGVyLnNjc3MnO1xuQGltcG9ydCAnbm9kZV9tb2R1bGVzL0BmYW5jeWFwcHMvdWkvc3JjL0ZhbmN5Ym94L0ZhbmN5Ym94JztcblxuLy8gTGF5b3V0XG5AaW1wb3J0ICcuL2xheW91dC9mb250cyc7XG5AaW1wb3J0ICcuL2xheW91dC9iYXNlJztcblxuQGltcG9ydCAnLi9jb21wb25lbnRzL2Z1bGxzY3JlZW4nO1xuQGltcG9ydCAnLi9jb21wb25lbnRzL2NvbnRhaW5lcnMnO1xuQGltcG9ydCAnLi9jb21wb25lbnRzL2dyaWQnO1xuQGltcG9ydCAnLi9jb21wb25lbnRzL2J1dHRvbnMnO1xuQGltcG9ydCAnLi9jb21wb25lbnRzL2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvY29sbGFwc2UnO1xuQGltcG9ydCAnLi9jb21wb25lbnRzL3Nwb2lsZXJzJztcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICcuL2NvbXBvbmVudHMvcmF0aW5nJztcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJy4vY29tcG9uZW50cy9wYWdlLW5hdic7XG5cbkBpbXBvcnQgJ2NvbnRlbnQnO1xuXG5AaW1wb3J0ICdwYXJ0cy9oZWFkZXInO1xuQGltcG9ydCAncGFydHMvZm9vdGVyJztcbkBpbXBvcnQgJ3BhcnRzL3NlYXJjaCc7XG5AaW1wb3J0ICdwYXJ0cy9tb2JpbGUtbmF2JztcbkBpbXBvcnQgJ3BhcnRzL21vYmlsZS1zZWFyY2gnO1xuQGltcG9ydCAncGFydHMvaGVhZGluZyc7XG5cblxuQGltcG9ydCAncGFydHMvcHJvbW8nO1xuQGltcG9ydCAncGFydHMvZGlyZWN0aW9ucyc7XG5AaW1wb3J0ICdwYXJ0cy9jaG9vc2UtdXMnO1xuQGltcG9ydCAncGFydHMvbWlzc2lvbic7XG5AaW1wb3J0ICdwYXJ0cy9uZXdzJztcbkBpbXBvcnQgJ3BhcnRzL2Fib3V0LWNvdmVyJztcbkBpbXBvcnQgJ3BhcnRzL3dobyc7XG5AaW1wb3J0ICdwYXJ0cy9kZWNpc2lvbnMnO1xuQGltcG9ydCAncGFydHMvd2h5JztcbkBpbXBvcnQgJ3BhcnRzL3JlbGlhYmlsaXR5JztcbkBpbXBvcnQgJ3BhcnRzL3NpZGUtbmF2JztcbkBpbXBvcnQgJ3BhcnRzL3Bvc3QnO1xuQGltcG9ydCAncGFydHMvdmlkZW8nO1xuQGltcG9ydCAncGFydHMvbWFudWFsJztcbkBpbXBvcnQgJ3BhcnRzL3Rhc2stYmxvY2snO1xuQGltcG9ydCAncGFydHMvYmVuZWZpdCc7XG5AaW1wb3J0ICdwYXJ0cy90b29scyc7XG5AaW1wb3J0ICdwYXJ0cy9tYXJrZXQtYWR2YW50YWdlcyc7XG5AaW1wb3J0ICdwYXJ0cy9sZXZlbCc7XG5AaW1wb3J0ICdwYXJ0cy9kZWNpc2lvbi1ibG9jayc7XG5AaW1wb3J0ICdwYXJ0cy9hcHByb2FjaCc7XG5AaW1wb3J0ICdwYXJ0cy9jb21wb25lbnRzJztcbkBpbXBvcnQgJ3BhcnRzL2ZpbGxpbmcnO1xuQGltcG9ydCAncGFydHMvZmVhdHVyZXMtaXRlbSc7XG5AaW1wb3J0ICdwYXJ0cy91bml0LWNvdmVyJztcbkBpbXBvcnQgJ3BhcnRzL3VuaXQtbWVkaWEnO1xuQGltcG9ydCAncGFydHMvdW5pdC1jb250ZW50JztcbkBpbXBvcnQgJ3BhcnRzL3VuaXQtZHJhd2luZ3MnO1xuQGltcG9ydCAncGFydHMvY2FwYWJpbGl0eSc7XG5AaW1wb3J0ICdwYXJ0cy9zcGVjaWZpY2l0eSc7XG5AaW1wb3J0ICdwYXJ0cy91bml0cyc7XG5AaW1wb3J0ICdwYXJ0cy9lcnJvci1wYWdlJztcbkBpbXBvcnQgJ3BhcnRzL3NlYXJjaC1yZXN1bHQnO1xuQGltcG9ydCAncGFydHMvcHJpbWFyeSc7XG5AaW1wb3J0ICdwYXJ0cy9zdGFnZXMnO1xuQGltcG9ydCAncGFydHMvcHJvamVjdCc7XG5AaW1wb3J0ICdwYXJ0cy9jb29raWUnO1xuXG5AaW1wb3J0ICcuL2xheW91dC91dGlsaXRpZXMnO1xuIiwiLy8gT3B0aW9uc1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcblxuXG4vLyBjb2xvcnNcblxuJHdoaXRlOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRwcmltYXJ5OiAgICAgICAjMDAwICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRodG1sLWZvbnQtc2l6ZTogICAgICAgICAgICAxNnB4O1xuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kZm9udC1mYW1pbHktcHJpbWFyeTogQXJpYWwsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktc2Vjb25kYXJ5OiBBcmlhbCwgc2Fucy1zZXJpZjtcblxuJHRyYW5zaXRpb24tdGltZTogMC4yNXM7XG4kYm94LXNoYWRvdzogMCAwIDAgI2ZmZjtcblxuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gICAgMDogMCxcbiAgICAxOiAkc3BhY2VyIC8gNCxcbiAgICAyOiAkc3BhY2VyIC8gMixcbiAgICAzOiAkc3BhY2VyLFxuICAgIDQ6ICRzcGFjZXIgKiAxLjUsXG4gICAgNTogJHNwYWNlciAqIDMsXG4pICFkZWZhdWx0O1xuXG4vLyBHcmlkXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gICAgeHM6IDAsXG4gICAgc206IDU3NnB4LFxuICAgIG1kOiA3NjhweCxcbiAgICBsZzogOTkycHgsXG4gICAgeGw6IDEyMzBweCxcbikgIWRlZmF1bHQ7XG5cbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICAgIHNtOiAzNXJlbSxcbiAgICBtZDogNDUuNXJlbSxcbiAgICBsZzogNjByZW0sXG4gICAgeGw6IDc1cmVtXG4pICFkZWZhdWx0O1xuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cbiRndXR0ZXJzOiAkc3BhY2VycyAhZGVmYXVsdDtcblxuJGNvbnRhaW5lci1wYWRkaW5nLXg6IDIuNXJlbSAhZGVmYXVsdDtcblxuXG46cm9vdCB7XG4gICAgLS1mb250LXByaW1hcnk6ICAgICAgICAgJ0ludGVyJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgLS1mb250LXNlY29uZGFyeTogICAgICAgJ0ludGVyJywgQXJpYWwsIHNhbnMtc2VyaWY7XG5cbiAgICAtLWJsYWNrOiAgICAgICAgICAgICAgICAjMjMyMzIzO1xuICAgIC0td2hpdGU6ICAgICAgICAgICAgICAgICNmZmZmZmY7XG4gICAgLS1ncmVlbjogICAgICAgICAgICAgICAgIzUwQjQyRTtcbiAgICAtLWdyZWVuLTYwMDogICAgICAgICAgICAjNDA5MDI1O1xuICAgIC0tZ3JleTogICAgICAgICAgICAgICAgICNGOUY5Rjk7XG4gICAgLS1ncmV5LTIwOiAgICAgICAgICAgICAgI0ZBRkFGQTtcbiAgICAtLWdyZXktMTAwOiAgICAgICAgICAgICAjRTVFNUU1O1xuICAgIC0tZ3JleS0yMDA6ICAgICAgICAgICAgICNDN0M3Qzc7XG4gICAgLS1ncmV5LTQwMDogICAgICAgICAgICAgIzk1OTU5NTtcbiAgICAtLWdyZXktNjAwOiAgICAgICAgICAgICAjNjQ2NDY0O1xuICAgIC0tZ3JleS04MDA6ICAgICAgICAgICAgICMwNTA1MDU7XG4gICAgLS1ncmV5LTkwMDogICAgICAgICAgICAgIzA1MDUwNTtcbiAgICAtLWJsdWU6ICAgICAgICAgICAgICAgICAjMjExRDRDO1xuICAgIC0tbGlnaHQtYmx1ZTogICAgICAgICAgICNFRkY1RkU7XG5cbiAgICAtLWZvbnQtc2l6ZS1iYXNlOiAgICAgICAxcmVtO1xuICAgIC0tbGluZS1oZWlnaHQtYmFzZTogICAgIDEuNTtcbn1cbiIsIlxuQGZ1bmN0aW9uIHNpemUtcmVsKCRweC12YWx1ZSkge1xuICAgIEByZXR1cm4gJGZvbnQtc2l6ZS1iYXNlICogKCRweC12YWx1ZSAvICRodG1sLWZvbnQtc2l6ZSk7XG59XG5cbkBmdW5jdGlvbiByZW0oJHBpeGVscywgJGNvbnRleHQ6ICRodG1sLWZvbnQtc2l6ZSkge1xuICAgIEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcbiAgICAgICAgJHBpeGVsczogJHBpeGVscyAqIDFweDtcbiAgICB9XG5cbiAgICBAaWYgKHVuaXRsZXNzKCRjb250ZXh0KSkge1xuICAgICAgICAkY29udGV4dDogJGNvbnRleHQgKiAxcHg7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcGl4ZWxzIC8gJGNvbnRleHQgKiAxcmVtO1xufVxuXG5cbkBmdW5jdGlvbiBjb250YWluZXItd2lkdGgoJG5hbWUsICRicmVha3BvaW50czogJGNvbnRhaW5lci1tYXgtd2lkdGhzKSB7XG4gICAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAgIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59IiwiQGltcG9ydCAnLi9oZWxwZXJzJztcbkBpbXBvcnQgJy4vY29udGFpbmVyJztcbkBpbXBvcnQgJy4vYnJlYWtwb2ludHMnO1xuQGltcG9ydCAnLi9ncmlkJztcbkBpbXBvcnQgJy4vZm9udGZhY2UnO1xuQGltcG9ydCAnLi92aXN1YWxseS1oaWRkZW4nO1xuIiwiQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgICBAaWYgJG1pbiB7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cblxuQG1peGluIGZvY3VzLXZpc2libGUge1xuICAgIEBpZiAoJikge1xuICAgICAgICAuanMtZm9jdXMtdmlzaWJsZSAmOmZvY3VzOm5vdCguZm9jdXMtdmlzaWJsZSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgIC5qcy1mb2N1cy12aXNpYmxlIDpmb2N1czpub3QoLmZvY3VzLXZpc2libGUpIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG4gICAgJjo6cGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9XG59XG5cbi8vIENsZWFyZml4XG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG59XG5cbkBmdW5jdGlvbiBtYXgoJG51bWJlcnMuLi4pIHtcbiAgICBAcmV0dXJuIG0je2F9eCgjeyRudW1iZXJzfSk7XG59XG5cbkBmdW5jdGlvbiBtaW4oJG51bWJlcnMuLi4pIHtcbiAgICBAcmV0dXJuIG0je2l9bigjeyRudW1iZXJzfSk7XG59XG4iLCJAbWl4aW4gbWFrZS1jb250YWluZXIoJGd1dHRlcjogJGNvbnRhaW5lci1wYWRkaW5nLXgpIHtcbiAgICAtLWJzLWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gMik7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAvIDIpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIiIsIi8vLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAgIC0tYnMtZ3V0dGVyLXg6ICN7JGd1dHRlcn07XG4gICAgLS1icy1ndXR0ZXIteTogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWJzLWd1dHRlci15KSAqIC0xKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gLTIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAvIC0yKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAgIC8vIEFkZCBib3ggc2l6aW5nIGlmIG9ubHkgdGhlIGdyaWQgaXMgbG9hZGVkXG4gICAgYm94LXNpemluZzogaWYodmFyaWFibGUtZXhpc3RzKGluY2x1ZGUtY29sdW1uLWJveC1zaXppbmcpIGFuZCAkaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZywgYm9yZGVyLWJveCwgbnVsbCk7XG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAgIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2Ugc2V0IHRoZSB3aWR0aFxuICAgIC8vIGxhdGVyIG9uIHRvIG92ZXJyaWRlIHRoaXMgaW5pdGlhbCB3aWR0aC5cbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIFByZXZlbnQgYC5jb2wtYXV0b2AsIGAuY29sYCAoJiByZXNwb25zaXZlIHZhcmlhbnRzKSBmcm9tIGJyZWFraW5nIG91dCB0aGUgZ3JpZFxuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tYnMtZ3V0dGVyLXgpIC8gMik7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAvIDIpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi10b3A6IHZhcigtLWJzLWd1dHRlci15KTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCRzaXplIC8gJGNvbHVtbnMpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbn1cblxuQG1peGluIG1ha2UtY29sLW9mZnNldCgkc2l6ZSwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgICAkbnVtOiAkc2l6ZSAvICRjb2x1bW5zO1xuICAgIG1hcmdpbi1sZWZ0OiBpZigkbnVtID09IDAsIDAsIHBlcmNlbnRhZ2UoJG51bSkpO1xufVxuXG4vLyBSb3cgY29sdW1uc1xuLy9cbi8vIFNwZWNpZnkgb24gYSBwYXJlbnQgZWxlbWVudChlLmcuLCAucm93KSB0byBmb3JjZSBpbW1lZGlhdGUgY2hpbGRyZW4gaW50byBOTlxuLy8gbnVtYmVyb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICAgID4gKiB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJSAvICRjb3VudDtcbiAgICB9XG59XG5cbi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkY29sdW1uczogJGdyaWQtY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgICAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAgICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDAgMCU7IC8vIEZsZXhidWdzICM0OiBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzI2ZsZXhidWctNFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tYXV0byA+ICoge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLWF1dG8oKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGlmICRncmlkLXJvdy1jb2x1bW5zID4gMCB7XG4gICAgICAgICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgICAgICAgICAgIC5yb3ctY29scyN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSByb3ctY29scygkaSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAgICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgICAgICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAgICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1vZmZzZXQoJGksICRjb2x1bW5zKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gR3V0dGVyc1xuICAgICAgICAgICAgLy9cbiAgICAgICAgICAgIC8vIE1ha2UgdXNlIG9mIGAuZy0qYCwgYC5neC0qYCBvciBgLmd5LSpgIHV0aWxpdGllcyB0byBjaGFuZ2Ugc3BhY2luZyBiZXR3ZWVuIHRoZSBjb2x1bW5zLlxuICAgICAgICAgICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRndXR0ZXJzIHtcbiAgICAgICAgICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAgICAgICAgIC5neCN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAgICAgICAgICAgLS1icy1ndXR0ZXIteDogI3skdmFsdWV9O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgICAgICAgICAgLmd5I3skaW5maXh9LSN7JGtleX0ge1xuICAgICAgICAgICAgICAgICAgICAtLWJzLWd1dHRlci15OiAjeyR2YWx1ZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiQG1peGluIGZvbnRmYWNlKCRuYW1lLCAkZmlsZSwgJHdlaWdodDogbnVsbCwgJHN0eWxlOiBub3JtYWwpIHtcbiAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiI3skbmFtZX1cIjtcbiAgICAgICAgZm9udC1zdHlsZTogJHN0eWxlO1xuICAgICAgICBAaWYoJHdlaWdodCkge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgICAgIH1cbiAgICAgICAgc3JjOiB1cmwoJy4uL2ZvbnRzLyN7JGZpbGV9LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIH1cbn1cbiIsIi8vIEhpZGUgY29udGVudCB2aXN1YWxseSB3aGlsZSBrZWVwaW5nIGl0IGFjY2Vzc2libGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llc1xuXG5AbWl4aW4gdmlzdWFsbHktaGlkZGVuKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuXG5cbkBtaXhpbiB2aXN1YWxseS1oaWRkZW4tZm9jdXNhYmxlKCkge1xuICAmOm5vdCg6Zm9jdXMpOm5vdCg6Zm9jdXMtd2l0aGluKSB7XG4gICAgQGluY2x1ZGUgdmlzdWFsbHktaGlkZGVuKCk7XG4gIH1cbn1cbiIsIi8qKlxuICogU3dpcGVyIDkuNC4xXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDIzIFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IEp1bmUgMTMsIDIwMjNcbiAqL1xuXG5AaW1wb3J0ICdzd2lwZXItdmFycy5zY3NzJztcbkBhdC1yb290IHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdzd2lwZXItaWNvbnMnO1xuICAgIHNyYzogdXJsKCdkYXRhOmFwcGxpY2F0aW9uL2ZvbnQtd29mZjtjaGFyc2V0PXV0Zi04O2Jhc2U2NCwgZDA5R1JnQUJBQUFBQUFaZ0FCQUFBQUFBREFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJHUmxSTkFBQUdSQUFBQUJvQUFBQWNpNnFIa1VkRVJVWUFBQVdnQUFBQUl3QUFBQ1FBWUFCWFIxQlBVd0FBQmhRQUFBQXVBQUFBTnVBWTcreEhVMVZDQUFBRnhBQUFBRkFBQUFCbTJmUGN6VTlUTHpJQUFBSGNBQUFBU2dBQUFHQlA5VjVSWTIxaGNBQUFBa1FBQUFDSUFBQUJZdDZGMGNCamRuUWdBQUFDekFBQUFBUUFBQUFFQUJFQlJHZGhjM0FBQUFXWUFBQUFDQUFBQUFqLy93QURaMng1WmdBQUF5d0FBQURNQUFBRDJNSHRyeVZvWldGa0FBQUJiQUFBQURBQUFBQTJFMitlb1dob1pXRUFBQUdjQUFBQUh3QUFBQ1FDOWdEemFHMTBlQUFBQWlnQUFBQVpBQUFBcmdKa0FCRnNiMk5oQUFBQzBBQUFBRm9BQUFCYUZRQVVHRzFoZUhBQUFBRzhBQUFBSHdBQUFDQUFjQUJBYm1GdFpRQUFBL2dBQUFFNUFBQUNYdkZkQndsd2IzTjBBQUFGTkFBQUFHSUFBQUNFNXM3NGhYamFZMkJrWUdBQVlwZjVIdS9qK1cyK01uQXpNWURBemFYNlFqRDYvNC8vQnhqNUdBOEF1UndNWUdrQVB5d0wxM2phWTJCa1lHQTg4UDhBZ3g0aisvOGZRRFlmQTFBRUJXZ0RBSUIyQk9vQWVOcGpZR1JnWU5CaDRHZGdZZ0FCRU1uSUFCSnpZTkFEQ1FBQUNXZ0FzUUI0Mm1OZ1lmekNPSUdCbFlHQjBZY3hqWUdCd1IxS2YyV1FaR2hoWUdCaVlHVm1nQUZHQmlRUWtPYWF3dERBb01CUXhYamcvd0VHUGNZRERBNHdOVUEyQ0Nnd3NBQUFPNEVMNmdBQWVOcGoyTTBneUFBQ3F4Z0dOV0JrWjJENC93TUEreGtEZGdBQUFIamFZMkJnWUdhQVlCa0dSZ1lRaUFIeUdNRjhGZ1lISU0zRHdNSEFCR1FyTU9neVdETEVNMVQ5L3c4VUJmRU1nTHpFLy8vL1AvNS8vZi9WL3h2K3I0ZWFBQWVNYkF4d0lVWW1JTUhFZ0tZQVlqVWNzREF3c0xLeGMzQnljZlB3OGpFUUEvZ1pCQVNGaEVWRXhjUWxKS1drWldUbDVCVVVsWlJWVk5YVU5UUVpCZ01BQU1SK0UrZ0FFUUZFQUFBQUtnQXFBQ29BTkFBK0FFZ0FVZ0JjQUdZQWNBQjZBSVFBamdDWUFLSUFyQUMyQU1BQXlnRFVBTjRBNkFEeUFQd0JCZ0VRQVJvQkpBRXVBVGdCUWdGTUFWWUJZQUZxQVhRQmZnR0lBWklCbkFHbUFiSUJ6Z0hzQUFCNDJ1Mk5NUTZDVUF5R1c1Njh4OUFuZVlZZ200TUpiaEtGYUV4SU9BVlg4QXBld1N0NEJpYzRBZmVBaWQzVk9CaXhEeGZQWUV6YTVPK1hmaTA0WUFEZ2dpVUlVTEN1RUpLOFZoTzRiU3ZwZG5rdEhJNVFDWXRkaTJzbDhablhhSGxxVXJOS3pkS2NUOGNqbHErcndaU3ZJVmN6TmllenNmblAvdXpubWZQRkJOT0RNMks3TVRRNDVZRUFacUdQODFBbUdHY0YzaVBxT29wMHIxU1BUYVRiVmtmVWU0SFhqOTd3WUUreU53V1l4d1d1NHYxdWdXSGdvM1MxWGRaRVZxV003RVQwY2ZuTEd4V2ZrZ1I0Mm8yUHZXckRNQlNGai9JSExhRjB6S2pSZ2RpVk13U2NOUkFvV1VvSDc4WTJpY0IveUlZMDlBbjZBSDJCZHUvVUIreXhvcFlzaFFpRXZudnUwZFVSZ0R0OFFlQzhQRHc3RnBqaTNmRUE0ei9QRUo2WU9CNWhLaDRkajNFdlhoeFBxSC9TS1VZM3JKN3NyWjRGWm5oMVBNQXRQaHdQNmZsMlBNSk1QRGdlUTRyWThZVDZHemFvMGVBRUE0MDlEdWdnbVRuRm5PY1NDaUVpTE1neENpVEk2Q3E1RFpVZDNRbXAxMHZPMExhTFRkMmNqTjRmT3VtbGM3bFVZYlNRY1pGa3V0Ukc3ZzZKS1pLeTBSbWRMWTY4MENEbkVKK1VNa3BGRmUxUk43bnhkVnBYckM0YVR0bmF1ck9uWWVyY1pnMllWbUxOL2QvZ2N6ZkVpbXJFL2ZzL2JPdXEyOVptbjh0bG9PUmFYZ1pnR2E3OHlPOS9jblhtMkJwYUd2cTI1RHY5UzRFOSs1U0ljOVBxdXBKS2hZRlNTbDQ3K1FjcjFtWU5BQUFBZU5wdHcwY0t3a0FBQU1EWkpBOFE3T1VKdmtMc1BmWjZ6RlZFUlB5OHFIaDJZRVIrM2kvQlA4M3ZJQkxMeVNzb0tpbXJxS3FwYTJocDYranE2UnNZR2htYm1KcVpTeTBzcmF4dGJPM3NIUnlkbkVNVTR1UjZ5eDdKSlh2ZVA3V3JEeWNBQUFBQUFBSC8vd0FDZU5wallHUmdZT0FCWWhrZ1pnSkNaZ1pOQmtZR0xRWnRJSnNGTE1ZQUFBdzNBTGdBZU5vbGl6RUtnREFRQkNjaFJiQzJzRkVSMFlENnFWUWlCQ3YvSDllekdJNlo1WEJBdzhDQksvbTVpUVFWYXVWYlhMbk9yTVp2Mm9MZEtGYThQanVydTJoSnpHYWJtT1NMek5NenZ1dHBCM040Mm1OZ1pHQmc0R0tRWXpCaFlNeEpMTWxqNEdCZ0FZb3cvUC9QQUpKaExNNnNTb1dLZldDQUF3REFqZ2JSQUFCNDJtTmdZR0JrQUlJYkNabzVJUHJtVW4waEdBMEFPOEVGVFFBQScpXG4gICAgICBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxufVxuQGF0LXJvb3Qge1xuICA6cm9vdCB7XG4gICAgLS1zd2lwZXItdGhlbWUtY29sb3I6ICN7JHRoZW1lQ29sb3J9O1xuICAgIC8qXG4gICAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAgIC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaXRpYWw7XG4gICAgKi9cbiAgfVxufVxuLnN3aXBlcixcbnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIC8qIEZpeCBvZiBXZWJraXQgZmxpY2tlcmluZyAqL1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnN3aXBlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiB2YXIoLS1zd2lwZXItd3JhcHBlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgaW5pdGlhbCk7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuLnN3aXBlci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgMCwgMCk7XG59XG4uc3dpcGVyLWhvcml6b250YWwge1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xufVxuLnN3aXBlci12ZXJ0aWNhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7XG59XG4uc3dpcGVyLXNsaWRlLFxuc3dpcGVyLXNsaWRlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItYXV0b2hlaWdodCxcbi5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRlIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbn1cbi5zd2lwZXItYmFja2ZhY2UtaGlkZGVuIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlciB7XG4gIHBlcnNwZWN0aXZlOiAxMjAwcHg7XG59XG4uc3dpcGVyLTNkIC5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG4uc3dpcGVyLTNkIHtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgLnN3aXBlci1zbGlkZSxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbiAgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdyxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxufVxuLyogQ1NTIE1vZGUgKi9cbi5zd2lwZXItY3NzLW1vZGUge1xuICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGb3IgRmlyZWZveCAqL1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogRm9yIEludGVybmV0IEV4cGxvcmVyIGFuZCBFZGdlICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG4gIH1cbn1cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItY3NzLW1vZGUge1xuICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gIH1cbn1cbi5zd2lwZXItdmVydGljYWwuc3dpcGVyLWNzcy1tb2RlIHtcbiAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xuICB9XG59XG4uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1mcmVlLW1vZGUge1xuICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogbm9uZTtcbiAgfVxuICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICAgIHNjcm9sbC1zbmFwLWFsaWduOiBub25lO1xuICB9XG59XG4uc3dpcGVyLWNlbnRlcmVkIHtcbiAgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgb3JkZXI6IDk5OTk7XG4gIH1cbiAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcjtcbiAgICBzY3JvbGwtc25hcC1zdG9wOiBhbHdheXM7XG4gIH1cbn1cbi5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWwge1xuICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbiAgfVxuICA+IC5zd2lwZXItd3JhcHBlcjo6YmVmb3JlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbiAgfVxufVxuLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwge1xuICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpO1xuICB9XG4gID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMXB4O1xuICAgIGhlaWdodDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG4gIH1cbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc3dpcGVyOm5vdCguc3dpcGVyLXdhdGNoLXByb2dyZXNzKSxcbnN3aXBlci1jb250YWluZXI6bm90KC5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MpLFxuLnN3aXBlci13YXRjaC1wcm9ncmVzcyAuc3dpcGVyLXNsaWRlLXZpc2libGUge1xuICAuc3dpcGVyLWxhenktcHJlbG9hZGVyIHtcbiAgICBhbmltYXRpb246IHN3aXBlci1wcmVsb2FkZXItc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gIH1cbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5cblxuIiwiJHRoZW1lQ29sb3I6ICMwMDdhZmYgIWRlZmF1bHQ7XG4iLCJAaW1wb3J0IFwiLi4vQ2Fyb3VzZWwvQ2Fyb3VzZWwuc2Nzc1wiO1xuXG5AaW1wb3J0IFwic2Nzcy9fdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwic2Nzcy9fbWl4aW5zXCI7XG5cbkBpbXBvcnQgXCJzY3NzL2Jhc2VcIjtcbkBpbXBvcnQgXCJzY3NzL3NwaW5uZXJcIjtcbkBpbXBvcnQgXCJzY3NzL2FuaW1hdGlvbnNcIjtcbkBpbXBvcnQgXCJzY3NzL3Njcm9sbGJhclwiO1xuQGltcG9ydCBcInNjc3MvY3Vyc29yXCI7XG5cbkBpbXBvcnQgXCJwbHVnaW5zL0ltYWdlL0ltYWdlLnNjc3NcIjtcbkBpbXBvcnQgXCJwbHVnaW5zL0h0bWwvSHRtbC5zY3NzXCI7XG5AaW1wb3J0IFwicGx1Z2lucy9UaHVtYnMvVGh1bWJzLnNjc3NcIjtcbkBpbXBvcnQgXCJwbHVnaW5zL1Rvb2xiYXIvVG9vbGJhci5zY3NzXCI7XG4iLCJAaW1wb3J0IFwic2Nzcy9fdmFyaWFibGVzXCI7XG5cbkBpbXBvcnQgXCJzY3NzL2Jhc2VcIjtcblxuQGltcG9ydCBcInBsdWdpbnMvRG90cy9Eb3RzLnNjc3NcIjtcbkBpbXBvcnQgXCJwbHVnaW5zL05hdmlnYXRpb24vTmF2aWdhdGlvbi5zY3NzXCI7XG4iLCIkY2Fyb3VzZWwtcHJlZml4OiBcIlwiICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtc2xpZGUtd2lkdGg6IHZhcigtLWNhcm91c2VsLXNsaWRlLXdpZHRoLCA2MCUpICFkZWZhdWx0O1xyXG5cclxuLypcclxuICAgIERvdHMgcGx1Z2luXHJcbiovXHJcbiRjYXJvdXNlbC1kb3RzLWFic29sdXRlOiB0cnVlICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtZG90cy1tYXJnaW46IDAuNXJlbSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWRvdHMtd2lkdGg6IDIycHggIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1kb3RzLWhlaWdodDogMjJweCAhZGVmYXVsdDtcclxuXHJcbiRjYXJvdXNlbC1kb3RzLWRvdC13aWR0aDogOHB4ICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtZG90cy1kb3QtaGVpZ2h0OiA4cHggIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1kb3RzLWRvdC1jb2xvcjogY3VycmVudENvbG9yICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtZG90cy1kb3Qtb3BhY2l0eTogMC4yNSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWRvdHMtZG90LXJhZGl1czogNTAlICFkZWZhdWx0O1xyXG5cclxuLypcclxuICAgIE5hdmlnYXRpb24gcGx1Z2luXHJcbiovXHJcblxyXG4kY2Fyb3VzZWwtYnV0dG9uLXdpZHRoOiB2YXIoLS1jYXJvdXNlbC1idXR0b24td2lkdGgsIDQ4cHgpICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtYnV0dG9uLWhlaWdodDogdmFyKC0tY2Fyb3VzZWwtYnV0dG9uLWhlaWdodCwgNDhweCkgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtYnV0dG9uLWNvbG9yOiB2YXIoLS1jYXJvdXNlbC1idXR0b24tY29sb3IsIGN1cnJlbnRDb2xvcikgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1idXR0b24tYmc6IHZhcigtLWNhcm91c2VsLWJ1dHRvbi1iZywgdHJhbnNwYXJlbnQpICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtYnV0dG9uLXNoYWRvdzogdmFyKC0tY2Fyb3VzZWwtYnV0dG9uLXNoYWRvdywgbm9uZSkgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1idXR0b24tYm9yZGVyLXJhZGl1czogdmFyKC0tY2Fyb3VzZWwtYnV0dG9uLWJvcmRlci1yYWRpdXMsIDUwJSkgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtYnV0dG9uLXByZXYtcG9zOiAxMHB4ICFkZWZhdWx0O1xyXG4kY2Fyb3VzZWwtYnV0dG9uLW5leHQtcG9zOiAxMHB4ICFkZWZhdWx0O1xyXG5cclxuJGNhcm91c2VsLWJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5OiAwLjMgIWRlZmF1bHQ7XHJcblxyXG4kY2Fyb3VzZWwtYnV0dG9uLXN2Zy13aWR0aDogdmFyKC0tY2Fyb3VzZWwtYnV0dG9uLXN2Zy13aWR0aCwgNTAlKSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWJ1dHRvbi1zdmctaGVpZ2h0OiB2YXIoLS1jYXJvdXNlbC1idXR0b24tc3ZnLWhlaWdodCwgNTAlKSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWJ1dHRvbi1zdmctc3Ryb2tlLXdpZHRoOiB2YXIoLS1jYXJvdXNlbC1idXR0b24tc3ZnLXN0cm9rZS13aWR0aCwgMS41KSAhZGVmYXVsdDtcclxuJGNhcm91c2VsLWJ1dHRvbi1zdmctZmlsdGVyOiB2YXIoLS1jYXJvdXNlbC1idXR0b24tc3ZnLWZpbHRlciwgbm9uZSkgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1idXR0b24tc3ZnLWZpbGw6IG5vbmUgIWRlZmF1bHQ7XHJcbiRjYXJvdXNlbC1idXR0b24tc3ZnLXNjYWxlOiBmYWxzZSAhZGVmYXVsdDtcclxuIiwiLiN7JGNhcm91c2VsLXByZWZpeH1jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAmICosXG4gICYgKjpiZWZvcmUsXG4gICYgKjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gICYuaXMtZHJhZ2dhYmxlIHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgY3Vyc29yOiBncmFiO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cbn1cblxuLiN7JGNhcm91c2VsLXByZWZpeH1jYXJvdXNlbF9fdmlld3BvcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuXG4uI3skY2Fyb3VzZWwtcHJlZml4fWNhcm91c2VsX190cmFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi4jeyRjYXJvdXNlbC1wcmVmaXh9Y2Fyb3VzZWxfX3NsaWRlIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIEBpZiAoJGNhcm91c2VsLXNsaWRlLXdpZHRoKSB7XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1zbGlkZS13aWR0aDtcbiAgfVxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG59XG4iLCIuaGFzLWRvdHMge1xuICBAaWYgKCRjYXJvdXNlbC1kb3RzLW1hcmdpbiA+IDApIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCN7JGNhcm91c2VsLWRvdHMtbWFyZ2lufSArICN7JGNhcm91c2VsLWRvdHMtaGVpZ2h0fSk7XG4gIH1cbn1cblxuLmNhcm91c2VsX19kb3RzIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDA7XG5cbiAgQGlmICgkY2Fyb3VzZWwtZG90cy1hYnNvbHV0ZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMTAwJSArICN7JGNhcm91c2VsLWRvdHMtbWFyZ2lufSk7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIC5jYXJvdXNlbF9fZG90IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHdpZHRoOiAkY2Fyb3VzZWwtZG90cy13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1kb3RzLWhlaWdodDtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAkY2Fyb3VzZWwtZG90cy1kb3Qtd2lkdGg7XG4gICAgICBoZWlnaHQ6ICRjYXJvdXNlbC1kb3RzLWRvdC1oZWlnaHQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkY2Fyb3VzZWwtZG90cy1kb3QtcmFkaXVzO1xuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtZG90cy1kb3QtY29sb3I7XG5cbiAgICAgIEBpZiAoJGNhcm91c2VsLWRvdHMtZG90LW9wYWNpdHkgPCAxKSB7XG4gICAgICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1kb3RzLWRvdC1vcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAoJGNhcm91c2VsLWRvdHMtZG90LW9wYWNpdHkgPCAxKSB7XG4gICAgICAmLmlzLXNlbGVjdGVkOmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jYXJvdXNlbF9fYnV0dG9uIHtcbiAgd2lkdGg6ICRjYXJvdXNlbC1idXR0b24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWJ1dHRvbi1oZWlnaHQ7XG5cbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICRjYXJvdXNlbC1idXR0b24tY29sb3I7XG4gIGJhY2tncm91bmQ6ICRjYXJvdXNlbC1idXR0b24tYmc7XG5cbiAgQGlmICgkY2Fyb3VzZWwtYnV0dG9uLWJvcmRlci1yYWRpdXMgIT0gZmFsc2UpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkY2Fyb3VzZWwtYnV0dG9uLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBAaWYgKCRjYXJvdXNlbC1idXR0b24tc2hhZG93ICE9IGZhbHNlKSB7XG4gICAgYm94LXNoYWRvdzogJGNhcm91c2VsLWJ1dHRvbi1zaGFkb3c7XG4gIH1cblxuICAmLmlzLXByZXYsXG4gICYuaXMtbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gICYuaXMtcHJldiB7XG4gICAgbGVmdDogJGNhcm91c2VsLWJ1dHRvbi1wcmV2LXBvcztcbiAgfVxuXG4gICYuaXMtbmV4dCB7XG4gICAgcmlnaHQ6ICRjYXJvdXNlbC1idXR0b24tbmV4dC1wb3M7XG4gIH1cblxuICBAaWYgKCRjYXJvdXNlbC1idXR0b24tZGlzYWJsZWQtb3BhY2l0eSAhPSBmYWxzZSkge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZTtcblxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1idXR0b24tZGlzYWJsZWQtb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICAmIHN2ZyB7XG4gICAgd2lkdGg6ICRjYXJvdXNlbC1idXR0b24tc3ZnLXdpZHRoO1xuICAgIGhlaWdodDogJGNhcm91c2VsLWJ1dHRvbi1zdmctaGVpZ2h0O1xuXG4gICAgZmlsbDogJGNhcm91c2VsLWJ1dHRvbi1zdmctZmlsbDtcblxuICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgIHN0cm9rZS13aWR0aDogJGNhcm91c2VsLWJ1dHRvbi1zdmctc3Ryb2tlLXdpZHRoO1xuICAgIHN0cm9rZS1saW5lam9pbjogYmV2ZWw7XG4gICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuXG4gICAgZmlsdGVyOiAkY2Fyb3VzZWwtYnV0dG9uLXN2Zy1maWx0ZXI7XG5cbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIEBpZiAoJGNhcm91c2VsLWJ1dHRvbi1zdmctc2NhbGUgIT0gZmFsc2UpIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoJGNhcm91c2VsLWJ1dHRvbi1zdmctc2NhbGUpO1xuICAgIH1cbiAgfVxufVxuIiwiJGZhbmN5Ym94LWJyZWFrcG9pbnRzOiAoXG4gIHhsOiAoXG4gICAgYnAtd2lkdGg6IDEwMjRweCxcbiAgICBjb250YWluZXI6IChcbiAgICAgIC0tY2Fyb3VzZWwtYnV0dG9uLXdpZHRoOiA0OHB4LFxuICAgICAgLS1jYXJvdXNlbC1idXR0b24taGVpZ2h0OiA0OHB4LFxuICAgICAgLS1jYXJvdXNlbC1idXR0b24tc3ZnLXdpZHRoOiAyN3B4LFxuICAgICAgLS1jYXJvdXNlbC1idXR0b24tc3ZnLWhlaWdodDogMjdweCxcbiAgICApLFxuICAgIGJ1dHRvbi1jbG9zZS1vdXRzaWRlOiAoXG4gICAgICByaWdodDogNDBweCxcbiAgICApLFxuICAgIGJ1dHRvbi1uZXh0OiAoXG4gICAgICByaWdodDogNDBweCxcbiAgICApLFxuICAgIGJ1dHRvbi1wcmV2OiAoXG4gICAgICBsZWZ0OiA0MHB4LFxuICAgICksXG4gICAgc2xpZGU6IChcbiAgICAgIHBhZGRpbmc6IDY0cHggMTAwcHgsXG4gICAgKSxcbiAgICB0b29sYmFyOiAoXG4gICAgICBwYWRkaW5nOiA4cHgsXG4gICAgKSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbiRmYW5jeWJveC1jb250YWluZXItY29sb3I6IHZhcigtLWZhbmN5Ym94LWNvbG9yLCAjZmZmKSAhZGVmYXVsdDtcbiRmYW5jeWJveC1jb250YWluZXItcGFkZGluZzogZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDBweCkgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCwgMHB4KVxuICBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KSBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQsIDBweCkgIWRlZmF1bHQ7XG5cbiRmYW5jeWJveC1iYWNrZHJvcC1iZzogdmFyKC0tZmFuY3lib3gtYmcsIHJnYmEoMjQsIDI0LCAyNywgMC45MikpICFkZWZhdWx0O1xuXG4kZmFuY3lib3gtYWNjZW50LWNvbG9yOiB2YXIoLS1mYW5jeWJveC1hY2NlbnQtY29sb3IsIHJnYmEoMzQsIDIxMywgMjMzLCAwLjk2KSkgIWRlZmF1bHQ7XG4kZmFuY3lib3gtZm9jdXMtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMnB4IHZhcigtLWZhbmN5Ym94LWFjY2VudC1jb2xvciwgcmdiYSgxLCAyMTAsIDIzMiwgMC45NCkpICFkZWZhdWx0O1xuXG4kZmFuY3lib3gtc3Bpbm5lci1jb2xvcjogdmFyKC0tZmFuY3lib3gtY29sb3IsIGN1cnJlbnRDb2xvcikgIWRlZmF1bHQ7XG4kZmFuY3lib3gtc3Bpbm5lci13aWR0aDogNTBweCAhZGVmYXVsdDtcbiRmYW5jeWJveC1zcGlubmVyLWhlaWdodDogNTBweCAhZGVmYXVsdDtcbiRmYW5jeWJveC1zcGlubmVyLXN2Zy1zdHJva2Utd2lkdGg6IDIuNzUgIWRlZmF1bHQ7XG5cbiRmYW5jeWJveC1zbGlkZS1wYWRkaW5nOiA0OHB4IDhweCA4cHggOHB4ICFkZWZhdWx0O1xuXG4kZmFuY3lib3gtY29udGVudC1jb2xvcjogdmFyKC0tZmFuY3lib3gtY29udGVudC1jb2xvciwgIzM3NDE1MSkgIWRlZmF1bHQ7XG4kZmFuY3lib3gtY29udGVudC1iZzogdmFyKC0tZmFuY3lib3gtY29udGVudC1iZywgI2ZmZikgIWRlZmF1bHQ7XG4kZmFuY3lib3gtY29udGVudC1wYWRkaW5nOiAzNnB4ICFkZWZhdWx0O1xuXG4kZmFuY3lib3gtY2FwdGlvbi1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kZmFuY3lib3gtY2FwdGlvbi1wYWRkaW5nOiAxcmVtIDAgMCAwICFkZWZhdWx0O1xuJGZhbmN5Ym94LWNhcHRpb24tY29sb3I6IHZhcigtLWZhbmN5Ym94LWNvbG9yLCBjdXJyZW50Q29sb3IpICFkZWZhdWx0O1xuJGZhbmN5Ym94LWNhcHRpb24tbGluZS1oZWlnaHQ6IDEuMzc1ICFkZWZhdWx0O1xuXG4vKlxuICBUaHVtYnMgcGx1Z2luXG4qL1xuXG4kZmFuY3lib3gtdGh1bWJzLXBhZGRpbmc6IDBweCAzcHggIWRlZmF1bHQ7XG4kZmFuY3lib3gtdGh1bWJzLXNwYWNpbmc6IDhweCAzcHggIWRlZmF1bHQ7XG4kZmFuY3lib3gtdGh1bWJzLXJhZGl1czogOHB4IDNweCAhZGVmYXVsdDtcbiRmYW5jeWJveC10aHVtYnMtd2lkdGg6IHZhcigtLWZhbmN5Ym94LXRodW1icy13aWR0aCwgOTZweCkgIWRlZmF1bHQ7XG4kZmFuY3lib3gtdGh1bWJzLXJhdGlvOiB2YXIoLS1mYW5jeWJveC10aHVtYnMtcmF0aW8sIDEuNSkgIWRlZmF1bHQ7IC8qIDMvMiAqL1xuJGZhbmN5Ym94LXRodW1icy1ib3JkZXItcmFkaXVzOiB2YXIoLS1mYW5jeWJveC10aHVtYnMtYm9yZGVyLXJhZGl1cywgNHB4KSAhZGVmYXVsdDtcbiRmYW5jeWJveC10aHVtYnMtYmc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSAhZGVmYXVsdDtcblxuJGZhbmN5Ym94LXRodW1icy1zZWxlY3RlZC1vcGFjaXR5OiBmYWxzZSAhZGVmYXVsdDtcbiRmYW5jeWJveC10aHVtYnMtc2VsZWN0ZWQtYm9yZGVyOiB0cnVlICFkZWZhdWx0O1xuJGZhbmN5Ym94LXRodW1icy1zZWxlY3RlZC1ib3JkZXItd2lkdGg6IDVweCAhZGVmYXVsdDtcbiRmYW5jeWJveC10aHVtYnMtc2VsZWN0ZWQtYm9yZGVyLWNvbG9yOiAkZmFuY3lib3gtYWNjZW50LWNvbG9yICFkZWZhdWx0O1xuXG4vKlxuICBIVE1MIHBsdWdpblxuKi9cbiRmYW5jeWJveC1pZnJhbWUtd2lkdGg6IDEwMCUgIWRlZmF1bHQ7XG4kZmFuY3lib3gtaWZyYW1lLWhlaWdodDogODAlICFkZWZhdWx0O1xuXG4kZmFuY3lib3gtdmlkZW8td2lkdGg6IDk2MHB4ICFkZWZhdWx0O1xuJGZhbmN5Ym94LXZpZGVvLWhlaWdodDogNTQwcHggIWRlZmF1bHQ7XG5cbi8qXG4gIFRvb2xiYXIgcGx1Z2luXG4qL1xuXG4kZmFuY3lib3gtdG9vbGJhci1iZzogbGluZWFyLWdyYWRpZW50KFxuICB0byB0b3AsXG4gIGhzbGEoMCwgMCUsIDAlLCAwKSAwJSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMDA2KSA4LjElLFxuICBoc2xhKDAsIDAlLCAwJSwgMC4wMjEpIDE1LjUlLFxuICBoc2xhKDAsIDAlLCAwJSwgMC4wNDYpIDIyLjUlLFxuICBoc2xhKDAsIDAlLCAwJSwgMC4wNzcpIDI5JSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMTE0KSAzNS4zJSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMTU1KSA0MS4yJSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMTk4KSA0Ny4xJSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMjQyKSA1Mi45JSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMjg1KSA1OC44JSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMzI2KSA2NC43JSxcbiAgaHNsYSgwLCAwJSwgMCUsIDAuMzYzKSA3MSUsXG4gIGhzbGEoMCwgMCUsIDAlLCAwLjM5NCkgNzcuNSUsXG4gIGhzbGEoMCwgMCUsIDAlLCAwLjQxOSkgODQuNSUsXG4gIGhzbGEoMCwgMCUsIDAlLCAwLjQzNCkgOTEuOSUsXG4gIGhzbGEoMCwgMCUsIDAlLCAwLjQ0KSAxMDAlXG4pICFkZWZhdWx0O1xuJGZhbmN5Ym94LXRvb2xiYXItcGFkZGluZzogMCAhZGVmYXVsdDtcbiIsIkBtaXhpbiBmYW5jeWJveC1icmVha3BvaW50KCRrZXkpIHtcbiAgQGVhY2ggJGtleU1hcCwgJHZhbHVlTWFwIGluICRmYW5jeWJveC1icmVha3BvaW50cyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCR2YWx1ZU1hcCwgJGtleSkge1xuICAgICAgQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogbWFwLWdldCgkdmFsdWVNYXAsIGJwLXdpZHRoKSkge1xuICAgICAgICBAZWFjaCAkcHJvcEtleSwgJHByb3BWYWx1ZSBpbiBtYXAtZ2V0KCR2YWx1ZU1hcCwgJGtleSkge1xuICAgICAgICAgICN7JHByb3BLZXl9OiAkcHJvcFZhbHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJodG1sLndpdGgtZmFuY3lib3gge1xuICBzY3JvbGwtYmVoYXZpb3I6IGF1dG87XG59XG5cbmJvZHkuY29tcGVuc2F0ZS1mb3Itc2Nyb2xsYmFyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5mYW5jeWJveF9fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpcmVjdGlvbjogbHRyO1xuXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogJGZhbmN5Ym94LWNvbnRhaW5lci1wYWRkaW5nO1xuXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICBjb2xvcjogJGZhbmN5Ym94LWNvbnRhaW5lci1jb2xvcjtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAxMDUwO1xuICBvdXRsaW5lOiBub25lO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcblxuICAmICosXG4gICYgKjo6YmVmb3JlLFxuICAmICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgJiA6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICBib2R5Om5vdCguaXMtdXNpbmctbW91c2UpICYgOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkZmFuY3lib3gtZm9jdXMtc2hhZG93O1xuICB9XG5cbiAgLS1jYXJvdXNlbC1idXR0b24td2lkdGg6IDQ4cHg7XG4gIC0tY2Fyb3VzZWwtYnV0dG9uLWhlaWdodDogNDhweDtcblxuICAtLWNhcm91c2VsLWJ1dHRvbi1zdmctd2lkdGg6IDI0cHg7XG4gIC0tY2Fyb3VzZWwtYnV0dG9uLXN2Zy1oZWlnaHQ6IDI0cHg7XG5cbiAgLS1jYXJvdXNlbC1idXR0b24tc3ZnLXN0cm9rZS13aWR0aDogMi41O1xuICAtLWNhcm91c2VsLWJ1dHRvbi1zdmctZmlsdGVyOiBkcm9wLXNoYWRvdygxcHggMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCkpO1xuXG4gIEBpbmNsdWRlIGZhbmN5Ym94LWJyZWFrcG9pbnQoY29udGFpbmVyKTtcbn1cblxuLmZhbmN5Ym94X19iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZDogJGZhbmN5Ym94LWJhY2tkcm9wLWJnO1xuXG4gIEBpbmNsdWRlIGZhbmN5Ym94LWJyZWFrcG9pbnQoYmFja2Ryb3ApO1xufVxuXG4uZmFuY3lib3hfX2Nhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMDtcblxuICAvKiBGb3IgU2FmYXJpICovXG4gIGhlaWdodDogMTAwJTtcblxuICB6LWluZGV4OiAxMDtcblxuICAmLmhhcy1kb3RzIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCN7JGNhcm91c2VsLWRvdHMtbWFyZ2lufSArICN7JGNhcm91c2VsLWRvdHMtaGVpZ2h0fSk7XG4gIH1cblxuICBAaW5jbHVkZSBmYW5jeWJveC1icmVha3BvaW50KGNhcm91c2VsKTtcbn1cblxuLmZhbmN5Ym94X192aWV3cG9ydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmZhbmN5Ym94X190cmFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmZhbmN5Ym94X19zbGlkZSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogJGZhbmN5Ym94LXNsaWRlLXBhZGRpbmc7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgb3V0bGluZTogMDtcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBmbGV4OiAwIDAgMDtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cblxuICAtLWNhcm91c2VsLWJ1dHRvbi13aWR0aDogMzZweDtcbiAgLS1jYXJvdXNlbC1idXR0b24taGVpZ2h0OiAzNnB4O1xuXG4gIC0tY2Fyb3VzZWwtYnV0dG9uLXN2Zy13aWR0aDogMjJweDtcbiAgLS1jYXJvdXNlbC1idXR0b24tc3ZnLWhlaWdodDogMjJweDtcblxuICBAaW5jbHVkZSBmYW5jeWJveC1icmVha3BvaW50KHNsaWRlKTtcbn1cblxuLmZhbmN5Ym94X19jb250ZW50IHtcbiAgbWFyZ2luOiAwIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDBweCkgMCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQsIDBweCk7XG4gIHBhZGRpbmc6ICRmYW5jeWJveC1jb250ZW50LXBhZGRpbmc7XG4gIGNvbG9yOiAkZmFuY3lib3gtY29udGVudC1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGZhbmN5Ym94LWNvbnRlbnQtYmc7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICB6LWluZGV4OiAyMDtcblxuICBAaW5jbHVkZSBmYW5jeWJveC1icmVha3BvaW50KGNvbnRlbnQpO1xuXG4gICYgOmZvY3VzOm5vdCguY2Fyb3VzZWxfX2J1dHRvbi5pcy1jbG9zZSkge1xuICAgIG91dGxpbmU6IHRoaW4gZG90dGVkO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuLmZhbmN5Ym94X19jYXB0aW9uIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogJGZhbmN5Ym94LWNhcHRpb24tbWFyZ2luO1xuICBwYWRkaW5nOiAkZmFuY3lib3gtY2FwdGlvbi1wYWRkaW5nO1xuICBsaW5lLWhlaWdodDogJGZhbmN5Ym94LWNhcHRpb24tbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZmFuY3lib3gtY2FwdGlvbi1jb2xvcjtcblxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBjdXJzb3I6IGF1dG87XG4gIGZsZXgtc2hyaW5rOiAwO1xuXG4gIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuXG4gIC5pcy1sb2FkaW5nICYge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIGZhbmN5Ym94LWJyZWFrcG9pbnQoY2FwdGlvbik7XG59XG5cbi5mYW5jeWJveF9fY29udGFpbmVyID4gLmNhcm91c2VsX19kb3RzIHtcbiAgdG9wOiAxMDAlO1xuICBjb2xvcjogJGZhbmN5Ym94LWNvbnRhaW5lci1jb2xvcjtcbn1cblxuLmZhbmN5Ym94X19uYXYge1xuICBAaW5jbHVkZSBmYW5jeWJveC1icmVha3BvaW50KG5hdik7XG5cbiAgJiAuY2Fyb3VzZWxfX2J1dHRvbiB7XG4gICAgei1pbmRleDogNDA7XG5cbiAgICAmLmlzLW5leHQge1xuICAgICAgcmlnaHQ6IDhweDtcblxuICAgICAgQGluY2x1ZGUgZmFuY3lib3gtYnJlYWtwb2ludChidXR0b24tbmV4dCk7XG4gICAgfVxuXG4gICAgJi5pcy1wcmV2IHtcbiAgICAgIGxlZnQ6IDhweDtcblxuICAgICAgQGluY2x1ZGUgZmFuY3lib3gtYnJlYWtwb2ludChidXR0b24tcHJldik7XG4gICAgfVxuICB9XG59XG5cbi5jYXJvdXNlbF9fYnV0dG9uLmlzLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDhweDtcbiAgcmlnaHQ6IDhweDtcbiAgdG9wOiBjYWxjKGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwcHgpICsgOHB4KTtcbiAgcmlnaHQ6IGNhbGMoZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCwgMHB4KSArIDhweCk7XG5cbiAgei1pbmRleDogNDA7XG5cbiAgQGluY2x1ZGUgZmFuY3lib3gtYnJlYWtwb2ludChidXR0b24tY2xvc2Utb3V0c2lkZSk7XG59XG5cbi8qIENsb3NlIGJ1dHRvbiBsb2NhdGVkIGluc2lkZSBjb250ZW50IGFyZWEgKi9cbi5mYW5jeWJveF9fY29udGVudCA+IC5jYXJvdXNlbF9fYnV0dG9uLmlzLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC00MHB4O1xuICByaWdodDogMDtcblxuICBjb2xvcjogdmFyKC0tZmFuY3lib3gtY29sb3IsICNmZmYpO1xuXG4gIEBpbmNsdWRlIGZhbmN5Ym94LWJyZWFrcG9pbnQoYnV0dG9uLWNsb3NlLWluc2lkZSk7XG59XG5cbi5mYW5jeWJveF9fbm8tY2xpY2ssXG4uZmFuY3lib3hfX25vLWNsaWNrIGJ1dHRvbiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLmZhbmN5Ym94X19zcGlubmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXG4gIHdpZHRoOiAkZmFuY3lib3gtc3Bpbm5lci13aWR0aDtcbiAgaGVpZ2h0OiAkZmFuY3lib3gtc3Bpbm5lci1oZWlnaHQ7XG5cbiAgY29sb3I6ICRmYW5jeWJveC1zcGlubmVyLWNvbG9yO1xuXG4gIEBpbmNsdWRlIGZhbmN5Ym94LWJyZWFrcG9pbnQobG9hZGVyKTtcblxuICAuZmFuY3lib3hfX3NsaWRlICYge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAxMDUzO1xuICB9XG5cbiAgJiBzdmcge1xuICAgIGFuaW1hdGlvbjogZmFuY3lib3gtcm90YXRlIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcblxuICAgIG1hcmdpbjogYXV0bztcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgICYgY2lyY2xlIHtcbiAgICAgIGZpbGw6IG5vbmU7XG4gICAgICBzdHJva2Utd2lkdGg6ICRmYW5jeWJveC1zcGlubmVyLXN2Zy1zdHJva2Utd2lkdGg7XG4gICAgICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XG5cbiAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEsIDIwMDtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgICAgYW5pbWF0aW9uOiBmYW5jeWJveC1kYXNoIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgICBzdHJva2UtbGluZWNhcDogcm91bmQ7XG4gICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYW5jeWJveC1yb3RhdGUge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFuY3lib3gtZGFzaCB7XG4gIDAlIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAxLCAyMDA7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA4OSwgMjAwO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAtMzVweDtcbiAgfVxuICAxMDAlIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiA4OSwgMjAwO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAtMTI0cHg7XG4gIH1cbn1cbiIsIi5mYW5jeWJveF9fYmFja2Ryb3AsXG4uZmFuY3lib3hfX2NhcHRpb24sXG4uZmFuY3lib3hfX25hdixcbi5jYXJvdXNlbF9fZG90cyxcbi5jYXJvdXNlbF9fYnV0dG9uLmlzLWNsb3NlIHtcbiAgb3BhY2l0eTogdmFyKC0tZmFuY3lib3gtb3BhY2l0eSwgMSk7XG59XG5cbi8qIE9wZW5pbmcgKi9cbi5mYW5jeWJveF9fY29udGFpbmVyLmlzLWFuaW1hdGVkW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl0ge1xuICAmIC5mYW5jeWJveF9fYmFja2Ryb3AsXG4gICYgLmZhbmN5Ym94X19jYXB0aW9uLFxuICAmIC5mYW5jeWJveF9fbmF2LFxuICAmIC5jYXJvdXNlbF9fZG90cyxcbiAgJiAuY2Fyb3VzZWxfX2J1dHRvbi5pcy1jbG9zZSB7XG4gICAgYW5pbWF0aW9uOiAwLjE1cyBlYXNlIGJhY2t3YXJkcyBmYW5jeWJveC1mYWRlSW47XG4gIH1cbn1cblxuLyogQ2xvc2luZyAqL1xuLmZhbmN5Ym94X19jb250YWluZXIuaXMtYW5pbWF0ZWQuaXMtY2xvc2luZyB7XG4gICYgLmZhbmN5Ym94X19iYWNrZHJvcCxcbiAgJiAuZmFuY3lib3hfX2NhcHRpb24sXG4gICYgLmZhbmN5Ym94X19uYXYsXG4gICYgLmNhcm91c2VsX19kb3RzLFxuICAmIC5jYXJvdXNlbF9fYnV0dG9uLmlzLWNsb3NlIHtcbiAgICBhbmltYXRpb246IDAuMTVzIGVhc2UgYm90aCBmYW5jeWJveC1mYWRlT3V0O1xuICB9XG59XG5cbi5mYW5jeWJveC1mYWRlSW4ge1xuICBhbmltYXRpb246IDAuMTVzIGVhc2UgYm90aCBmYW5jeWJveC1mYWRlSW47XG59XG5cbi5mYW5jeWJveC1mYWRlT3V0IHtcbiAgYW5pbWF0aW9uOiAwLjFzIGVhc2UgYm90aCBmYW5jeWJveC1mYWRlT3V0O1xufVxuXG4uZmFuY3lib3gtem9vbUluVXAge1xuICBhbmltYXRpb246IDAuMnMgZWFzZSBib3RoIGZhbmN5Ym94LXpvb21JblVwO1xufVxuXG4uZmFuY3lib3gtem9vbU91dERvd24ge1xuICBhbmltYXRpb246IDAuMTVzIGVhc2UgYm90aCBmYW5jeWJveC16b29tT3V0RG93bjtcbn1cblxuLyogQm90aCBgdGhyb3dPdXRgIGNsYXNzZXMgYXJlIGZvciBjbG9zaW5nIGFuaW1hdGlvbiBhZnRlciBkcmFnZ2luZyB1cC9kb3duICovXG4uZmFuY3lib3gtdGhyb3dPdXRVcCB7XG4gIGFuaW1hdGlvbjogMC4xNXMgZWFzZSBib3RoIGZhbmN5Ym94LXRocm93T3V0VXA7XG59XG5cbi5mYW5jeWJveC10aHJvd091dERvd24ge1xuICBhbmltYXRpb246IDAuMTVzIGVhc2UgYm90aCBmYW5jeWJveC10aHJvd091dERvd247XG59XG5cbkBrZXlmcmFtZXMgZmFuY3lib3gtZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFuY3lib3gtZmFkZU91dCB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFuY3lib3gtem9vbUluVXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTcpIHRyYW5zbGF0ZTNkKDAsIDE2cHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFuY3lib3gtem9vbU91dERvd24ge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk3KSB0cmFuc2xhdGUzZCgwLCAxNnB4LCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFuY3lib3gtdGhyb3dPdXRVcCB7XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMCUsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYW5jeWJveC10aHJvd091dERvd24ge1xuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMCUsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbiIsIi5mYW5jeWJveF9fY2Fyb3VzZWwgLmNhcm91c2VsX19zbGlkZSB7XG4gIHNjcm9sbGJhci13aWR0aDogdGhpbjtcbiAgc2Nyb2xsYmFyLWNvbG9yOiAjY2NjIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbn1cblxuLmZhbmN5Ym94X19jYXJvdXNlbCAuY2Fyb3VzZWxfX3NsaWRlOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xufVxuXG4uZmFuY3lib3hfX2Nhcm91c2VsIC5jYXJvdXNlbF9fc2xpZGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4uZmFuY3lib3hfX2Nhcm91c2VsIC5jYXJvdXNlbF9fc2xpZGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cbiIsIi5mYW5jeWJveF9fY2Fyb3VzZWwge1xuICAmLmlzLWRyYWdnYWJsZSAuZmFuY3lib3hfX3NsaWRlLFxuICAmLmlzLWRyYWdnYWJsZSAuZmFuY3lib3hfX3NsaWRlIC5mYW5jeWJveF9fY29udGVudCB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGN1cnNvcjogZ3JhYjtcbiAgfVxuXG4gICYuaXMtZHJhZ2dpbmcgLmZhbmN5Ym94X19zbGlkZSxcbiAgJi5pcy1kcmFnZ2luZyAuZmFuY3lib3hfX3NsaWRlIC5mYW5jeWJveF9fY29udGVudCB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cblxuICAmIC5mYW5jeWJveF9fc2xpZGUgLmZhbmN5Ym94X19jb250ZW50IHtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cblxuICAmIC5mYW5jeWJveF9fc2xpZGUuY2FuLXpvb21faW4gLmZhbmN5Ym94X19jb250ZW50IHtcbiAgICBjdXJzb3I6IHpvb20taW47XG4gIH1cblxuICAmIC5mYW5jeWJveF9fc2xpZGUuY2FuLXpvb21fb3V0IC5mYW5jeWJveF9fY29udGVudCB7XG4gICAgY3Vyc29yOiB6b29tLW91dDtcbiAgfVxuXG4gICYgLmZhbmN5Ym94X19zbGlkZS5pcy1kcmFnZ2FibGUgLmZhbmN5Ym94X19jb250ZW50IHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgY3Vyc29yOiBncmFiO1xuICB9XG5cbiAgJiAuZmFuY3lib3hfX3NsaWRlLmlzLWRyYWdnaW5nIC5mYW5jeWJveF9fY29udGVudCB7XG4gICAgY3Vyc29yOiBtb3ZlO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cbn1cbiIsIi5mYW5jeWJveF9faW1hZ2Uge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4uaGFzLWltYWdlIHtcbiAgLmZhbmN5Ym94X19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcblxuICAgIC5pcy1jbG9zaW5nICYge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLWltYWdlLWZpdD1cImNvbnRhaW5cIl0ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcblxuICAgIC8qIEZpeCBNYWMgT1MgU2FmYXJpIDExIC0gMTMgKi9cbiAgICAuZmFuY3lib3hfX2NvbnRlbnQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAuZmFuY3lib3hfX2ltYWdlIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gICZbZGF0YS1pbWFnZS1maXQ9XCJjb250YWluLXdcIl0ge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLmZhbmN5Ym94X19jb250ZW50IHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmZhbmN5Ym94X19pbWFnZSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJltkYXRhLWltYWdlLWZpdD1cImNvdmVyXCJdIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XG5cbiAgICAuZmFuY3lib3hfX2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLmZhbmN5Ym94X19pbWFnZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG59XG4iLCIuZmFuY3lib3hfX2Nhcm91c2VsIHtcbiAgLmZhbmN5Ym94X19zbGlkZSB7XG4gICAgJHA6ICY7XG5cbiAgICBAYXQtcm9vdCAuZmFuY3lib3hfX2NvbnRlbnQge1xuICAgICAgI3skcH0uaGFzLWlmcmFtZSAmLFxuICAgICAgI3skcH0uaGFzLW1hcCAmLFxuICAgICAgI3skcH0uaGFzLXBkZiAmLFxuICAgICAgI3skcH0uaGFzLXZpZGVvICYsXG4gICAgICAjeyRwfS5oYXMtaHRtbDV2aWRlbyAmIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgbWluLWhlaWdodDogMXB4O1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIH1cblxuICAgICAgI3skcH0uaGFzLWlmcmFtZSAmLFxuICAgICAgI3skcH0uaGFzLW1hcCAmLFxuICAgICAgI3skcH0uaGFzLXBkZiAmIHtcbiAgICAgICAgd2lkdGg6ICRmYW5jeWJveC1pZnJhbWUtd2lkdGg7XG4gICAgICAgIGhlaWdodDogJGZhbmN5Ym94LWlmcmFtZS1oZWlnaHQ7XG4gICAgICB9XG5cbiAgICAgICN7JHB9Lmhhcy12aWRlbyAmLFxuICAgICAgI3skcH0uaGFzLWh0bWw1dmlkZW8gJiB7XG4gICAgICAgIHdpZHRoOiAkZmFuY3lib3gtdmlkZW8td2lkdGg7XG4gICAgICAgIGhlaWdodDogJGZhbmN5Ym94LXZpZGVvLWhlaWdodDtcblxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgICN7JHB9Lmhhcy1tYXAgJixcbiAgICAgICN7JHB9Lmhhcy1wZGYgJixcbiAgICAgICN7JHB9Lmhhcy12aWRlbyAmLFxuICAgICAgI3skcH0uaGFzLWh0bWw1dmlkZW8gJiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjQsIDI0LCAyNywgMC45KTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG5cbiAgICAgICN7JHB9Lmhhcy1tYXAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlNWUzZGY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mYW5jeWJveF9faHRtbDV2aWRlbyxcbi5mYW5jeWJveF9faWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5mYW5jeWJveC1wbGFjZWhvbGRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xufVxuIiwiLmZhbmN5Ym94X190aHVtYnMge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkZmFuY3lib3gtdGh1bWJzLXBhZGRpbmc7XG5cbiAgb3BhY2l0eTogdmFyKC0tZmFuY3lib3gtb3BhY2l0eSwgMSk7XG5cbiAgLmZhbmN5Ym94X19jb250YWluZXIuaXMtYW5pbWF0ZWRbYXJpYS1oaWRkZW49XCJmYWxzZVwiXSAmIHtcbiAgICBhbmltYXRpb246IDAuMTVzIGVhc2UtaW4gYmFja3dhcmRzIGZhbmN5Ym94LWZhZGVJbjtcbiAgfVxuXG4gIC5mYW5jeWJveF9fY29udGFpbmVyLmlzLWFuaW1hdGVkLmlzLWNsb3NpbmcgJiB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICYgLmNhcm91c2VsX19zbGlkZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6ICRmYW5jeWJveC10aHVtYnMtd2lkdGg7XG5cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGZhbmN5Ym94LXRodW1icy1zcGFjaW5nO1xuXG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIEBpZiAoJGZhbmN5Ym94LXRodW1icy1zZWxlY3RlZC1ib3JkZXIgIT0gZmFsc2UpIHtcbiAgICAgICYgLmZhbmN5Ym94X190aHVtYjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcblxuICAgICAgICBib3JkZXItd2lkdGg6ICRmYW5jeWJveC10aHVtYnMtc2VsZWN0ZWQtYm9yZGVyLXdpZHRoO1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItY29sb3I6ICRmYW5jeWJveC10aHVtYnMtc2VsZWN0ZWQtYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZTtcblxuICAgICAgICBAaWYgKCRmYW5jeWJveC10aHVtYnMtYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSkge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRmYW5jeWJveC10aHVtYnMtYm9yZGVyLXJhZGl1cztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmlzLW5hdi1zZWxlY3RlZCAuZmFuY3lib3hfX3RodW1iOjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuOTI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiAqIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5mYW5jeWJveF9fdGh1bWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC8qIEtlZXAgYXNwZWN0IHJhdGlvICovXG4gIHBhZGRpbmctdG9wOiBjYWxjKDEwMCUgLyAoI3skZmFuY3lib3gtdGh1bWJzLXJhdGlvfSkpO1xuXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmYW5jeWJveC10aHVtYnMtYmc7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgQGlmICgkZmFuY3lib3gtdGh1bWJzLWJvcmRlci1yYWRpdXMgIT0gZmFsc2UpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZmFuY3lib3gtdGh1bWJzLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBAaWYgKCRmYW5jeWJveC10aHVtYnMtc2VsZWN0ZWQtb3BhY2l0eSAhPSBmYWxzZSkge1xuICAgIC5pcy1uYXYtc2VsZWN0ZWQgJiB7XG4gICAgICBvcGFjaXR5OiAkZmFuY3lib3gtdGh1bWJzLXNlbGVjdGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG4iLCIuZmFuY3lib3hfX3Rvb2xiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDIwO1xuXG4gIGJhY2tncm91bmQ6ICRmYW5jeWJveC10b29sYmFyLWJnO1xuICBwYWRkaW5nOiAkZmFuY3lib3gtdG9vbGJhci1wYWRkaW5nO1xuXG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgLS1jYXJvdXNlbC1idXR0b24tc3ZnLXdpZHRoOiAyMHB4O1xuICAtLWNhcm91c2VsLWJ1dHRvbi1zdmctaGVpZ2h0OiAyMHB4O1xuXG4gIEBpbmNsdWRlIGZhbmN5Ym94LWJyZWFrcG9pbnQodG9vbGJhcik7XG5cbiAgb3BhY2l0eTogdmFyKC0tZmFuY3lib3gtb3BhY2l0eSwgMSk7XG4gIHRleHQtc2hhZG93OiB2YXIoLS1mYW5jeWJveC10b29sYmFyLXRleHQtc2hhZG93LCAxcHggMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNCkpO1xuXG4gIC5mYW5jeWJveF9fY29udGFpbmVyLmlzLWFuaW1hdGVkW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl0gJiB7XG4gICAgYW5pbWF0aW9uOiAwLjE1cyBlYXNlLWluIGJhY2t3YXJkcyBmYW5jeWJveC1mYWRlSW47XG4gIH1cblxuICAuZmFuY3lib3hfX2NvbnRhaW5lci5pcy1hbmltYXRlZC5pcy1jbG9zaW5nICYge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmX19pdGVtcyB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgICYtLWxlZnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgICYtLWNlbnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuXG4gICAgJi0tcmlnaHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gICAgICAmLS1jZW50ZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mYW5jeWJveF9fY291bnRlciB7XG4gIG1pbi13aWR0aDogNzJweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBsaW5lLWhlaWdodDogdmFyKC0tY2Fyb3VzZWwtYnV0dG9uLWhlaWdodCwgNDhweCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbn1cblxuLmZhbmN5Ym94X19wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQ6ICRmYW5jeWJveC1hY2NlbnQtY29sb3I7XG4gIGhlaWdodDogM3B4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDApO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHotaW5kZXg6IDMwO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmZhbmN5Ym94X19jb250YWluZXI6ZnVsbHNjcmVlbjo6YmFja2Ryb3Age1xuICBvcGFjaXR5OiAwO1xufVxuXG4uZmFuY3lib3hfX2J1dHRvbi0tZnVsbHNjcmVlbiBnOm50aC1jaGlsZCgyKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mYW5jeWJveF9fY29udGFpbmVyOmZ1bGxzY3JlZW4gLmZhbmN5Ym94X19idXR0b24tLWZ1bGxzY3JlZW4gZzpudGgtY2hpbGQoMSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmFuY3lib3hfX2NvbnRhaW5lcjpmdWxsc2NyZWVuIC5mYW5jeWJveF9fYnV0dG9uLS1mdWxsc2NyZWVuIGc6bnRoLWNoaWxkKDIpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mYW5jeWJveF9fYnV0dG9uLS1zbGlkZXNob3cgZzpudGgtY2hpbGQoMikge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmFuY3lib3hfX2NvbnRhaW5lci5oYXMtc2xpZGVzaG93IC5mYW5jeWJveF9fYnV0dG9uLS1zbGlkZXNob3cgZzpudGgtY2hpbGQoMSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmFuY3lib3hfX2NvbnRhaW5lci5oYXMtc2xpZGVzaG93IC5mYW5jeWJveF9fYnV0dG9uLS1zbGlkZXNob3cgZzpudGgtY2hpbGQoMikge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIHNyYzogbG9jYWwoJ0ludGVyIEJvbGQgSXRhbGljJyksIGxvY2FsKCdJbnRlci1Cb2xkSXRhbGljJyksXG4gICAgdXJsKCcuLi9mb250cy9pbnRlci9JbnRlci1Cb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgTWVkaXVtIEl0YWxpYycpLCBsb2NhbCgnSW50ZXItTWVkaXVtSXRhbGljJyksXG4gICAgdXJsKCcuLi9mb250cy9pbnRlci9JbnRlci1NZWRpdW1JdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIHNyYzogbG9jYWwoJ0ludGVyIFRoaW4gSXRhbGljIEJFVEEnKSwgbG9jYWwoJ0ludGVyLVRoaW5JdGFsaWNCRVRBJyksXG4gICAgdXJsKCcuLi9mb250cy9pbnRlci9JbnRlci1UaGluSXRhbGljQkVUQS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogMTAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgUmVndWxhcicpLCBsb2NhbCgnSW50ZXItUmVndWxhcicpLFxuICAgIHVybCgnLi4vZm9udHMvaW50ZXIvSW50ZXItUmVndWxhci53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgQmxhY2snKSwgbG9jYWwoJ0ludGVyLUJsYWNrJyksXG4gICAgdXJsKCcuLi9mb250cy9pbnRlci9JbnRlci1CbGFjay53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgQmxhY2sgSXRhbGljJyksIGxvY2FsKCdJbnRlci1CbGFja0l0YWxpYycpLFxuICAgIHVybCgnLi4vZm9udHMvaW50ZXIvSW50ZXItQmxhY2tJdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIHNyYzogbG9jYWwoJ0ludGVyIExpZ2h0IEJFVEEnKSwgbG9jYWwoJ0ludGVyLUxpZ2h0QkVUQScpLFxuICAgIHVybCgnLi4vZm9udHMvaW50ZXIvSW50ZXItTGlnaHRCRVRBLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBzcmM6IGxvY2FsKCdJbnRlciBTZW1pIEJvbGQnKSwgbG9jYWwoJ0ludGVyLVNlbWlCb2xkJyksXG4gICAgdXJsKCcuLi9mb250cy9pbnRlci9JbnRlci1TZW1pQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgRXh0cmEgQm9sZCBJdGFsaWMnKSwgbG9jYWwoJ0ludGVyLUV4dHJhQm9sZEl0YWxpYycpLFxuICAgIHVybCgnLi4vZm9udHMvaW50ZXIvSW50ZXItRXh0cmFCb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBzcmM6IGxvY2FsKCdJbnRlciBCb2xkJyksIGxvY2FsKCdJbnRlci1Cb2xkJyksXG4gICAgdXJsKCcuLi9mb250cy9pbnRlci9JbnRlci1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgRXh0cmEgTGlnaHQgSXRhbGljIEJFVEEnKSwgbG9jYWwoJ0ludGVyLUV4dHJhTGlnaHRJdGFsaWNCRVRBJyksXG4gICAgdXJsKCcuLi9mb250cy9pbnRlci9JbnRlci1FeHRyYUxpZ2h0SXRhbGljQkVUQS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgRXh0cmEgTGlnaHQgQkVUQScpLCBsb2NhbCgnSW50ZXItRXh0cmFMaWdodEJFVEEnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhTGlnaHRCRVRBLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBzcmM6IGxvY2FsKCdJbnRlciBFeHRyYSBCb2xkJyksIGxvY2FsKCdJbnRlci1FeHRyYUJvbGQnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgVGhpbiBCRVRBJyksIGxvY2FsKCdJbnRlci1UaGluQkVUQScpLFxuICAgIHVybCgnLi4vZm9udHMvaW50ZXIvSW50ZXItVGhpbkJFVEEud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIHNyYzogbG9jYWwoJ0ludGVyIExpZ2h0IEl0YWxpYyBCRVRBJyksIGxvY2FsKCdJbnRlci1MaWdodEl0YWxpY0JFVEEnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ludGVyL0ludGVyLUxpZ2h0SXRhbGljQkVUQS53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgSXRhbGljJyksIGxvY2FsKCdJbnRlci1JdGFsaWMnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ludGVyL0ludGVyLUl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgc3JjOiBsb2NhbCgnSW50ZXIgU2VtaSBCb2xkIEl0YWxpYycpLCBsb2NhbCgnSW50ZXItU2VtaUJvbGRJdGFsaWMnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ludGVyL0ludGVyLVNlbWlCb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBzcmM6IGxvY2FsKCdJbnRlciBNZWRpdW0nKSwgbG9jYWwoJ0ludGVyLU1lZGl1bScpLFxuICAgIHVybCgnLi4vZm9udHMvaW50ZXIvSW50ZXItTWVkaXVtLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuIiwiQGltcG9ydCAnbm9kZV9tb2R1bGVzL25vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplJztcblxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbmJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgfVxufVxuXG5cbi8vIFR5cG9ncmFwaHlcbi8vXG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXNlY29uZGFyeSk7XG59XG5cbmgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgzNik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSg1Mik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgfVxufVxuXG5oMiwgLmgyIHtcbiAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMzIpO1xuICAgIH1cbn1cblxuaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiByZW0oMjQpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG59XG5cbmg0LCAuaDQge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICB9XG59XG5cbmg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xufVxuXG5oNiwgLmg2IHtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbn1cblxuYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxucCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMzIpO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cblxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIltkYXRhLWZ1bGxzY3JlZW5dIHtcblx0bWluLWhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogY2FsYyh2YXIoLS12aCwgMXZoKSAqIDEwMCk7XG59XG4iLCJcbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAuY29udGFpbmVyLSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgQGV4dGVuZCAuY29udGFpbmVyLWZsdWlkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRXh0ZW5kIGVhY2ggYnJlYWtwb2ludCB3aGljaCBpcyBzbWFsbGVyIG9yIGVxdWFsIHRvIHRoZSBjdXJyZW50IGJyZWFrcG9pbnRcbiAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiB0cnVlO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICAgICAgQGlmICgkZXh0ZW5kLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRuYW1lLCAkZ3JpZC1icmVha3BvaW50cyl9IHtcbiAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gICAgLnJvdyB7XG4gICAgICAgIEBpbmNsdWRlIG1ha2Utcm93KCk7XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLXJlYWR5KCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnMoKTtcbn1cbiIsIi5idG4ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogMzJweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICBsaW5lLWhlaWdodDogcmVtKDE2KTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIHNwYW4ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IHJlbSg0KSAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOmFmdGVyLFxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAzM3B4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYnRuX3BhdHRlcm5fZnVsbC5zdmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG5cbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMjApO1xuXG4gICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG5cbiAgICAgICAgJjphZnRlcixcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDUxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tcHJpbWFyeSB7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRTlGNkU1O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzUxQjQyRjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzcHggMDtcbiAgICB9XG5cbiAgICAmLmhvdmVyLFxuICAgICY6aG92ZXIsXG4gICAgJi5hY3RpdmUge1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zM3B4IC01MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmOmRpc2FibGVkIHtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmV5LTEwMCk7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1ncmV5LTEwMCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1ncmV5LTEwMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zM3B4IC0xMDZweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NnB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDdweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ob3ZlcixcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuXG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjZweCAtNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwN3B4IC01MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgJjpkaXNhYmxlZCB7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjZweCAtMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDdweCAtMTAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0OHB4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDBweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ob3ZlcixcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0OHB4IC01MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjAwcHggLTUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAmOmRpc2FibGVkIHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNDhweCAtMTAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMDBweCAtMTAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4teHMge1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgxNik7XG5cbiAgICAgICAgJjphZnRlcixcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDMzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaG92ZXIsXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zM3B4IC01MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgJjpkaXNhYmxlZCB7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JleS0xMDApO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdyZXktMTAwKTtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1ncmV5LTEwMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zM3B4IC0xMDZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEwNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyMCk7XG5cbiAgICAgICAgJjphZnRlcixcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgd2lkdGg6IDQxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjZweCAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA3cHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaG92ZXIsXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICYuYWN0aXZlIHtcblxuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY2cHggLTUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDdweCAtNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICY6ZGlzYWJsZWQge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY2cHggLTEwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA3cHggLTEwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYnRuLXNtIHtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMjApO1xuXG4gICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiA0MXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTY2cHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwN3B4IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhvdmVyLFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmLmFjdGl2ZSB7XG5cblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NnB4IC01MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTA3cHggLTUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAmOmRpc2FibGVkIHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NnB4IC0xMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwN3B4IC0xMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ0bi13aGl0ZSB7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS13aGl0ZSk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS13aGl0ZSk7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNTZweDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMzcHggLTE1NnB4O1xuICAgIH1cblxuICAgICYuaG92ZXIsXG4gICAgJjpob3ZlcixcbiAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4tNjAwKTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdyZWVuLTYwMCk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1ncmVlbi02MDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjA2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zM3B4IC0yMDZweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JleS0xMDApO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ3JleS0xMDApO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ3JleS0xMDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjU2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0zM3B4IC0yNTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjZweCAtMTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDdweCAtMTUwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhvdmVyLFxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNjZweCAtMjAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDdweCAtMjAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAmOmRpc2FibGVkIHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC02NnB4IC0xMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwN3B4IC0xMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTQ4cHggLTE1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjAwcHggLTE1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ob3ZlcixcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0OHB4IC0yMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMHB4IC0yMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICY6ZGlzYWJsZWQge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE0OHB4IC0yNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMHB4IC0yNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJ0bi10ZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICBzdHJva2U6IHZhcigtLWdyZWVuKTtcbiAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiAuMjVzO1xuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogcmVtKDI0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSg4KTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1ibGFjayk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICB9XG59XG5cbi5idG4tbmF2IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgd2lkdGg6IHJlbSgzNCk7XG4gICAgaGVpZ2h0OiByZW0oMzQpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZmlsbDogdmFyKC0tYmxhY2spO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogLjI1cztcblxuICAgIGkge1xuICAgICAgICBoZWlnaHQ6IHJlbSgxMSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgZmlsbDogdmFyKC0tZ3JlZW4pO1xuICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQsXG4gICAgLnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIGZpbGw6IHZhcigtLWdyZXktMjAwKTtcbiAgICB9XG5cbiAgICAmLS1ncmV5IHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JleSk7XG4gICAgfVxufVxuXG4uaGlkZGVuLWRpc2FibGUge1xuXG4gICAgLmJ0bi1uYXYge1xuXG4gICAgICAgICY6ZGlzYWJsZWQsXG4gICAgICAgIC5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiQGltcG9ydCAnLi9pbnB1dHMnO1xuQGltcG9ydCAnLi9jaGVja2JveGVzJztcbkBpbXBvcnQgJy4vcmFkaW9idXR0b25zJztcbkBpbXBvcnQgJy4vY2hvaWNlcyc7XG5AaW1wb3J0ICcuL3JhbmdlJztcbkBpbXBvcnQgJy4vcXVhbnRpdHknO1xuXG4uZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDI0KTtcbn1cbiIsImlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pLFxudGV4dGFyZWEsXG5zZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuaW5wdXQsIHRleHRhcmVhIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6Zm9jdXM6cmVxdWlyZWQ6aW52YWxpZCB7IGJvcmRlci1jb2xvcjogcmVkIH1cbiAgICAmOnJlcXVpcmVkOnZhbGlkIHsgYm9yZGVyLWNvbG9yOiBncmVlbiB9XG59XG5cbjphY3RpdmUsIDpob3ZlciwgOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDAgIWltcG9ydGFudDtcbn1cblxub3B0aW9uOjpzZWxlY3Rpb24ge2JhY2tncm91bmQ6ICNjY2M7fVxub3B0aW9uOjotbW96LXNlbGVjdGlvbiB7YmFja2dyb3VuZDogI2NjYzt9XG5vcHRpb246Oi13ZWJraXQtc2VsZWN0aW9uIHtiYWNrZ3JvdW5kOiAjY2NjOyBjb2xvcjojZmZmO31cblxuLmZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAkaW5wdXQtc2VsZWN0b3I6IFwiaW5wdXRbdHlwZT10ZXh0XSwgaW5wdXRbdHlwZT1lbWFpbF0sIGlucHV0W3R5cGU9cGFzc3dvcmRdLCB0ZXh0YXJlYVwiO1xuXG4gICAgI3skaW5wdXQtc2VsZWN0b3J9IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNDgpO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjb2xvcjogIzViM2QzODtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtKDI0KTtcbiAgICAgICAgcGFkZGluZzogcmVtKDExKSByZW0oMTYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGJvcmRlcjogcmVtKDEpIHNvbGlkICM1YjNkMzg7XG4gICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyKCM5MDkwOTApO1xuXG4gICAgICAgICY6Oi1tcy1jbGVhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzLFxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIodHJhbnNwYXJlbnQpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgc2l6ZS1yZWwoNXB4KSByZ2JhKDkyLCAxNzMsIDI1NSwgMC41KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZXJyb3Ige1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZWQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICByZXNpemU6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIGZpbGw6ICM1YjNkMzg7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAwLjc1cmVtKTtcbiAgICAgICAgbGVmdDogcmVtKDE2KTtcbiAgICAgICAgaGVpZ2h0OiByZW0oMjQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cblxuICAgICYtLWljb24ge1xuXG4gICAgICAgICN7JGlucHV0LXNlbGVjdG9yfSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg0OCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucHJldHR5LWNoZWNrYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19pbnB1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAmOmZvY3VzICsgLnByZXR0eS1jaGVja2JveF9fbGFiZWwge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDVweCAjMDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpjaGVja2VkICsgLnByZXR0eS1jaGVja2JveF9fbGFiZWwge1xuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLXN0eWxlIDogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQtc3R5bGUgOiBub25lO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybSA6IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIGhlaWdodCA6IDAuNHJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aCA6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1cyA6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoIDogMnB4O1xuICAgICAgICAgICAgICAgIHRvcCA6IHJlbSg1KTtcbiAgICAgICAgICAgICAgICBsZWZ0IDogcmVtKDQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpkaXNhYmxlZCArIC5wcmV0dHktY2hlY2tib3hfX2xhYmVsIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY29sb3I6ICMzYTNhM2E7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyMCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMzApO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDIwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDIwKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgY29udGVudCA6ICcnO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIGhlaWdodCA6IHJlbSgyMCk7XG4gICAgICAgICAgICB3aWR0aCA6IHJlbSgyMCk7XG4gICAgICAgICAgICBib3JkZXIgOiAxcHggc29saWQgI0RGRTNFNztcbiAgICAgICAgICAgIHBvc2l0aW9uIDogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzIDogcmVtKDQpO1xuICAgICAgICAgICAgdG9wIDogMDtcbiAgICAgICAgICAgIGxlZnQgOiAwO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uIDogMTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uIDogMTAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi5wcmV0dHktcmFkaW8ge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmX19pbnB1dCB7XG4gICAgICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY29sb3I6ICMzYTNhM2E7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyMCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMzApO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMjApO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjApO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogcmVtKDUpO1xuICAgICAgICAgICAgbGVmdDogcmVtKDUpO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxMCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgxMCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAvLyAgIHRyYW5zZm9ybTogc2NhbGUoMyk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgICZfX2lucHV0OmNoZWNrZWQgKyAucHJldHR5LXJhZGlvX19sYWJlbCB7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgIC8vIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uIDogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzUsIDAuOSwgMC40LCAwLjkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5wdXQ6ZGlzYWJsZWQgKyAucHJldHR5LXJhZGlvX19sYWJlbCB7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG59XG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbj0gICAgICAgICAgICBDaG9pY2VzICAgICAgICAgICAgPVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbiRjaG9pY2VzLXNlbGVjdG9yOiAnY2hvaWNlcycgIWRlZmF1bHQ7XG4kY2hvaWNlcy1mb250LXNpemUtbGc6IHNpemUtcmVsKDE2cHgpICFkZWZhdWx0O1xuJGNob2ljZXMtZm9udC1zaXplLW1kOiBzaXplLXJlbCgxNHB4KSAhZGVmYXVsdDtcbiRjaG9pY2VzLWZvbnQtc2l6ZS1zbTogc2l6ZS1yZWwoMTJweCkgIWRlZmF1bHQ7XG4kY2hvaWNlcy1ndXR0ZXJpbmc6IHNpemUtcmVsKDI0cHgpICFkZWZhdWx0O1xuJGNob2ljZXMtYm9yZGVyLXJhZGl1czogM3B4ICFkZWZhdWx0O1xuJGNob2ljZXMtYm9yZGVyLXJhZGl1cy1pdGVtOiAzcHggIWRlZmF1bHQ7XG4kY2hvaWNlcy1iZy1jb2xvcjogI2ZmZmZmZiAhZGVmYXVsdDtcbiRjaG9pY2VzLWJnLWNvbG9yLWRpc2FibGVkOiAjZWFlYWVhICFkZWZhdWx0O1xuJGNob2ljZXMtYmctY29sb3ItZHJvcGRvd246ICNmZmZmZmYgIWRlZmF1bHQ7XG4kY2hvaWNlcy10ZXh0LWNvbG9yOiAjMzMzMzMzICFkZWZhdWx0O1xuJGNob2ljZXMta2V5bGluZS1jb2xvcjogIzViM2QzOCAhZGVmYXVsdDtcbiRjaG9pY2VzLXByaW1hcnktY29sb3I6ICMwMGJjZDQgIWRlZmF1bHQ7XG4kY2hvaWNlcy1kaXNhYmxlZC1jb2xvcjogI2VhZWFlYSAhZGVmYXVsdDtcbiRjaG9pY2VzLWhpZ2hsaWdodC1jb2xvcjogJGNob2ljZXMtcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRjaG9pY2VzLWJ1dHRvbi1kaW1lbnNpb246IDhweCAhZGVmYXVsdDtcbiRjaG9pY2VzLWJ1dHRvbi1vZmZzZXQ6IDhweCAhZGVmYXVsdDtcbiRjaG9pY2VzLWljb24tY3Jvc3M6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMGlNakVpSUdobGFXZG9kRDBpTWpFaUlIWnBaWGRDYjNnOUlqQWdNQ0F5TVNBeU1TSWdlRzFzYm5NOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6SXdNREF2YzNabklqNDhaeUJtYVd4c1BTSWpSa1pHSWlCbWFXeHNMWEoxYkdVOUltVjJaVzV2WkdRaVBqeHdZWFJvSUdROUlrMHlMalU1TWk0d05EUnNNVGd1TXpZMElERTRMak0yTkMweUxqVTBPQ0F5TGpVME9Fd3VNRFEwSURJdU5Ua3llaUl2UGp4d1lYUm9JR1E5SWswd0lERTRMak0yTkV3eE9DNHpOalFnTUd3eUxqVTBPQ0F5TGpVME9Fd3lMalUwT0NBeU1DNDVNVEo2SWk4K1BDOW5Qand2YzNablBnPT0pICFkZWZhdWx0O1xuJGNob2ljZXMtaWNvbi1jcm9zcy1pbnZlcnNlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpTWpFaUlHaGxhV2RvZEQwaU1qRWlJSFpwWlhkQ2IzZzlJakFnTUNBeU1TQXlNU0lnZUcxc2JuTTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5Mekl3TURBdmMzWm5JajQ4WnlCbWFXeHNQU0lqTURBd0lpQm1hV3hzTFhKMWJHVTlJbVYyWlc1dlpHUWlQanh3WVhSb0lHUTlJazB5TGpVNU1pNHdORFJzTVRndU16WTBJREU0TGpNMk5DMHlMalUwT0NBeUxqVTBPRXd1TURRMElESXVOVGt5ZWlJdlBqeHdZWFJvSUdROUlrMHdJREU0TGpNMk5Fd3hPQzR6TmpRZ01Hd3lMalUwT0NBeUxqVTBPRXd5TGpVME9DQXlNQzQ1TVRKNklpOCtQQzluUGp3dmMzWm5QZz09KSAhZGVmYXVsdDtcblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNob2ljZXMtZ3V0dGVyaW5nO1xuICAgIGZvbnQtc2l6ZTogJGNob2ljZXMtZm9udC1zaXplLWxnO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAmLmlzLWRpc2FibGVkIHtcbiAgICAgICAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pbm5lcixcbiAgICAgICAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pbnB1dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hvaWNlcy1iZy1jb2xvci1kaXNhYmxlZDtcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0ge1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtZm9jdXNlZCB7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgIH1cblxuICAgIFtoaWRkZW5dIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9W2RhdGEtdHlwZSo9J3NlbGVjdC1vbmUnXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faW5uZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDgpO1xuICAgIH1cbiAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2lucHV0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiByZW0oMTApO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNob2ljZXMta2V5bGluZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2J1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjaG9pY2VzLWljb24tY3Jvc3MtaW52ZXJzZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA4cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oLTEwKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMjUpO1xuICAgICAgICBoZWlnaHQ6IHJlbSgyMCk7XG4gICAgICAgIHdpZHRoOiByZW0oMjApO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0oMTApO1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCAkY2hvaWNlcy1oaWdobGlnaHQtY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pdGVtW2RhdGEtdmFsdWU9JyddIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItY29sb3I6ICRjaG9pY2VzLXRleHQtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci13aWR0aDogcmVtKDUpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiByZW0oMTEuNSk7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oLTMpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gICAgJi5pcy1vcGVuOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY2hvaWNlcy10ZXh0LWNvbG9yIHRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oLTgpO1xuICAgIH1cbiAgICAmW2Rpcj0ncnRsJ10ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGxlZnQ6IHJlbSgxMik7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2J1dHRvbiB7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDI1KTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9W2RhdGEtdHlwZSo9J3NlbGVjdC1tdWx0aXBsZSddLFxuLiN7JGNob2ljZXMtc2VsZWN0b3J9W2RhdGEtdHlwZSo9J3RleHQnXSB7XG4gICAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pbm5lciB7XG4gICAgICAgIGN1cnNvcjogdGV4dDtcbiAgICB9XG4gICAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19idXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oLTQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtKDgpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxNik7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgZGFya2VuKCRjaG9pY2VzLXByaW1hcnktY29sb3IsIDEwJSk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6ICRjaG9pY2VzLWljb24tY3Jvc3M7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogcmVtKDgpO1xuICAgICAgICB3aWR0aDogcmVtKDgpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNob2ljZXMtYmctY29sb3I7XG4gICAgcGFkZGluZzogcmVtKDExKSByZW0oMTIpIHJlbSgxMSkgcmVtKDIwKTtcbiAgICBib3JkZXI6IHJlbSgxKSBzb2xpZCAkY2hvaWNlcy1rZXlsaW5lLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbSg0KTtcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgbGluZS1oZWlnaHQ6IHJlbSgyNCk7XG4gICAgbWluLWhlaWdodDogcmVtKDQ4KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC5pcy1mb2N1c2VkICYsXG4gICAgLmlzLW9wZW4gJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjaG9pY2VzLWtleWxpbmUtY29sb3IsIDE1JSk7XG4gICAgfVxuICAgIC5pcy1vcGVuICYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkY2hvaWNlcy1ib3JkZXItcmFkaXVzICRjaG9pY2VzLWJvcmRlci1yYWRpdXMgMCAwO1xuICAgIH1cbiAgICAuaXMtZmxpcHBlZC5pcy1vcGVuICYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgJGNob2ljZXMtYm9yZGVyLXJhZGl1cyAkY2hvaWNlcy1ib3JkZXItcmFkaXVzO1xuICAgIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9X19saXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fbGlzdC0tc2luZ2xlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg0KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTYpO1xuICAgIH1cbiAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fbGlzdC0tbXVsdGlwbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbSg0KTtcbiAgICAgICAgcGFkZGluZzogcmVtKDQpIHJlbSg2KTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtKDE0KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbWFyZ2luOiByZW0oMikgcmVtKDQpIHJlbSgyKSAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hvaWNlcy1wcmltYXJ5LWNvbG9yO1xuICAgICAgICBib3JkZXI6IHJlbSgxKSBzb2xpZCBkYXJrZW4oJGNob2ljZXMtcHJpbWFyeS1jb2xvciwgNSUpO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICZbZGF0YS1kZWxldGFibGVdIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIFtkaXI9J3J0bCddICYge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSg0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaXMtaGlnaGxpZ2h0ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjaG9pY2VzLXByaW1hcnktY29sb3IsIDUlKTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkY2hvaWNlcy1wcmltYXJ5LWNvbG9yLCAxMCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmlzLWRpc2FibGVkICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjaG9pY2VzLWRpc2FibGVkLWNvbG9yLCAyNSUpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgZGFya2VuKCRjaG9pY2VzLWRpc2FibGVkLWNvbG9yLCAzNSUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2xpc3QtLWRyb3Bkb3duIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNob2ljZXMtYmctY29sb3ItZHJvcGRvd247XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNob2ljZXMta2V5bGluZS1jb2xvcjtcbiAgICB0b3A6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogcmVtKC0xKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOnJlbSg1KTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogcmVtKDUpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIHdpbGwtY2hhbmdlOiB2aXNpYmlsaXR5O1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gICAgLmlzLW9wZW4gJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRjaG9pY2VzLWtleWxpbmUtY29sb3IsIDE1JSk7XG4gICAgfVxuICAgIC5pcy1mbGlwcGVkICYge1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKC0xKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtKDQpIHJlbSg0KSAwIDA7XG4gICAgfVxuICAgIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fbGlzdCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWF4LWhlaWdodDogcmVtKDMwMCk7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIHdpbGwtY2hhbmdlOiBzY3JvbGwtcG9zaXRpb247XG4gICAgfVxuICAgIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogcmVtKDEwKTtcbiAgICAgICAgZm9udC1zaXplOiAkY2hvaWNlcy1mb250LXNpemUtbWQ7XG4gICAgICAgIFtkaXI9J3J0bCddICYge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pdGVtLS1zZWxlY3RhYmxlIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMTAwKTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAvLyAgICBjb250ZW50OiBhdHRyKGRhdGEtc2VsZWN0LXRleHQpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGNob2ljZXMtZm9udC1zaXplLXNtO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiByZW0oMTApO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgW2Rpcj0ncnRsJ10gJiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTAwKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMTApO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiByZW0oMTApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmlzLWhpZ2hsaWdodGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgjMDAwMDAwLCAjZmZmZmZmLCA1JSk7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pdGVtIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faXRlbS0tc2VsZWN0YWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0tLWRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9X19oZWFkaW5nIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogJGNob2ljZXMtZm9udC1zaXplLXNtO1xuICAgIHBhZGRpbmc6IHJlbSgxMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogcmVtKDEpIHNvbGlkIGxpZ2h0ZW4oJGNob2ljZXMta2V5bGluZS1jb2xvciwgMTAlKTtcbiAgICBjb2xvcjogbGlnaHRlbigjMzMzLCAzMCUpO1xufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2J1dHRvbiB7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hvaWNlcy1iZy1jb2xvcjtcbiAgICBmb250LXNpemU6ICRjaG9pY2VzLWZvbnQtc2l6ZS1tZDtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgfVxuICAgIFtkaXI9J3J0bCddICYge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG59XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fcGxhY2Vob2xkZXIge1xuICAgIG9wYWNpdHk6IDAuNTtcbn1cblxuLyo9PT09PSAgRW5kIG9mIENob2ljZXMgID09PT09PSovXG4iLCIvKiBGdW5jdGlvbmFsIHN0eWxpbmc7XG4gKiBUaGVzZSBzdHlsZXMgYXJlIHJlcXVpcmVkIGZvciBub1VpU2xpZGVyIHRvIGZ1bmN0aW9uLlxuICogWW91IGRvbid0IG5lZWQgdG8gY2hhbmdlIHRoZXNlIHJ1bGVzIHRvIGFwcGx5IHlvdXIgZGVzaWduLlxuICovXG4ubm9VaS10YXJnZXQsXG4ubm9VaS10YXJnZXQgKiB7XG5cdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHQtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuXHR0b3VjaC1hY3Rpb246IG5vbmU7XG5cdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5ub1VpLXRhcmdldCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5ub1VpLWJhc2UsXG4ubm9VaS1jb25uZWN0cyB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcbn1cbi8qIFdyYXBwZXIgZm9yIGFsbCBjb25uZWN0IGVsZW1lbnRzLlxuICovXG4ubm9VaS1jb25uZWN0cyB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHotaW5kZXg6IDA7XG59XG4ubm9VaS1jb25uZWN0LFxuLm5vVWktb3JpZ2luIHtcblx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAxO1xuXHR0b3A6IDA7XG5cdHJpZ2h0OiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHQtbXMtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuXHQtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcblx0LXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXHR0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG5cdHRyYW5zZm9ybS1zdHlsZTogZmxhdDtcbn1cbi8qIE9mZnNldCBkaXJlY3Rpb25cbiAqL1xuLm5vVWktdHh0LWRpci1ydGwubm9VaS1ob3Jpem9udGFsIC5ub1VpLW9yaWdpbiB7XG5cdGxlZnQ6IDA7XG5cdHJpZ2h0OiBhdXRvO1xufVxuLyogR2l2ZSBvcmlnaW5zIDAgaGVpZ2h0L3dpZHRoIHNvIHRoZXkgZG9uJ3QgaW50ZXJmZXJlIHdpdGggY2xpY2tpbmcgdGhlXG4gKiBjb25uZWN0IGVsZW1lbnRzLlxuICovXG4ubm9VaS12ZXJ0aWNhbCAubm9VaS1vcmlnaW4ge1xuXHR0b3A6IC0xMDAlO1xuXHR3aWR0aDogMDtcbn1cbi5ub1VpLWhvcml6b250YWwgLm5vVWktb3JpZ2luIHtcblx0aGVpZ2h0OiAwO1xufVxuLm5vVWktaGFuZGxlIHtcblx0YmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ubm9VaS10b3VjaC1hcmVhIHtcblx0aGVpZ2h0OiAxMDAlO1xuXHR3aWR0aDogMTAwJTtcbn1cbi5ub1VpLXN0YXRlLXRhcCAubm9VaS1jb25uZWN0LFxuLm5vVWktc3RhdGUtdGFwIC5ub1VpLW9yaWdpbiB7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xufVxuLm5vVWktc3RhdGUtZHJhZyAqIHtcblx0Y3Vyc29yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG4vKiBTbGlkZXIgc2l6ZSBhbmQgaGFuZGxlIHBsYWNlbWVudDtcbiAqL1xuLm5vVWktaG9yaXpvbnRhbCB7XG5cdGhlaWdodDogMThweDtcbn1cbi5ub1VpLWhvcml6b250YWwgLm5vVWktaGFuZGxlIHtcblx0d2lkdGg6IDM0cHg7XG5cdGhlaWdodDogMjhweDtcblx0cmlnaHQ6IC0xN3B4O1xuXHR0b3A6IC02cHg7XG59XG4ubm9VaS12ZXJ0aWNhbCB7XG5cdHdpZHRoOiAxOHB4O1xufVxuLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlIHtcblx0d2lkdGg6IDI4cHg7XG5cdGhlaWdodDogMzRweDtcblx0cmlnaHQ6IC02cHg7XG5cdGJvdHRvbTogLTE3cHg7XG59XG4ubm9VaS10eHQtZGlyLXJ0bC5ub1VpLWhvcml6b250YWwgLm5vVWktaGFuZGxlIHtcblx0bGVmdDogLTE3cHg7XG5cdHJpZ2h0OiBhdXRvO1xufVxuLyogU3R5bGluZztcbiAqIEdpdmluZyB0aGUgY29ubmVjdCBlbGVtZW50IGEgYm9yZGVyIHJhZGl1cyBjYXVzZXMgaXNzdWVzIHdpdGggdXNpbmcgdHJhbnNmb3JtOiBzY2FsZVxuICovXG4ubm9VaS10YXJnZXQge1xuXHRiYWNrZ3JvdW5kOiAjZmFmYWZhO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkICNkM2QzZDM7XG5cdGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCAjZjBmMGYwLCAwIDNweCA2cHggLTVweCAjYmJiO1xufVxuLm5vVWktY29ubmVjdHMge1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG59XG4ubm9VaS1jb25uZWN0IHtcblx0YmFja2dyb3VuZDogIzNmYjhhZjtcbn1cbi8qIEhhbmRsZXMgYW5kIGN1cnNvcnM7XG4gKi9cbi5ub1VpLWRyYWdnYWJsZSB7XG5cdGN1cnNvcjogZXctcmVzaXplO1xufVxuLm5vVWktdmVydGljYWwgLm5vVWktZHJhZ2dhYmxlIHtcblx0Y3Vyc29yOiBucy1yZXNpemU7XG59XG4ubm9VaS1oYW5kbGUge1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGJhY2tncm91bmQ6ICNmZmY7XG5cdGN1cnNvcjogZGVmYXVsdDtcblx0Ym94LXNoYWRvdzogaW5zZXQgMCAwIDFweCAjZmZmLCBpbnNldCAwIDFweCA3cHggI2ViZWJlYiwgMCAzcHggNnB4IC0zcHggI2JiYjtcbn1cbi5ub1VpLWFjdGl2ZSB7XG5cdGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggI2ZmZiwgaW5zZXQgMCAxcHggN3B4ICNkZGQsIDAgM3B4IDZweCAtM3B4ICNiYmI7XG59XG4vKiBIYW5kbGUgc3RyaXBlcztcbiAqL1xuLm5vVWktaGFuZGxlOmJlZm9yZSxcbi5ub1VpLWhhbmRsZTphZnRlciB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGhlaWdodDogMTRweDtcblx0d2lkdGg6IDFweDtcblx0YmFja2dyb3VuZDogI2U4ZTdlNjtcblx0bGVmdDogMTRweDtcblx0dG9wOiA2cHg7XG59XG4ubm9VaS1oYW5kbGU6YWZ0ZXIge1xuXHRsZWZ0OiAxN3B4O1xufVxuLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlOmJlZm9yZSxcbi5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZTphZnRlciB7XG5cdHdpZHRoOiAxNHB4O1xuXHRoZWlnaHQ6IDFweDtcblx0bGVmdDogNnB4O1xuXHR0b3A6IDE0cHg7XG59XG4ubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGU6YWZ0ZXIge1xuXHR0b3A6IDE3cHg7XG59XG4vKiBEaXNhYmxlZCBzdGF0ZTtcbiAqL1xuW2Rpc2FibGVkXSAubm9VaS1jb25uZWN0IHtcblx0YmFja2dyb3VuZDogI2I4YjhiODtcbn1cbltkaXNhYmxlZF0ubm9VaS10YXJnZXQsXG5bZGlzYWJsZWRdLm5vVWktaGFuZGxlLFxuW2Rpc2FibGVkXSAubm9VaS1oYW5kbGUge1xuXHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLyogQmFzZTtcbiAqXG4gKi9cbi5ub1VpLXBpcHMsXG4ubm9VaS1waXBzICoge1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLm5vVWktcGlwcyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Y29sb3I6ICM5OTk7XG59XG4vKiBWYWx1ZXM7XG4gKlxuICovXG4ubm9VaS12YWx1ZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm5vVWktdmFsdWUtc3ViIHtcblx0Y29sb3I6ICNjY2M7XG5cdGZvbnQtc2l6ZTogMTBweDtcbn1cbi8qIE1hcmtpbmdzO1xuICpcbiAqL1xuLm5vVWktbWFya2VyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRiYWNrZ3JvdW5kOiAjY2NjO1xufVxuLm5vVWktbWFya2VyLXN1YiB7XG5cdGJhY2tncm91bmQ6ICNhYWE7XG59XG4ubm9VaS1tYXJrZXItbGFyZ2Uge1xuXHRiYWNrZ3JvdW5kOiAjYWFhO1xufVxuLyogSG9yaXpvbnRhbCBsYXlvdXQ7XG4gKlxuICovXG4ubm9VaS1waXBzLWhvcml6b250YWwge1xuXHRwYWRkaW5nOiAxMHB4IDA7XG5cdGhlaWdodDogODBweDtcblx0dG9wOiAxMDAlO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcbn1cbi5ub1VpLXZhbHVlLWhvcml6b250YWwge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpO1xufVxuLm5vVWktcnRsIC5ub1VpLXZhbHVlLWhvcml6b250YWwge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDUwJSk7XG59XG4ubm9VaS1tYXJrZXItaG9yaXpvbnRhbC5ub1VpLW1hcmtlciB7XG5cdG1hcmdpbi1sZWZ0OiAtMXB4O1xuXHR3aWR0aDogMnB4O1xuXHRoZWlnaHQ6IDVweDtcbn1cbi5ub1VpLW1hcmtlci1ob3Jpem9udGFsLm5vVWktbWFya2VyLXN1YiB7XG5cdGhlaWdodDogMTBweDtcbn1cbi5ub1VpLW1hcmtlci1ob3Jpem9udGFsLm5vVWktbWFya2VyLWxhcmdlIHtcblx0aGVpZ2h0OiAxNXB4O1xufVxuLyogVmVydGljYWwgbGF5b3V0O1xuICpcbiAqL1xuLm5vVWktcGlwcy12ZXJ0aWNhbCB7XG5cdHBhZGRpbmc6IDAgMTBweDtcblx0aGVpZ2h0OiAxMDAlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDEwMCU7XG59XG4ubm9VaS12YWx1ZS12ZXJ0aWNhbCB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuXHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG59XG4ubm9VaS1ydGwgLm5vVWktdmFsdWUtdmVydGljYWwge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1MCUpO1xufVxuLm5vVWktbWFya2VyLXZlcnRpY2FsLm5vVWktbWFya2VyIHtcblx0d2lkdGg6IDVweDtcblx0aGVpZ2h0OiAycHg7XG5cdG1hcmdpbi10b3A6IC0xcHg7XG59XG4ubm9VaS1tYXJrZXItdmVydGljYWwubm9VaS1tYXJrZXItc3ViIHtcblx0d2lkdGg6IDEwcHg7XG59XG4ubm9VaS1tYXJrZXItdmVydGljYWwubm9VaS1tYXJrZXItbGFyZ2Uge1xuXHR3aWR0aDogMTVweDtcbn1cbi5ub1VpLXRvb2x0aXAge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGJhY2tncm91bmQ6ICNmZmY7XG5cdGNvbG9yOiAjMDAwO1xuXHRwYWRkaW5nOiA1cHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5ub1VpLWhvcml6b250YWwgLm5vVWktdG9vbHRpcCB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuXHRsZWZ0OiA1MCU7XG5cdGJvdHRvbTogMTIwJTtcbn1cbi5ub1VpLXZlcnRpY2FsIC5ub1VpLXRvb2x0aXAge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcblx0dG9wOiA1MCU7XG5cdHJpZ2h0OiAxMjAlO1xufVxuLm5vVWktaG9yaXpvbnRhbCAubm9VaS1vcmlnaW4gPiAubm9VaS10b29sdGlwIHtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwKTtcblx0bGVmdDogYXV0bztcblx0Ym90dG9tOiAxMHB4O1xufVxuLm5vVWktdmVydGljYWwgLm5vVWktb3JpZ2luID4gLm5vVWktdG9vbHRpcCB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xOHB4KTtcblx0dG9wOiBhdXRvO1xuXHRyaWdodDogMjhweDtcbn1cbiIsIi5xdWFudGl0eSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAvLyAgIHdpZHRoOiByZW0oODApO1xuICAgIGhlaWdodDogcmVtKDQ4KTtcbiAgICBwYWRkaW5nOiAwIHJlbSg0Nik7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICRpbnB1dC1zZWxlY3RvcjogXCJpbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPW51bWJlcl1cIjtcblxuICAgICN7JGlucHV0LXNlbGVjdG9yfSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBoZWlnaHQ6IHJlbSg0Nik7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtKDIwKTtcbiAgICAgICAgcGFkZGluZzogcmVtKDExKSAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyOiByZW0oMSkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyKHRyYW5zcGFyZW50KTtcblxuICAgICAgICAmOjotbXMtY2xlYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlcih0cmFuc3BhcmVudCk7XG5cbiAgICAgICAgfVxuXG5cbiAgICAgICAgJi5lcnJvciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHJlZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19idXR0b24ge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgd2lkdGg6IHJlbSg0Nik7XG4gICAgICAgIGhlaWdodDogcmVtKDQ2KTtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y1ZjVmNTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSA0cHgpO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLW1pbnVzIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1wbHVzIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi5icmVhZGNydW1iIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcvJztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSg0KTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZXktNDAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JleS00MDApO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICAgICAgfVxuXG4gICAgICAgICY6ZGlzYWJsZWQsXG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZXktNDAwKTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZXktNDAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2FjdGl2ZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMjEpO1xuXG4gICAgICAgICZfX2FjdGl2ZSB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oMzIwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIltkYXRhLXRhYnMtdGFyZ2V0XSB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG5cbi50YWJzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLSAxMHB4KTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzApO1xuICAgICAgICAgICAgei1pbmRleDogNTA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMjU1LDI1NSwyNTUsMC4xKSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwxKSAxMDAlKTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLnN3aXBlciB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcblxuICAgICAgICAmX19oZWFkZXIge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmX19oZWFkZXIge1xuXG4gICAgICAgICAgICAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcm93LWdhcDogcmVtKDgpO1xuICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IHJlbSg4KTtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XG5cbiAgICAgICAgICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgcm93LWdhcDogcmVtKDIwKTtcbiAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiByZW0oMTApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiW2RhdGEtY29sbGFwc2VdIHtcblxuICAgICYub3BlbiB7XG5cbiAgICAgICAgW2RhdGEtY29sbGFwc2UtY29udGVudF0ge1xuICAgICAgICB9XG5cbiAgICAgICAgW2RhdGEtY29sbGFwc2UtY29udHJvbF0ge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWNvbGxhcHNlLWNsb3NlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuW2RhdGEtY29sbGFwc2UtY29udGVudF0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbltkYXRhLWNvbGxhcHNlLWNvbnRyb2xdIHtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogYXR0cihkYXRhLWNvbGxhcHNlLW9wZW4pO1xuICAgIH1cbn1cbiIsIlxuXG5bZGF0YS1zcG9pbGVyXSB7XG5cblx0Ji5vcGVuIHtcblxuICAgICAgICAuc3BvaWxlciB7XG5cbiAgICAgICAgICAgICZfX2Fycm93IHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuM3M7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblx0fVxufVxuXG5bZGF0YS1zcG9pbGVyLWNvbnRyb2xdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbltkYXRhLXNwb2lsZXItY29udGVudF0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zcG9pbGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW0oMTApIDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHN0cm9rZTogJGJsYWNrO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuXG4gICAgJl9fYXJyb3cge1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IHJlbSg4KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjNzO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtKDI0KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbSgxMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyOCk7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuXG4gICAgICAgIHAge1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJbZGF0YS1kcm9wZG93bl0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYub3BlbiB7XG4gICAgICAgIHotaW5kZXg6IDUwO1xuXG4gICAgICAgIFtkYXRhLWRyb3Bkb3duLWNvbnRlbnRdIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5bZGF0YS1kcm9wZG93bi10b2dnbGVdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbltkYXRhLWRyb3Bkb3duLWNvbnRlbnRdIHtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiByZW0oNCk7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5kcm9wZG93biB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiA0cHggMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDBweCA2cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgfVxuXG4gICAgJl9fZ3JvdXAge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgcGFkZGluZzogNnB4IDIwcHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnJhdGluZyB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmX19ib2R5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICZfX2FjdGl2ZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmlsbDogZ29sZDtcbiAgICB9XG5cbiAgICAmX19zdGFycyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZpbGw6IGxpZ2h0Z3JleTtcbiAgICB9XG5cbiAgICAmX19zdGFyIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGhlaWdodDogcmVtKDI0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgICZfX2l0ZW1zIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGNvbG9yOiBnb2xkO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZsZXg6IDAgMCAyMCU7XG5cbiAgICB9XG5cbiAgICAmX192YWx1ZSB7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyNCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDEwKTtcbiAgICB9XG59XG5cbltkYXRhLXJhdGluZy1yZWFkb25seT0ndHJ1ZSddIHtcblxuICAgIC5yYXRpbmdfX2l0ZW0ge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxufVxuXG5cbi5zaW1wbGUtcmF0aW5nIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMCU7XG4gICAgICAgIGhlaWdodDogMCU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuICAgICZfX2xhYmVsIHtcbiAgICAgICAgY29sb3I6IGdvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDQwKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSg0MCk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zaXRpb246IC4zcztcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAn4piGJztcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbTpjaGVja2VkLFxuICAgICZfX2l0ZW06Y2hlY2tlZCB+IC5zaW1wbGUtcmF0aW5nX19sYWJlbCB7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJ+KYhSc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sYWJlbDpob3ZlcixcbiAgICAmX19sYWJlbDpob3ZlciB+IC5zaW1wbGUtcmF0aW5nX19sYWJlbCxcbiAgICAmX19sYWJlbDpjaGVja2VkIH4gLnNpbXBsZS1yYXRpbmdfX2xhYmVsOmhvdmVyIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAn4piFJztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIG1hcmdpbjogcmVtKDM2KSAwIDAgMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY29sdW1uLWdhcDogcmVtKDIwKTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJl9faXRlbSB7XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmV5LTYwMCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWN0aXZlIHtcbiAgICAgICAgd2lkdGg6IDQ4cHg7XG4gICAgICAgIGhlaWdodDogMzFweDtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oNCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvcGFnaW5hdGlvbl9hY3RpdmUuc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oNTYpO1xuXG4gICAgICAgICZfX2FjdGl2ZSB7XG4gICAgICAgICAgICB3aWR0aDogNTZweDtcbiAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19kaXZpZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSg0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgIH1cbn1cbiIsIi5wYWdlLW5hdiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiB2YXIoLS1ncmV5LTYwMCk7XG4gICAgc3Ryb2tlOiB2YXIoLS1ncmV5LTYwMCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgbGluZS1oZWlnaHQ6IHJlbSgxNik7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2x1bW4tZ2FwOiByZW0oOCk7XG4gICAgdHJhbnNpdGlvbjogLjI1cztcblxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogcmVtKDI0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICBzdHJva2U6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyNCk7XG4gICAgfVxufVxuIiwiLnJvb3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiByZW0oNDQpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSg5MCk7XG4gICAgICAgIHRyYW5zaXRpb246IC4ycztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTMwKTtcbiAgICB9XG59XG5cbi5pcy1zY3JvbGwge1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIC5yb290IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oNDIpO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjJzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuXG4gICAgICAgIC5yb290IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oNzgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFpbiB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICZfX2NvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmX19icmVhZGNydW1iIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19hc2lkZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JleSk7XG5cbiAgICAgICAgJjphZnRlcixcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDIwMDBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wYXR0ZXJuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzApO1xuICAgIH1cblxuICAgICZfX3JvdyB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9fYnJlYWRjcnVtYiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxNikgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3JvdyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMjApO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZW0oMTU3KSAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICAmX19hc2lkZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oMzApIHJlbSgyMCkgcmVtKDMwKSAwO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fcGF0dGVybiB7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgzMDIpO1xuICAgICAgICAgICAgcmlnaHQ6IHJlbSgxNik7XG4gICAgICAgICAgICB0b3A6IHJlbSg1NTApO1xuICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAgICAgJi0tdG9wIHtcbiAgICAgICAgICAgICAgICB0b3A6IHJlbSgyNTUpXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg0MCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9fYnJlYWRjcnVtYiB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oMjApIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19yb3cge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oNDgpO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZW0oMjQ3KSAxZnI7XG5cbiAgICAgICAgICAgICYtLXNtIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSg0MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oODApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcGF0dGVybiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDQ0Nik7XG4gICAgICAgICAgICByaWdodDogcmVtKDc1KTtcblxuICAgICAgICAgICAgJi0tdG9wIHtcbiAgICAgICAgICAgICAgICB0b3A6IHJlbSgxODYpXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zd2lwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLnNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiByZW0oMjApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzApO1xuXG4gICAgJi0tZ3JleSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZXkpO1xuICAgIH1cblxuICAgICYtLWJsdWUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1ibHVlKTtcbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuXG4gICAgJl9fbmF2IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcbiAgICB9XG5cbiAgICAmX19uYXYtc20tb25seSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgzMCk7XG4gICAgfVxuXG4gICAgJl9fbmF2LW1kLW9ubHkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICZfX25hdi14bC1vbmx5IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oNDApO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDQwKTtcblxuICAgICAgICAmX19uYXYge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IHJlbSgyNCk7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZ3JvdXAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX25hdi1zbS1vbmx5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19uYXYtbWQtb25seSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSg4MCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oODApO1xuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZ3JvdXAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDQwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX25hdi1tZC1vbmx5IHtcbiAgICAgIC8vICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX25hdi14bC1vbmx5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbmF2LWhpZGUteGwge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzIpO1xuXG4gICAgICAgICZfX2xlYWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMzKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRhZ2xpbmUge1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgIH1cbn1cblxuLnRleHQtYmxvY2sge1xuXG5cbiAgICBwIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgY29sdW1uLWdhcDogcmVtKDQwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKC0xNik7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saXN0LXBvaW50IHtcbiAgICBtYXJnaW46IDAgMCByZW0oMTIpIDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTgpO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IHJlbSg4KTtcbiAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLW1kIHtcblxuICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDI2KTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogcmVtKDEwKTtcbiAgICAgICAgICAgICAgICBsZWZ0OiByZW0oOCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDEyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLWxlZnQge1xuXG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxOCk7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi0tbWQge1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMTgpO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMzApO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiByZW0oMTEpO1xuICAgICAgICAgICAgICAgIGxlZnQ6IHJlbSgxMik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1sZWZ0IHtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDE4KTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1tZCB7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxOCk7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ncmVlbi1ib3gge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHBhZGRpbmc6IHJlbSgyMCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBwYWRkaW5nOiByZW0oMjApIHJlbSgzMCk7XG4gICAgfVxufVxuXG4ucm93LWdhcCB7XG4gICAgcm93LWdhcDogcmVtKDgpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICByb3ctZ2FwOiByZW0oMTIpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgcm93LWdhcDogcmVtKDIwKTtcbiAgICB9XG59XG5cbi5ob3dfaXRfd29ya3Mge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogcmVtKDc2Nik7XG59XG5cbi5kb3VibGUtYmxvY2sge1xuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG5cbiAgICAgICAgJi0tZ3JlZW4ge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAwMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmX19pdGVtIHtcblxuICAgICAgICAgICAgJi0tZ3JlZW4ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgyMCk7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyLFxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXdoaXRlIHtcblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDY2JSAzNCU7XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oMjApO1xuXG4gICAgICAgICAgICAmLS1ncmVlbiB7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLXdoaXRlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZW0oNzY3KSAxZnI7XG5cbiAgICAgICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSg0MCk7XG5cbiAgICAgICAgICAgICAgICAmLS13aGl0ZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2xpZGUtbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmxlYWQtbGluZSB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgyMCk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICB3aWR0aDogMzNweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgfVxufVxuXG4ubWFya2V0LWludHJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIHRvcDogcmVtKC0xMik7XG4gICAgICAgIGxlZnQ6IHJlbSgtMTA3KTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6IDIxM3B4O1xuICAgICAgICBmaWxsOiB3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg2MCk7XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgd2lkdGg6IDMzM3B4O1xuICAgICAgICAgICAgbGVmdDogcmVtKC0xMzApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgzOTIpO1xuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMTNweDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcmV0dHktbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgyNik7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9sZWFmLnN2Z1wiKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIGxpIHtcblxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDM2KTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2plY3QtdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgfVxufVxuXG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHt9XG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7fVxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge31cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHt9XG4iLCIuaGVhZGVyIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA5MDA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdoaXRlKTtcbiAgICBib3gtc2hhZG93OiAwcHggNHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4wNik7XG5cbiAgICAmX193cmFwIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IHJlbSgxMjApO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgaGVpZ2h0OiByZW0oNDQpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgICZfX3NlYXJjaC10b2dnbGUge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1ncmVlbik7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICZfX2J1cmdlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMjApO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICBzcGFuLFxuICAgICAgICAmOmFmdGVyLFxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICByaWdodDogMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4xNXM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNnB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSArIDRweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zZWFyY2gge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fbG5nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDQ4KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMjApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2J1cmdlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc2VhcmNoLXRvZ2dsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc2VhcmNoIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgzMzUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbG5nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSgyMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg2MCk7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xvZ28ge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyNjApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX25hdiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDU2NSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZWFkZXItbmF2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAuaGVhZGVyLW5hdl9fbGluayB7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaGVhZGVyLW5hdl9fc2Vjb25kIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuXG4gICAgICAgICAgICAuaGVhZGVyLW5hdl9fc2Vjb25kIHtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgaGVpZ2h0OiByZW0oNDIpO1xuICAgICAgLy8gIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zZWNvbmQge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMjEpO1xuICAgICAgICB3aWR0aDogcmVtKDI4MCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDRweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMDYpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGxpIHtcblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiByZW0oMjApO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0Y5RjlGOTtcblxuICAgICAgICAgICAgICAgID4gbGkge1xuXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxMCkgcmVtKDIwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxMCkgcmVtKDIwKSByZW0oMTApIHJlbSgzMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg3MCk7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuXG4gICAgICAgICZfX2l0ZW0ge1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgICAgICAgLmhlYWRlci1uYXZfX3NlY29uZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZWFkZXItbG5nIHtcbiAgICBmb250LXNpemU6IHJlbSgxMCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbSgxMyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtKDE0KTtcbiAgICB9XG59XG5cblxuLm5hdi1vcGVuIHtcblxuICAgIC5oZWFkZXJfX25hdiB7XG4gICAgICAgIHRyYW5zaXRpb246IC4zcztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgIC5oZWFkZXJfX2xheW91dCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlciB7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg4cHgpIHRyYW5zbGF0ZVgoMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpIHRyYW5zbGF0ZVgoMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlzLXNjcm9sbCB7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAuaGVhZGVyIHtcblxuICAgICAgICAgICAgJl9fbG9nbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgxOTQpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLW5hdl9fbGluayB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg3OCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmZvb3RlciB7XG4gICAgei1pbmRleDogNTA7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgyMCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuXG4gICAgJl9fcm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcm93LWdhcDogcmVtKDIwKTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiByZW0oMTEyKTtcbiAgICB9XG5cbiAgICAmX19hZGRyZXNzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcm93LWdhcDogcmVtKDQpO1xuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICByb3ctZ2FwOiByZW0oMTYpO1xuICAgIH1cblxuICAgICZfX3ByaW1hcnkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICByb3ctZ2FwOiByZW0oMTApO1xuICAgIH1cblxuICAgICZfX2NvbnRhY3RzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcm93LWdhcDogcmVtKDQpO1xuICAgIH1cblxuICAgICZfX2NvbnRhY3Qge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NlY29uZGFyeSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTYpO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JleS00MDApO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmV5LTQwMCk7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDM4KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgzOCk7XG5cbiAgICAgICAgJl9fcm93IHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbmZvIHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxNzIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICByb3ctZ2FwOiByZW0oNDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fcHJpbWFyeSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMjgpO1xuICAgICAgICB9XG4gICAgICAgICZfX2NvbnRhY3RzIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogcmVtKDIxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7fVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDQ2KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg0NCk7XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICByb3ctZ2FwOiByZW0oMzQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faW5mbyB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDI5NCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19sb2dvIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMTc2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRhY3RzIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzcyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5zZWFyY2gge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJl9faW5wdXQge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMCA0MHB4IDZweCAxMnB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdyZWVuKTtcbiAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIodmFyKC0tZ3JleS0yMDApKTtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyKHRyYW5zcGFyZW50KTtcblxuICAgICAgICAgICAgKyAuc2VhcmNoX19idXR0b24ge1xuICAgICAgICAgICAgICAgIHN0cm9rZTogdmFyKC0td2hpdGUpO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdpZHRoOiA1NnB4O1xuICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBzdHJva2U6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9zZWFyY2hfYnRuX19iYXNlLnN2Z1wiKSAxMDAlIDEwMCUgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3NlYXJjaF9idG5fX2hvdmVyLnN2Z1wiKSAxMDAlIDEwMCUgbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSAge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3NlYXJjaF9idG5fX2ZvY3VzZWQuc3ZnXCIpIDEwMCUgMTAwJSBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9faW5wdXQge1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyMCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDQwcHggMTBweCAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYnV0dG9uIHtcbiAgICAgICAgICAgIHdpZHRoOiA4MnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBzdHJva2U6IHZhcigtLWdyZWVuKSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLm1vYmlsZS1uYXYge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHRvcDogcmVtKDQ0KTtcbiAgICB6LWluZGV4OiA5NTA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgY29sb3I6IHZhcigtLXdoaXRlKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgcGFkZGluZzogcmVtKDIwKSByZW0oMTApIHJlbSg2MCkgcmVtKDEwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiAuMjVzO1xuXG4gICAgJl9fbWVudSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBsaSB7XG5cbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyNCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtKDkpIHJlbSgxNCk7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtKDE4KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNEVBMDMzO1xuXG4gICAgICAgICAgICAgICAgPiBsaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxMikgcmVtKDE0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gdWwge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWdyZXktMTAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6cmVtKDExKSByZW0oMjQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JleS0xMDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICM0Nzk5MkM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBsaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzpyZW0oMTEpIHJlbSgzMik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sbmcge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMjQpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IHJlbSg4KSByZW0oMTQpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ubmF2LW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAubW9iaWxlLW5hdiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgfVxuXG4gICAgLmhlYWRlcl9fc2VhcmNoLXRvZ2dsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuaGVhZGVyX19idXJnZXIge1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpIHRyYW5zbGF0ZVgoMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG5cbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpIHRyYW5zbGF0ZVgoMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG59XG4iLCIubW9iaWxlLXNlYXJjaCB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiByZW0oNDQpO1xuICAgIHotaW5kZXg6IDk1MDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBjb2xvcjogdmFyKC0td2hpdGUpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICBwYWRkaW5nOiByZW0oMjApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IC4yNXM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ubW9iaWxlLXNlYXJjaC1vcGVuIHtcblxuICAgIC5tb2JpbGUtc2VhcmNoIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICB9XG5cbiAgICAuaGVhZGVyX19idXJnZXIge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlcl9fc2VhcmNoLXRvZ2dsZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDFweCk7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxufVxuXG4uc2VhcmNoLWJsb2NrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBzdHJva2U6IHdoaXRlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJl9faW5wdXQge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgIHBhZGRpbmc6IDRweCA1MHB4IDRweCAzMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvc2VhcmNoX3doaXRlX2JvcmRlci5zdmdcIikgMTAwJSAxMDAlIG5vLXJlcGVhdDtcbiAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIod2hpdGUpO1xuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgQGluY2x1ZGUgcGxhY2Vob2xkZXIodHJhbnNwYXJlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fcmVzZXQge1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB6LWluZGV4OiAyMDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDEwcHgpO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBzdHJva2U6IHdoaXRlO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgfVxuXG4gICAgJi5maWxsZWQge1xuXG4gICAgICAgIC5zZWFyY2gtYmxvY2tfX3Jlc2V0IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmhlYWRpbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgZm9udC1zaXplOiByZW0oMjApO1xuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0oMjQpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEwKTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xuICAgICAvLyAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyMDAwKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgLy8gICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHdpZHRoOiAzMDAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9oZWFkaW5nX2xpbmVfc20uc3ZnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtLXNtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIsXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDI4KTtcblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgzMCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDIwKTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDM2KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaGVhZGluZ19saW5lX21kLnN2Z1wiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tc20ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgyNCk7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgxMCk7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyLFxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgzNik7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE1KTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDQwKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaGVhZGluZ19saW5lX3hsLnN2Z1wiKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tc20ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgzNik7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgxNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucHJvbW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogcmVtKDIwKTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNzI4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDk2MCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICByaWdodDogY2FsYyg1MCUgKyAxMHB4KTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IHJlbSgxNDAwKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDQwKSAwO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbSg2MTApO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDY5MCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX193cmFwIHtcblxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmRpcmVjdGlvbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IHJlbSg3MCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgIzAwMCAwJSwgcmdiYSgyMTcsIDIxNywgMjE3LCAwLjAwKSAxMDAlKTtcbiAgICAgICAgb3BhY2l0eTogMC4wNTtcbiAgICB9XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLnN3aXBlciB7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyMDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgd2lkdGg6IHJlbSg0MCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0oOTApO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEwKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWdyZWVuKTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgcGFkZGluZzogcmVtKDE2KSAwO1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgJl9fZm9vdGVyIHtcblxuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICBzdHJva2U6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmV5LTQwMCk7XG4gICAgICAgICAgICBzdHJva2U6IHZhcigtLWdyZXktNDAwKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDI0KTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0oNCk7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tYWluIHtcblxuICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0oMTAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xpbmsge1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg0MCk7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDY4MCk7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogMzQ3cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNTApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgxMzApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDQwKTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oNDApO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmNob29zZS11cyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXJvdy1nYXA6IHJlbSgyMCk7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMjApO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbSgyMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0td2hpdGUpO1xuICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgdmFyKC0tZ3JlZW4pO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIHdpZHRoOiByZW0oNDApO1xuICAgICAgICBoZWlnaHQ6IHJlbSg0MCk7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgyMCk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIG9wYWNpdHk6IC44O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDQwKSByZW0oMjApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSg2MCkgcmVtKDE0KSByZW0oNTQpIHJlbSgyNSk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDgwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDgwKTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIHJlbSg1MCkgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5taXNzaW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXJvdy1nYXA6IHJlbSgyMCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDIwKTtcbiAgICB9XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogcmVtKDE3MCk7XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgJi0tYWJvdXQge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMzAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTMwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3BhdHRlcm4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oNDApO1xuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjkyKTtcblxuICAgICAgICAgICAgJl9faW1hZ2Uge1xuXG4gICAgICAgICAgICAgICAgJi0tYWJvdXQge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDExMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTExMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX21lZGlhIHtcblxuICAgICAgICAgICAgJi0tYWJvdXQge1xuICAgICAgICAgICAgICAgIGhlaWdodDogcmVtKDM2MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZSB7XG5cbiAgICAgICAgICAgICYtLWFib3V0IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oNDApO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gcmVtKDU3MCk7XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMzkyKTtcblxuICAgICAgICAgICAgJi0tYWJvdXQge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICAmX19idXR0b24ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oODApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMik7XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3BhdHRlcm4ge1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGJvdHRvbTogcmVtKC0xMzApO1xuICAgICAgICAgICAgcmlnaHQ6IHJlbSg5MjYpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg0NjgpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJbZGF0YS1uZXdzXSB7XG5cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgd2lkdGg6IHJlbSgyMDApO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uZXdzLWl0ZW0ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgJi0tZ3JleSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZXkpO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtKDE2Mik7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbSgyMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmX19kYXRlIHtcbiAgICAgICAgY29sb3I6ICNBN0E3QTc7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwwLDAsMC42KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMztcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDI0KSByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZGF0ZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE0KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5ld3MtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1yb3ctZ2FwOiByZW0oMjApO1xuICAgIGdyaWQtY29sdW1uLWdhcDogcmVtKDIwKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oNDApO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge31cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHt9XG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7fVxuIiwiLmFib3V0LWNvdmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX19icmVhZGNydW1iIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiByZW0oMjApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1heC13aWR0aDogcmVtKDU2MCk7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiByZW0oMjApO1xuICAgICAgICAgICAgbGVmdDogcmVtKDIwKTtcbiAgICAgICAgICAgIGJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDYyKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsMjU1LDI1NSw5NSkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIGhlaWdodDogcmVtKDE3MCk7XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMzApO1xuICAgIH1cblxuICAgICZfX3RleHQge1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjQwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmX19icmVhZGNydW1iIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiByZW0oMjApIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNjg4KTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDk4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDI5Mik7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0oMjApO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg0MCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19oZWFkZXIge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyOCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg5MjApO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbSgxMjApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oNDAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgbWluLWhlaWdodDogcmVtKDY5MCk7XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgKyAxMHB4KTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogLTE2OHB4O1xuICAgICAgICAgICAgd2lkdGg6IDExOTlweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDQwKSAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNTcwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSg1Mik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTkyMHB4KSB7XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuXG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIud2hvIHtcblxuICAgICZfX2xlYWQge1xuXG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0oMTApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oMTApO1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgxMCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWdyZWVuKTtcbiAgICAgICAgcGFkZGluZzogcmVtKDEwKSByZW0oMTApIHJlbSg4KSByZW0oMTApO1xuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICB3aWR0aDogcmVtKDQwKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSgxNik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgICZfX2xlYWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLWdhcDogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDEwMCk7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oMjApIHJlbSg2KSByZW0oMTgpIHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNTApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAmX19sZWFkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgzMyk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICBncmlkLXJvdy1nYXA6IHJlbSg0MCk7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5kZWNpc2lvbnMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1yb3ctZ2FwOiByZW0oMTApO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogcmVtKDIwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY29sdW1uLWdhcDogcmVtKDIwKTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0KTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtKDIwKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjQpO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMjApO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQwLjElIDFmciA0MC4xJTtcblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgxNjYpO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fd3JhcCB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDM2MCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGluayB7XG5cbiAgICAgICAgICAgIHNwYW4gIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbSg0KTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTY2KTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVtKDM3MykgMWZyIHJlbSgzNzMpO1xuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDMwOSk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oNDApO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDMwOSk7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDEyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyAyNzYgLSA0MCVcblxuLy8gMzk1IC0gNTclXG4iLCIud2h5IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtcm93LWdhcDogcmVtKDgpO1xuICAgIGdyaWQtY29sdW1uLWdhcDogcmVtKDIwKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgyMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgd2lkdGg6IHJlbSgyMCk7XG4gICAgICAgIGhlaWdodDogcmVtKDIwKTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMTApO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDMwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gYXV0byBhdXRvO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0oMjQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDMwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDMwKTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgzOCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnI7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogaW5oZXJpdDtcbiAgICAgICAgZ3JpZC1hdXRvLWZsb3c6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtKDMwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0oMTIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSg0OCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucmVsaWFiaWxpdHkge1xuICAgIHBhZGRpbmc6IHJlbSgyMCk7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICZfX2ljb24ge1xuICAgICAgICB3aWR0aDogcmVtKDYwKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtKDMwKSBhdXRvO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgb3BhY2l0eTogLjc7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBwYWRkaW5nOiByZW0oNDApO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgyOTUpO1xuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgxMDApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDIwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuW2RhdGEtcmVsaWFiaWxpdHldIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICB3aWR0aDogcmVtKDIwMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMjApO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2lkZS1uYXYge1xuICAgIHotaW5kZXg6IDIwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogcmVtKDQwKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZXktNjAwKTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTApO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICByb3ctZ2FwOiByZW0oMjApO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgyOCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIHJlbSgxMCk7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIHJvdy1nYXA6IHJlbSgyNCk7XG5cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgzMik7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxNik7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucG9zdCB7XG5cbiAgICAmX19kYXRlIHtcbiAgICAgICAgY29sb3I6ICNBN0E3QTc7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEwKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbSgxNCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgfVxuXG4gICAgJl9fZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgIH1cblxuICAgICZfX2xlYWQge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTIpO1xuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgyMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGNvbHVtbi1nYXA6IHJlbSgyOCk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmX19kYXRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDI2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xlYWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDEwMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogcmVtKDEyMCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNDlweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvcG9zdF9sZWFkX3BhdHRlcm4uc3ZnXCIpIDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSg0MCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGVhZCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0oMTQ0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgyNjUpO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiAtMjNweDtcbiAgICAgICAgICAgICAgICByaWdodDogLTM4cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDI1NnB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTcycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIHBhZGRpbmc6IDAgMCAwIHJlbSgxNCk7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1ncmVlbik7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICZfX2xlYWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDIyKTtcbiAgICB9XG59XG5cbi5wb3N0LWltYWdlIHtcblxuICAgICZfX3hsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9fc20ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3hsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHt9XG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7fVxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge31cbiIsIi52aWRlby1ncm91cCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXJvdy1nYXA6IHJlbSgyMCk7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMjApO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBncmlkLXJvdy1nYXA6IHJlbSgzMCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogcmVtKDI0KTtcbiAgICB9XG59XG5cbi52aWRlby1pdGVtIHtcblxuICAgICZfX21lZGlhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAyM3B4KTtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMjNweCk7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0NnB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC40O1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDgpO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMTc4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgyNDgpO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDIwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7fVxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge31cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHt9XG4iLCIubWFudWFsLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDMyKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDU2KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjtcbiAgICB9XG59XG5cbi5tYW51YWwtaXRlbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiByZW0oMjQpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjOTE5MjkwO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogcmVtKDIwMCk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSgxMCk7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4yNXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDQyKSByZW0oMjQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtKDIwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi50YXNrLWJsb2NrIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogcmVtKDMwKSAwO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICB9XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IC00M3B4O1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB3aWR0aDogMjA3cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgZmlsbDogcmdiYSgyNTUsMjU1LDI1NSwwLjE1KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oNDApIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDc0Nik7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICB3aWR0aDogMzc0cHg7XG4gICAgICAgICAgICByaWdodDogLTY3cHg7XG4gICAgICAgICAgICBib3R0b206IC0xNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDM0MCk7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oODApIDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDQxNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmJlbmVmaXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgIGZpbGw6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgc3Ryb2tlOiB2YXIoLS1ncmVlbik7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgyMTApO1xuICAgICAgICBwYWRkaW5nOiByZW0oMzIpIHJlbSgxNikgcmVtKDYwKSByZW0oMTYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuXG4gICAgICAgICYtLWdyZXkge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JleSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB0b3A6IHJlbSgxNik7XG4gICAgICAgICAgICBsZWZ0OiByZW0oMTYpO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogMzNweDtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZmlsbDogdmFyKC0td2hpdGUpO1xuICAgICAgICAgICAgc3Ryb2tlOiB2YXIoLS13aGl0ZSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogLjI1cztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBvcGFjaXR5OiAuODtcbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgcmlnaHQ6IHJlbSgxNik7XG4gICAgICAgIGJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgd2lkdGg6IHJlbSg0MCk7XG4gICAgICAgIGhlaWdodDogcmVtKDQwKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICYtLWxlZnQge1xuICAgICAgICAgICAgbGVmdDogcmVtKDE2KTtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmF2IHtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE3cHgpO1xuICAgICAgICB6LWluZGV4OiAyMDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICYtLXByZXYge1xuICAgICAgICAgICAgbGVmdDogLTE3cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTdweDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDM0MCk7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oNTApIHJlbSgzMCkgcmVtKDgwKSByZW0oMzApO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgdG9wOiByZW0oMzApO1xuICAgICAgICAgICAgICAgIGxlZnQ6IHJlbSgzMCk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtLW1kIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0oMzYwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgcmlnaHQ6IHJlbSgzMCk7XG4gICAgICAgICAgICBib3R0b206IHJlbSgzMCk7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDgwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtKDgwKTtcblxuICAgICAgICAgICAgJi0tbGVmdCB7XG4gICAgICAgICAgICAgICAgbGVmdDogcmVtKDMwKTtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX25hdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuW2RhdGEtYmVuZWZpdF0ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gICAgLnN3aXBlciB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiByZW0oMjAwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDI3NSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLnN3aXBlciB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuW2RhdGEtYWR2YW50YWdlc10ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuXG5cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogcmVtKDIwMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyNzUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIC5zd2lwZXIge1xuXG4gICAgICAgIH1cblxuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnRvb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHJvdy1nYXA6IHJlbSgxNik7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgb3BhY2l0eTogLjg7XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oNjAwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIHJvdy1nYXA6IHJlbSgyMCk7XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge31cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBjb2x1bW4tZ2FwOiByZW0oNDApO1xuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg1NzApO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fd3JhcCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg0NDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0tcmV2ZXJzZSB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLm1hcmtldC1hZHZhbnRhZ2VzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBncmlkLXJvdy1nYXA6IHJlbSgxNik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAmX19jb250ZW50IHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDE2KTtcbiAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMTYpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMCk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogcmVtKDEwKTtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgfVxuXG4gICAgJl9faWNvbiB7XG4gICAgICAgIHdpZHRoOiByZW0oNDApO1xuICAgICAgICBtYXJnaW46IDAgYXV0byByZW0oMTIpIGF1dG87XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIG9wYWNpdHk6IC44O1xuICAgIH1cblxuICAgICZfX21lZGlhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcblxuICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uLWdhcDogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDQwKSByZW0oNDgpIHJlbSgzMCkgcmVtKDQ4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg4MCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSg0MCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIHJlbSg1NzApO1xuXG4gICAgICAgICZfX2NvbnRlbnQge1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgzMTIpO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDYwKSByZW0oMzApIHJlbSg0NikgcmVtKDMwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICAgICAgd2lkdGg6IDQ2OHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsZWZ0OiByZW0oLTI0MCk7XG4gICAgICAgICAgICBib3R0b206IHJlbSgtODApO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLmxldmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXJvdy1nYXA6IHJlbSgxMik7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cbiAgICAmX19zdGVwcyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0KTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmX19saW5lIHtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgbWFyZ2luOiAwIHJlbSg4KTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDQpO1xuICAgIH1cblxuICAgICZfX21lZGlhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcblxuICAgICAgICAmX19zdGVwcyB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGdyaWQtY29sdW1uLWdhcDogcmVtKDIwKTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAmX19saW5lIHtcbiAgICAgICAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIHJlbSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdGVwcyB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjQpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3dyYXAge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0oNTIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIHRvcDogLTI4cHg7XG4gICAgICAgICAgICByaWdodDogLTI4MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDMzNnB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1ncmVlbik7XG4gICAgICAgICAgICBvcGFjaXR5OiAuMjtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5kZWNpc2lvbi1ibG9jayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1yb3ctZ2FwOiByZW0oMjApO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9faGVhZGVyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBoZWlnaHQ6IHJlbSgxNzUpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgICAgICYtLXhsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wYXR0ZXJuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyOCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjkyKTtcblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSg0MCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZSB7XG5cbiAgICAgICAgICAgICYtLXNtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLS14bCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byByZW0oNTcwKTtcblxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgzMik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzYpO1xuICAgICAgICB9XG5cblxuICAgICAgICAmX190ZXh0IHtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDEyKTtcblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fcGF0dGVybiB7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgYm90dG9tOiByZW0oNTApO1xuICAgICAgICAgICAgbGVmdDogcmVtKC0yMTYpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg0NjgpO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi5hcHByb2FjaCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXJvdy1nYXA6IHJlbSgxNik7XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMTYpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBsaW5lLWhlaWdodDogMTQwJTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICB3aWR0aDogcmVtKDQwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMjApO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDUwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGdyaWQtcm93LWdhcDogcmVtKDMwKTtcbiAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oNDApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDcwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jb21wb25lbnRzIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xuICAgIH1cblxuICAgICZfX3ByaW1hcnkge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXJvdy1nYXA6IHJlbSgyMCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBiciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2Vjb25kYXJ5IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oMjApO1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBwYWRkaW5nOiByZW0oMTYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxOCk7XG5cbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiByZW0oNSk7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogcmVtKDgpO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ibGFjayk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgyMCk7XG5cbiAgICAgICAgICAgIHVsIHtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0oMjQpO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IHJlbSg0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG5cbiAgICAgICAgICAgIGJyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oNDApO1xuXG4gICAgICAgICZfX3ByaW1hcnkge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oNjApO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3NlY29uZGFyeSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSg0MCk7XG5cbiAgICAgICAgICAgIHVsIHtcblxuICAgICAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IHJlbSgxMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIuZmlsbGluZyB7XG5cbiAgICAmX19tZWRpYSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG5cbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgd2lkdGg6IHJlbSgxMzgpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9fbG9nbyB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDE1MCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDQwKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNzY4KTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWVkaWEge1xuICAgICAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiByZW0oMzEzKTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7fVxufVxuXG5bZGF0YS1maWxsaW5nXSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgd2lkdGg6IHJlbSgyMDApO1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgIH1cbn1cbiIsIi5mZWF0dXJlcy1pdGVtIHtcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgd2lkdGg6IHJlbSg0MCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMik7XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIG9wYWNpdHk6IC43O1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogcmVtKDE4KTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA5cHg7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2spO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oNzApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDEyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHt9XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge31cbn1cblxuW2RhdGEtZmVhdHVyZXNdIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICB3aWR0aDogcmVtKDIwMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyNzUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIudW5pdC1jb3ZlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9fYnJlYWRjcnVtYiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogcmVtKDIwKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbSg1NjApO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdW5pdF9saW5lYXIuc3ZnXCIpIDAgMCBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBoZWlnaHQ6IHJlbSgxNzApO1xuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDMwKTtcbiAgICB9XG5cbiAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgyNDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgICZfX2JyZWFkY3J1bWIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IHJlbSgyMCkgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg2ODgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjkyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDQwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDkyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg0MDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0oNTMwKTtcblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSArIDEwcHgpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTY4cHg7XG4gICAgICAgICAgICB3aWR0aDogMTE5OXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg1NzApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDM2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnVuaXQtbWVkaWEge1xuXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMCAzMHB4IDA7XG4gICAgcGFkZGluZzogMnB4O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNFOEY2RTQgMCUsICM1MUI0MkYgMTAwJSk7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBoZWlnaHQ6IDI0NHB4O1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IC41cztcbiAgICAgICAgcGFkZGluZzogMCAxcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICNFOEY2RTQgMCUsICM1MUI0MkYgMTAwJSk7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyN3B4IDAgMCAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAyN3B4IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIHBhZGRpbmc6IDRweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmciAxZnI7XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ2NnB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAycHg7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDM2MHB4O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC41cztcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHt9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQ5OHB4O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIudW5pdC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtcm93LWdhcDogcmVtKDIwKTtcbiAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSg0MCk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDQwKTtcblxuICAgICZfX21haW4ge1xuXG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pY29uIHtcbiAgICAgICAgd2lkdGg6IHJlbSg0MCk7XG4gICAgICAgIGhlaWdodDogcmVtKDQwKTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDEyKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg0MCk7XG5cbiAgICAgICAgJl9fdGV4dCB7XG5cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtKDIwKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciByZW0oMzkyKTtcblxuICAgICAgICAmX19pdGVtIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcblxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RleHQge1xuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIudW5pdC1kcmF3aW5ncyB7XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbSg4KSByZW0oMTYpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweCA4cHggMCAwO1xuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9fcGFnaW5hdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSg1KTtcbiAgICB9XG5cbiAgICAmX19uYXYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiA4NTVweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgY29sdW1uLWdhcDogcmVtKDE2KTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZXktMjAwKTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgxNCkgcmVtKDE2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3BhZ2luYXRpb24ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX25hdiB7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMTdweCk7XG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICAgICAmLS1wcmV2IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTZweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi0tbmV4dCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0xNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge31cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHt9XG59XG4iLCIuY2FwYWJpbGl0eSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXJvdy1nYXA6IHJlbSg4KTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICAgICZfX2xlYWQge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG5cbiAgICB9XG5cbiAgICAmX19pbmZvIHtcblxuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oOCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVtKDI3NCkgMWZyO1xuXG4gICAgICAgICZfX2xlYWQge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMjApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlbSgzNzQpIDFmcjtcblxuICAgICAgICAmX19sZWFkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbSg0MCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbSg0MCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc3BlY2lmaWNpdHkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiByZW0oMTYpO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IHJlbSgxMCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbSgxNCk7XG4gICAgbWluLWhlaWdodDogcmVtKDI0NSk7XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgxMCk7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICB3aWR0aDogMzNweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICBsZWZ0OiByZW0oMTYpO1xuICAgICAgICBib3R0b206IHJlbSgxNik7XG4gICAgICAgIHdpZHRoOiByZW0oNDApO1xuICAgICAgICBoZWlnaHQ6IHJlbSg0MCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbSgyMCk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgzMjApO1xuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgbGVmdDogcmVtKDIwKTtcbiAgICAgICAgICAgIGJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgICAgIHdpZHRoOiByZW0oODApO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oODApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0oMzYwKTtcbiAgICAgICAgcGFkZGluZzogcmVtKDQwKSByZW0oMjApO1xuICAgIH1cbn1cblxuW2RhdGEtc3BlY2lmaWNpdHldIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICB3aWR0aDogcmVtKDIwMCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IHJlbSgyNzUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge31cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnVuaXRzIHtcblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oOCk7XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBtYXJnaW46IHJlbSgxNikgMDtcblxuICAgICAgICAuc3dpcGVyIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDIwMCk7XG4gICAgICAgIH1cblxuICAgICAgICAuc3dpcGVyLXBhZ2luYXRpb24ge1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0oMTYpO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IHJlbSgzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgICAgICAgd2lkdGg6IDRweDtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZXktMjAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbSgyMCkgMDtcblxuICAgICAgICAgICAgLnN3aXBlci13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBncmlkLXJvdy1nYXA6IHJlbSgyMCk7XG4gICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW4tZ2FwOiByZW0oMjApO1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgzMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbSg0MCkgMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5lcnJvci1wYWdlIHtcbiAgICBwYWRkaW5nOiByZW0oOTApIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICBsaW5lLWhlaWdodDogMTUwJTtcblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNDApO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgcGFkZGluZzogMCByZW0oMjApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcblxuICAgICAgICAmX19oZWFkZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTUwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge31cbn1cbiIsIi5zZWFyY2gtcmVzdWx0IHtcblxuICAgICZfX21lc3NhZ2Uge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuXG4gICAgICAgICYtLWZvdW5kIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmV5LTYwMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oOCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIH1cblxuICAgICZfX2l0ZW0ge1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ3JleS02MDApO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTApO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAuMjVzO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0oMzApO1xuXG4gICAgICAgICZfX21lc3NhZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMjApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDMwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbSg0MCk7XG5cbiAgICAgICAgJl9fbWVzc2FnZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oNDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICBncmlkLXJvdy1nYXA6IHJlbSg0MCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucHJpbWFyeSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJl9fYnJlYWRjcnVtYiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogcmVtKDIwKTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbSg1NjApO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiByZW0oMTcwKTtcbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSgzMCk7XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19oZWFkZXIge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMjQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSgyNDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuXG4gICAgICAgICZfX2JyZWFkY3J1bWIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IHJlbSgyMCkgMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg2ODgpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMjkyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX21haW4ge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbSgyMCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDQwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2hlYWRlciB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI4KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190ZXh0IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMTgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuXG4gICAgICAgICZfX21lZGlhIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtKDkyMCk7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogcmVtKDEyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbWFnZSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbSg0MDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBtaW4taGVpZ2h0OiByZW0oNDc2KTtcblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogaW5oZXJpdDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSArIDEwcHgpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogNzEwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbSg1NzApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICAxNjQwcHgpIHtcblxuICAgICAgICAmX19oZWFkZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0oMzYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc3RhZ2VzIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDMwKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1ibHVlKTtcblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMzApO1xuICAgIH1cblxuICAgICZfX2JvZHkge1xuXG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg0MCk7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuXG4gICAgICAgICZfX2hlYWRpbmcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHsgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtKDgwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbSg4MCk7XG4gICAgfVxufVxuXG4uc3RhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ3JlZW4pO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ncmVlbik7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcblxuICAgICAgICAuc3RhZ2VfX2NvbnRlbnQge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZzogcmVtKDE2KSAwO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlbSgxMTIpIDFmcjtcbiAgICB9XG5cbiAgICAmX19pbmZvIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgfVxuXG4gICAgJl9fc3RlcCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBjb2xvcjogdmFyKC0tYmxhY2spO1xuICAgIH1cblxuICAgICZfX3RleHQge1xuXG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3R0b206IC0xMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmVlbik7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fd3JhcCB7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTYpO1xuICAgIH1cblxuICAgICZfX3BhdHRlcm4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYub3BlbiB7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcblxuICAgICAgICAmOmFmdGVyLFxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB3aWR0aDogMjAwMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RhZ2Uge1xuXG4gICAgICAgICAgICAmX19zdGVwIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2NvbnRlbnQge1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQtYmx1ZSk7XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgyMCk7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlbSgyMDApIDFmcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zdGVwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbGVmdDogMTgwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX193cmFwIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgcmVtKDIwKSByZW0oMjApIHJlbSgyMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLm9wZW4ge1xuXG4gICAgICAgICAgICAmOmFmdGVyLFxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG5cbiAgICAgICAgJl9faGVhZGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbSgyNikgcmVtKDQwKTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVtKDM0MCkgMWZyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3RlcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgzMik7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBsZWZ0OiAyNzBweDtcbiAgICAgICAgICAgICAgICBib3R0b206IC0xNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fd3JhcCB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oMTYpIHJlbSg4NikgcmVtKDU4KSByZW0oNDAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3BhdHRlcm4ge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB3aWR0aDogNDY4cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGZpbGw6IHdoaXRlO1xuICAgICAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zdGFnZS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGZvbnQtc2l6ZTogcmVtKDkpO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIGNvbG9yOiB2YXIoLS1ibGFjayk7XG4gICAgZ3JpZC1yb3ctZ2FwOiByZW0oMTYpO1xuICAgIGdyaWQtY29sdW1uLWdhcDogcmVtKDE2KTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG5cbiAgICAmX19pdGVtIHtcbiAgICAgICAgcGFkZGluZzogcmVtKDgpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgxMzQpO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI0OSwgMjQ5LCAyNDksIDAuNyk7XG5cbiAgICAgICAgJi0teGwge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ljb24ge1xuICAgICAgICB3aWR0aDogcmVtKDQwKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtKDgpIGF1dG87XG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIG9wYWNpdHk6IC44O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgICAgZ3JpZC1yb3ctZ2FwOiByZW0oMjApO1xuICAgICAgICBncmlkLWNvbHVtbi1nYXA6IHJlbSgyMCk7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmciAxZnIgMWZyO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtKDE2KTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IHJlbSgxNDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyIDFmcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgbWluLWhlaWdodDogcmVtKDI0Mik7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW0oMjgpIHJlbSgyMCk7XG5cbiAgICAgICAgICAgICYtLXhsIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0oMTk0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgd2lkdGg6IHJlbSg3MCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnByb2plY3Qge1xuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG4gICAgfVxuXG4gICAgJl9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBoZWlnaHQ6IHJlbSgxOTApO1xuICAgIH1cblxuICAgICZfX25hbWUge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbSg4KTtcbiAgICB9XG5cbiAgICAmX190ZXh0IHtcbiAgICAgICAgb3BhY2l0eTogLjk7XG4gICAgfVxuXG4gICAgJl9fbWVkaWEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9fbmF2IHtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE3cHgpO1xuICAgICAgICB6LWluZGV4OiAyMDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICYtLXByZXYge1xuICAgICAgICAgICAgbGVmdDogLTE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLS1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTZweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtKDgpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgY29sdW1uLWdhcDogcmVtKDE2KTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZXktMjAwKTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG5cbiAgICAgICAgJl9fbmFtZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbmF2IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHt9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGNvbHVtbi1nYXA6IHJlbSg2MCk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgJl9fbmFtZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTUwJTtcblxuICAgICAgICAgICAgLnByZXR0eS1saXN0IHtcblxuICAgICAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtKDU2MCk7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0oMzIwKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jb29raWUtb3ZlcmxheSB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHotaW5kZXg6IDEyMDA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHBhZGRpbmc6IHJlbSgyMCkgcmVtKDMwKTtcbn1cblxuLmNvb2tpZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiByZW0oNTAwKTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICBsaW5lLWhlaWdodDogcmVtKDIxcHgpO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdyZWVuKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAwIDMwcHggMDtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3KC0xMGRlZyk7XG4gICAgfVxuXG4gICAgJl9fbWFpbiB7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICBwYWRkaW5nOiByZW0oMjApIDQycHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDgpO1xuICAgIH1cblxuICAgICZfX3RleHQge1xuICAgICAgICBvcGFjaXR5OiAuNztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtKDIwKTtcbiAgICB9XG5cblxuICAgIC5idG4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0oMTEzNik7XG5cbiAgICAgICAgJl9fbWFpbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgY29sdW1uLWdhcDogcmVtKDQwKTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cblxuXG4gICAgICAgICZfX3RleHQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbSgxOCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuZW1iZWQtcmVzcG9uc2l2ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIC5lbWJlZF9yZXNwb25zaXZlX2l0ZW0sXG4gICAgaWZyYW1lLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCxcbiAgICB2aWRlbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG59XG5cbi5lbWJlZC1yZXNwb25zaXZlXzIxYnk5IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSg5IC8gMjEpO1xuICAgIH1cbn1cblxuLmVtYmVkLXJlc3BvbnNpdmVfMTZieTkge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDkgLyAxNik7XG4gICAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZV80YnkzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgzIC8gNCk7XG4gICAgfVxufVxuXG4uZW1iZWQtcmVzcG9uc2l2ZV8xYnkxIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgxIC8gMSk7XG4gICAgfVxufVxuXG4uaW1nLWZsdWlkIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uaW1nLWNvdmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXG4gICAgJi0tYm90dG9tIHtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICAgIH1cbn1cblxuLmltZy1jb250YWluIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbi5pY28tc3ZnIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4uaGlkZSB7XG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLy8gVmlzdWFsbHkgaGlkZGVuXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgIEBpbmNsdWRlIHZpc3VhbGx5LWhpZGRlbigpO1xufVxuXG4vLyBBbGlnbm1lbnRcblxuLnRleHQtbGVmdCAgICAgIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4udGV4dC1jZW50ZXIgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuLnRleHQtcmlnaHQgICAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuLnRleHQtanVzdGlmeSAgIHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4udGV4dC1ub3dyYXAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7IH1cblxuXG4vLyBUcmFuc2Zvcm1hdGlvblxuXG4udGV4dC1sb3dlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC11cHBlcmNhc2UgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG4udGV4dC1jYXBpdGFsaXplIHsgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDsgfVxuXG4ubWItMCBcdFx0XHQgeyBtYXJnaW4tYm90dG9tOiAwcHggIWltcG9ydGFudDsgfVxuLm1iLTEwIFx0XHRcdCB7IG1hcmdpbi1ib3R0b206IHNpemUtcmVsKDEwcHgpICFpbXBvcnRhbnQ7IH1cbi5tYi0yMCBcdFx0XHQgeyBtYXJnaW4tYm90dG9tOiBzaXplLXJlbCgyMHB4KSAhaW1wb3J0YW50OyB9XG4ubWItMzAgXHRcdFx0IHsgbWFyZ2luLWJvdHRvbTogc2l6ZS1yZWwoMzBweCkgIWltcG9ydGFudDsgfVxuLm1iLTQwIFx0XHRcdCB7IG1hcmdpbi1ib3R0b206IHNpemUtcmVsKDQwcHgpICFpbXBvcnRhbnQ7IH1cbi5tYi01MCBcdFx0XHQgeyBtYXJnaW4tYm90dG9tOiBzaXplLXJlbCg1MHB4KSAhaW1wb3J0YW50OyB9XG4ubWItNjAgXHRcdFx0IHsgbWFyZ2luLWJvdHRvbTogc2l6ZS1yZWwoNjBweCkgIWltcG9ydGFudDsgfVxuXG4ubWItMSB7IG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuLm1iLTE1IHsgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbi5tYi0yIHsgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4ubWItMjUgeyBtYXJnaW4tYm90dG9tOiAyLjVyZW0gIWltcG9ydGFudDsgfVxuLm1iLTMgeyBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbi5tYi0zNSB7IG1hcmdpbi1ib3R0b206IDMuNXJlbSAhaW1wb3J0YW50OyB9XG4ubWItNCB7IG1hcmdpbi1ib3R0b206IDRyZW0gIWltcG9ydGFudDsgfVxuXG4uZC1mbGV4IHsgZGlzcGxheTogZmxleDt9XG4uYWxpZ24tY2VudGVyIHsgYWxpZ24taXRlbXM6IGNlbnRlcjt9XG4uYWxpZ24tc3RhcnQgeyBhbGlnbi1pdGVtczogZmxleC1zdGFydDt9XG4uYWxpZ24tZW5kIHsgYWxpZ24taXRlbXM6IGZsZXgtZW5kO31cbi5qdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbiB9O1xuLmp1c3RpZnktY29udGVudC1zdGFydCB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCB9O1xuLmp1c3RpZnktY29udGVudC1lbmQgeyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kIH07XG4uanVzdGlmeS1jb250ZW50LWNlbnRlciB7IGp1c3RpZnktY29udGVudDogY2VudGVyIH07XG5cbi5vdmVyZmxvdy1oaWRkZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb2xvci1ncmVlbiB7XG4gICAgY29sb3I6IHZhcigtLWdyZWVuKTtcbn1cblxuLmhpZGUtc20ge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FDMERBLEFBQUEsS0FBSyxDQUFDO0VBQ0YsY0FBYyxDQUFBLG1DQUFDO0VBQ2YsZ0JBQWdCLENBQUEsaUNBQUM7RUFFakIsT0FBTyxDQUFBLHVCQUFDO0VBQ1IsT0FBTyxDQUFBLHVCQUFDO0VBQ1IsT0FBTyxDQUFBLHVCQUFDO0VBQ1IsV0FBVyxDQUFBLG1CQUFDO0VBQ1osTUFBTSxDQUFBLHdCQUFDO0VBQ1AsU0FBUyxDQUFBLHFCQUFDO0VBQ1YsVUFBVSxDQUFBLG9CQUFDO0VBQ1gsVUFBVSxDQUFBLG9CQUFDO0VBQ1gsVUFBVSxDQUFBLG9CQUFDO0VBQ1gsVUFBVSxDQUFBLG9CQUFDO0VBQ1gsVUFBVSxDQUFBLG9CQUFDO0VBQ1gsVUFBVSxDQUFBLG9CQUFDO0VBQ1gsTUFBTSxDQUFBLHdCQUFDO0VBQ1AsWUFBWSxDQUFBLGtCQUFDO0VBRWIsZ0JBQWdCLENBQUEsV0FBQztFQUNqQixrQkFBa0IsQ0FBQSxRQUFDO0NBQ3RCOztBUy9FRDs7Ozs7Ozs7OztHQVVHO0FBSUQsVUFBVTtFQUNSLFdBQVcsRUFBRSxjQUFjO0VBQzNCLEdB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QXhEM0MsV0FBVyxFQUFtQixHQUFnQjtHQTBEekI7RUFGRCxBQUFBLFlBQVksQ0FBVztJQXhEM0MsV0FBVyxFQUFtQixTQUFnQjtHQTBEekI7RUFGRCxBQUFBLFlBQVksQ0FBVztJQXhEM0MsV0FBVyxFQUFtQixTQUFnQjtHQTBEekI7RUFGRCxBQUFBLFlBQVksQ0FBVztJQXhEM0MsV0FBVyxFQUFtQixHQUFnQjtHQTBEekI7RUFGRCxBQUFBLGFBQWEsQ0FBVTtJQXhEM0MsV0FBVyxFQUFtQixTQUFnQjtHQTBEekI7RUFGRCxBQUFBLGFBQWEsQ0FBVTtJQXhEM0MsV0FBVyxFQUFtQixTQUFnQjtHQTBEekI7RUFTVCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLEVBQUM7R0FDakI7RUFFRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLEVBQUM7R0FDakI7RUFSRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLFFBQUM7R0FDakI7RUFFRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLFFBQUM7R0FDakI7RUFSRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLE9BQUM7R0FDakI7RUFFRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLE9BQUM7R0FDakI7RUFSRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLEtBQUM7R0FDakI7RUFFRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLEtBQUM7R0FDakI7RUFSRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLE9BQUM7R0FDakI7RUFFRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFBLE9BQUM7R0FDakI7RUFSRCxBQUFBLE9BQU87RUFDUCxRQUFRLENBQWE7SUFDakIsYUFBYSxDQUFB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LENBQVc7SUF4RDNDLFdBQVcsRUFBbUIsR0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxZQUFZLENBQVc7SUF4RDNDLFdBQVcsRUFBbUIsU0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxZQUFZLENBQVc7SUF4RDNDLFdBQVcsRUFBbUIsU0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxZQUFZLENBQVc7SUF4RDNDLFdBQVcsRUFBbUIsR0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxZQUFZLENBQVc7SUF4RDNDLFdBQVcsRUFBbUIsU0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxZQUFZLENBQVc7SUF4RDNDLFdBQVcsRUFBbUIsU0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxZQUFZLENBQVc7SUF4RDNDLFdBQVcsRUFBbUIsR0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxhQUFhLENBQVU7SUF4RDNDLFdBQVcsRUFBbUIsU0FBZ0I7R0EwRHpCO0VBRkQsQUFBQSxhQUFhLENBQVU7SUF4RDNDLFdBQVcsRUFBbUIsU0FBZ0I7R0EwRHpCO0VBU1QsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxFQUFDO0dBQ2pCO0VBRUQsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxFQUFDO0dBQ2pCO0VBUkQsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxRQUFDO0dBQ2pCO0VBRUQsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxRQUFDO0dBQ2pCO0VBUkQsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxPQUFDO0dBQ2pCO0VBRUQsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxPQUFDO0dBQ2pCO0VBUkQsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxLQUFDO0dBQ2pCO0VBRUQsQUFBQSxPQUFPO0VBQ1AsUUFBUSxDQUFhO0lBQ2pCLGFBQWEsQ0FBQSxLQUFDO0dBQ2pC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 */
