@charset "UTF-8";
/*
==========================================================================
    Import all SCSS parts here
==========================================================================
*/
/*
==========================================================================
	Mixins
==========================================================================
*/
/*
==========================================================================
    Variables
==========================================================================
*/
:root,
:root[data-theme=light] {
  --col-prim-hsl: 28deg, 97%, 52%;
  --col-prim: hsl(var(--col-prim-hsl));
  --col-prim-hex: #fb7d0f;
  --col-sec-hsl: 177deg, 57%, 42%;
  --col-sec: hsl(var(--col-sec-hsl));
  --col-sec-hex: #2eaaa3;
  --col-tert-hsl: 355deg, 98%, 74%;
  --col-tert: hsl(var(--col-tert-hsl));
  --col-tert-hex: #fe7c87;
  --col-quat-hsl: 200deg, 15%, 15%;
  --col-quat: hsl(var(--col-quat-hsl));
  --col-quat-hex: #21282c;
  --col-text-hsl: 200deg, 15%, 15%;
  --col-text: hsl(var(--col-text-hsl));
  --col-text-dark: hsl(200, 15%, 7.5%);
  --col-text-x-dark: #000;
  --col-text-light: hsl(200, 10%, 40%);
  --col-text-x-light: hsl(200, 5%, 60%);
  --col-grey: hsl(200, 5%, 85%);
  --col-grey-dark: hsl(200, 5%, 80%);
  --col-grey-x-dark: hsl(200, 5%, 75%);
  --col-grey-light: hsl(200, 5%, 90%);
  --col-grey-x-light: hsl(200, 5%, 95%);
  --col-body-bg-hsl: 0deg, 0%, 100%;
  --col-body-bg: hsl(var(--col-body-bg-hsl));
  --col-menu-bar-bg: var(--col-grey-light);
  --col-error: Tomato;
  --col-warning: Orange;
  --col-success: #00b900;
  --col-twitter: #000;
  --col-facebook: #2172f0;
  --col-linkedin: #0077b5;
  --col-google: #dd4b39;
  --col-youtube: #ff0000;
  --col-vimeo: #0faef1;
  --col-instagram: #405de6;
  --col-whatsapp: #25d366;
  --col-pinterest: #bd081c;
  --col-dropbox: #007ee5;
  --col-paypal: #0070ba;
  --col-tripadvisor: #34e0a1;
  --col-trustpilot: #00aa6c;
  --col-tiktok: #fe2c55;
}

:root {
  --font-prim: "Epilogue", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif;
  --font-sec: var(--font-prim);
  --font-path: "../fonts";
  --font-size: max(16px, 1vw);
  --container-side-spacing: Max(10vw, 1em);
  --x-small-spacing: Max(3vw, 2em);
  --small-spacing: Max(4vw, 2.5em);
  --medium-spacing: Max(6vw, 3em);
  --default-spacing: Max(8vw, 4em);
  --large-spacing: Max(10vw, 5em);
  --x-large-spacing: Max(12vw, 6em);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[dir="ltr"] .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child{
  margin-left: var(--swiper-centered-offset-before);
}

[dir="rtl"] .swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child{
  margin-right: var(--swiper-centered-offset-before);
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.swiper-button-next:after, .swiper-button-prev:after {
  text-transform: none !important;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: 44px;
  font-size: var(--swiper-navigation-size);
  letter-spacing: 0;
  -webkit-font-feature-settings: ;
          font-feature-settings: ;
  font-variant: normal;
  font-variant: initial;
  line-height: 1;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.swiper-cube {
  overflow: visible;
}

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

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

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

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

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

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

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

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

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

.swiper-flip {
  overflow: visible;
}

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

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

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

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

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

.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  -webkit-transform-origin: center bottom;
          transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

/* required styles */
.leaflet-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-container,
.leaflet-pane > svg,
.leaflet-pane > canvas,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position: absolute;
  left: 0;
  top: 0;
}

.leaflet-container {
  overflow: hidden;
}

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
  -webkit-user-drag: none;
}

/* Safari renders non-retina tile on retina better with this, but Chrome is worse */
.leaflet-safari .leaflet-tile {
  image-rendering: -webkit-optimize-contrast;
}

/* hack that prevents hw layers "stretching" when loading new tiles */
.leaflet-safari .leaflet-tile-container {
  width: 1600px;
  height: 1600px;
  -webkit-transform-origin: 0 0;
}

.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
}

/* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
/* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container .leaflet-overlay-pane svg,
.leaflet-container .leaflet-marker-pane img,
.leaflet-container .leaflet-shadow-pane img,
.leaflet-container .leaflet-tile-pane img,
.leaflet-container img.leaflet-image-layer {
  max-width: none !important;
  max-height: none !important;
}

.leaflet-container.leaflet-touch-zoom {
  touch-action: pan-x pan-y;
}

.leaflet-container.leaflet-touch-drag {
  /* Fallback for FF which doesn't support pinch-zoom */
  touch-action: none;
  touch-action: pinch-zoom;
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
  touch-action: none;
}

.leaflet-container {
  -webkit-tap-highlight-color: transparent;
}

.leaflet-container a {
  -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
}

.leaflet-tile {
  -webkit-filter: inherit;
          filter: inherit;
  visibility: hidden;
}

.leaflet-tile-loaded {
  visibility: inherit;
}

.leaflet-zoom-box {
  width: 0;
  height: 0;
  box-sizing: border-box;
  z-index: 800;
}

/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg {
  -moz-user-select: none;
}

.leaflet-pane {
  z-index: 400;
}

.leaflet-tile-pane {
  z-index: 200;
}

.leaflet-overlay-pane {
  z-index: 400;
}

.leaflet-shadow-pane {
  z-index: 500;
}

.leaflet-marker-pane {
  z-index: 600;
}

.leaflet-tooltip-pane {
  z-index: 650;
}

.leaflet-popup-pane {
  z-index: 700;
}

.leaflet-map-pane canvas {
  z-index: 100;
}

.leaflet-map-pane svg {
  z-index: 200;
}

.leaflet-vml-shape {
  width: 1px;
  height: 1px;
}

.lvml {
  behavior: url(#default#VML);
  display: inline-block;
  position: absolute;
}

/* control positioning */
.leaflet-control {
  position: relative;
  z-index: 800;
  pointer-events: visiblePainted;
  /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

.leaflet-top,
.leaflet-bottom {
  position: absolute;
  z-index: 1000;
  pointer-events: none;
}

.leaflet-top {
  top: 0;
}

.leaflet-right {
  right: 0;
}

.leaflet-bottom {
  bottom: 0;
}

.leaflet-left {
  left: 0;
}

.leaflet-control {
  float: left;
  clear: both;
}

.leaflet-right .leaflet-control {
  float: right;
}

.leaflet-top .leaflet-control {
  margin-top: 10px;
}

.leaflet-bottom .leaflet-control {
  margin-bottom: 10px;
}

.leaflet-left .leaflet-control {
  margin-left: 10px;
}

.leaflet-right .leaflet-control {
  margin-right: 10px;
}

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile {
  will-change: opacity;
}

.leaflet-fade-anim .leaflet-popup {
  opacity: 0;
  transition: opacity 0.2s linear;
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
  opacity: 1;
}

.leaflet-zoom-animated {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  will-change: transform;
}

.leaflet-zoom-anim .leaflet-zoom-animated {
  transition: -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1);
  transition: transform 0.25s cubic-bezier(0, 0, 0.25, 1), -webkit-transform 0.25s cubic-bezier(0, 0, 0.25, 1);
}

.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile {
  transition: none;
}

.leaflet-zoom-anim .leaflet-zoom-hide {
  visibility: hidden;
}

/* cursors */
.leaflet-interactive {
  cursor: pointer;
}

.leaflet-grab {
  cursor: -moz-grab;
}

.leaflet-crosshair,
.leaflet-crosshair .leaflet-interactive {
  cursor: crosshair;
}

.leaflet-popup-pane,
.leaflet-control {
  cursor: auto;
}

.leaflet-dragging .leaflet-grab,
.leaflet-dragging .leaflet-grab .leaflet-interactive,
.leaflet-dragging .leaflet-marker-draggable {
  cursor: move;
  cursor: -moz-grabbing;
}

/* marker & overlays interactivity */
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-image-layer,
.leaflet-pane > svg path,
.leaflet-tile-container {
  pointer-events: none;
}

.leaflet-marker-icon.leaflet-interactive,
.leaflet-image-layer.leaflet-interactive,
.leaflet-pane > svg path.leaflet-interactive {
  pointer-events: visiblePainted;
  /* IE 9-10 doesn't have auto */
  pointer-events: auto;
}

/* visual tweaks */
.leaflet-container {
  background: #ddd;
  outline: 0;
}

.leaflet-container a {
  color: #0078A8;
}

.leaflet-container a.leaflet-active {
  outline: 2px solid orange;
}

.leaflet-zoom-box {
  border: 2px dotted #38f;
  background: rgba(255, 255, 255, 0.5);
}

/* general typography */
.leaflet-container {
  font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
}

/* general toolbar styles */
.leaflet-bar {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.65);
  border-radius: 4px;
}

.leaflet-bar a,
.leaflet-bar a:hover {
  background-color: #fff;
  border-bottom: 1px solid #ccc;
  width: 26px;
  height: 26px;
  line-height: 26px;
  display: block;
  text-align: center;
  text-decoration: none;
  color: black;
}

.leaflet-bar a,
.leaflet-control-layers-toggle {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  display: block;
}

.leaflet-bar a:hover {
  background-color: #f4f4f4;
}

.leaflet-bar a:first-child {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.leaflet-bar a:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom: none;
}

.leaflet-bar a.leaflet-disabled {
  cursor: default;
  background-color: #f4f4f4;
  color: #bbb;
}

.leaflet-touch .leaflet-bar a {
  width: 30px;
  height: 30px;
  line-height: 30px;
}

.leaflet-touch .leaflet-bar a:first-child {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.leaflet-touch .leaflet-bar a:last-child {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

/* zoom control */
.leaflet-control-zoom-in,
.leaflet-control-zoom-out {
  font: bold 18px "Lucida Console", Monaco, monospace;
  text-indent: 1px;
}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
  font-size: 22px;
}

/* layers control */
.leaflet-control-layers {
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.4);
  background: #fff;
  border-radius: 5px;
}

.leaflet-control-layers-toggle {
  background-image: url(images/layers.png);
  width: 36px;
  height: 36px;
}

.leaflet-retina .leaflet-control-layers-toggle {
  background-image: url(images/layers-2x.png);
  background-size: 26px 26px;
}

.leaflet-touch .leaflet-control-layers-toggle {
  width: 44px;
  height: 44px;
}

.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display: none;
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
  display: block;
  position: relative;
}

.leaflet-control-layers-expanded {
  padding: 6px 10px 6px 6px;
  color: #333;
  background: #fff;
}

.leaflet-control-layers-scrollbar {
  overflow-y: scroll;
  overflow-x: hidden;
  padding-right: 5px;
}

.leaflet-control-layers-selector {
  margin-top: 2px;
  position: relative;
  top: 1px;
}

.leaflet-control-layers label {
  display: block;
}

.leaflet-control-layers-separator {
  height: 0;
  border-top: 1px solid #ddd;
  margin: 5px -10px 5px -6px;
}

/* Default icon URLs */
.leaflet-default-icon-path {
  background-image: url(images/marker-icon.png);
}

/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution {
  background: #fff;
  background: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.leaflet-control-attribution,
.leaflet-control-scale-line {
  padding: 0 5px;
  color: #333;
}

.leaflet-control-attribution a {
  text-decoration: none;
}

.leaflet-control-attribution a:hover {
  text-decoration: underline;
}

.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale {
  font-size: 11px;
}

.leaflet-left .leaflet-control-scale {
  margin-left: 5px;
}

.leaflet-bottom .leaflet-control-scale {
  margin-bottom: 5px;
}

.leaflet-control-scale-line {
  border: 2px solid #777;
  border-top: none;
  line-height: 1.1;
  padding: 2px 5px 1px;
  font-size: 11px;
  white-space: nowrap;
  overflow: hidden;
  box-sizing: border-box;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
}

.leaflet-control-scale-line:not(:first-child) {
  border-top: 2px solid #777;
  border-bottom: none;
  margin-top: -2px;
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
  border-bottom: 2px solid #777;
}

.leaflet-touch .leaflet-control-attribution,
.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  box-shadow: none;
}

.leaflet-touch .leaflet-control-layers,
.leaflet-touch .leaflet-bar {
  border: 2px solid rgba(0, 0, 0, 0.2);
  background-clip: padding-box;
}

/* popup */
.leaflet-popup {
  position: absolute;
  text-align: center;
  margin-bottom: 20px;
}

.leaflet-popup-content-wrapper {
  padding: 1px;
  text-align: left;
  border-radius: 12px;
}

.leaflet-popup-content {
  margin: 13px 19px;
  line-height: 1.4;
}

.leaflet-popup-content p, .leaflet-popup-content .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .leaflet-popup-content .gsection_description {
  margin: 18px 0;
}

.leaflet-popup-tip-container {
  width: 40px;
  height: 20px;
  position: absolute;
  left: 50%;
  margin-left: -20px;
  overflow: hidden;
  pointer-events: none;
}

.leaflet-popup-tip {
  width: 17px;
  height: 17px;
  padding: 1px;
  margin: -10px auto 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip {
  background: white;
  color: #333;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-container a.leaflet-popup-close-button {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4px 4px 0 0;
  border: none;
  text-align: center;
  width: 18px;
  height: 14px;
  font: 16px/14px Tahoma, Verdana, sans-serif;
  color: #c3c3c3;
  text-decoration: none;
  font-weight: bold;
  background: transparent;
}

.leaflet-container a.leaflet-popup-close-button:hover {
  color: #999;
}

.leaflet-popup-scrolled {
  overflow: auto;
  border-bottom: 1px solid #ddd;
  border-top: 1px solid #ddd;
}

.leaflet-oldie .leaflet-popup-content-wrapper {
  zoom: 1;
}

.leaflet-oldie .leaflet-popup-tip {
  width: 24px;
  margin: 0 auto;
  -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
  filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
}

.leaflet-oldie .leaflet-popup-tip-container {
  margin-top: -1px;
}

.leaflet-oldie .leaflet-control-zoom,
.leaflet-oldie .leaflet-control-layers,
.leaflet-oldie .leaflet-popup-content-wrapper,
.leaflet-oldie .leaflet-popup-tip {
  border: 1px solid #999;
}

/* div icon */
.leaflet-div-icon {
  background: #fff;
  border: 1px solid #666;
}

/* Tooltip */
/* Base styles for the element that has a tooltip */
.leaflet-tooltip {
  position: absolute;
  padding: 6px;
  background-color: #fff;
  border: 1px solid #fff;
  border-radius: 3px;
  color: #222;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.leaflet-tooltip.leaflet-clickable {
  cursor: pointer;
  pointer-events: auto;
}

.leaflet-tooltip-top:before,
.leaflet-tooltip-bottom:before,
.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  position: absolute;
  pointer-events: none;
  border: 6px solid transparent;
  background: transparent;
  content: "";
}

/* Directions */
.leaflet-tooltip-bottom {
  margin-top: 6px;
}

.leaflet-tooltip-top {
  margin-top: -6px;
}

.leaflet-tooltip-bottom:before,
.leaflet-tooltip-top:before {
  left: 50%;
  margin-left: -6px;
}

.leaflet-tooltip-top:before {
  bottom: 0;
  margin-bottom: -12px;
  border-top-color: #fff;
}

.leaflet-tooltip-bottom:before {
  top: 0;
  margin-top: -12px;
  margin-left: -6px;
  border-bottom-color: #fff;
}

.leaflet-tooltip-left {
  margin-left: -6px;
}

.leaflet-tooltip-right {
  margin-left: 6px;
}

.leaflet-tooltip-left:before,
.leaflet-tooltip-right:before {
  top: 50%;
  margin-top: -6px;
}

.leaflet-tooltip-left:before {
  right: 0;
  margin-right: -12px;
  border-left-color: #fff;
}

.leaflet-tooltip-right:before {
  left: 0;
  margin-left: -12px;
  border-right-color: #fff;
}

/*
==========================================================================
    Base styles
==========================================================================
*/
* {
  box-sizing: border-box !important;
}
* {
  padding: 0;
  margin: 0;
}

*:focus {
  outline: none !important;
}

html {
  padding: env(safe-area-inset);
  font-size: max(16px, 1vw);
  font-size: var(--font-size);
  -webkit-text-size-adjust: 100%;
}

body {
  padding: 0;
  margin: 0;
  background: hsl(0, 0%, 100%);
  background: var(--col-body-bg);
  font-family: "Epilogue", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif;
  font-family: var(--font-prim);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1em;
  font-weight: 300;
  line-height: 1.5em;
  word-break: normal;
  text-rendering: optimizeLegibility;
  transition: background 0.15s ease-out, color 0.15s ease-out;
}
body.flipped {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
body.rotated {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

:root {
  accent-color: hsl(28, 97%, 52%);
  accent-color: var(--col-prim);
}

a,
img,
a img {
  border: none;
}

a {
  position: relative;
  top: 0;
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
  text-decoration: none;
  font-weight: 400;
  text-underline-offset: 0.3em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
  transition: all 0.15s ease-out, top 0s;
  cursor: pointer;
}
a:hover, a:focus {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
a:active {
  top: 1px;
}

button {
  position: relative;
  top: 0;
  transition: all 0.15s ease-out, top 0s;
  cursor: pointer;
}
button:active {
  top: 1px;
}

a,
button {
  touch-action: manipulation;
}
a .fa-angle-left,
a .fa-angle-right,
a .fa-angle-up,
a .fa-angle-down,
a .fa-chevron-left,
a .fa-chevron-right,
a .fa-chevron-up,
a .fa-chevron-down,
a .fa-caret-left,
a .fa-caret-right,
a .fa-caret-up,
a .fa-caret-down,
a .fa-arrow-left,
a .fa-arrow-right,
a .fa-arrow-up,
a .fa-arrow-down,
a .fa-long-arrow-left,
a .fa-long-arrow-right,
a .fa-long-arrow-up,
a .fa-long-arrow-down,
button .fa-angle-left,
button .fa-angle-right,
button .fa-angle-up,
button .fa-angle-down,
button .fa-chevron-left,
button .fa-chevron-right,
button .fa-chevron-up,
button .fa-chevron-down,
button .fa-caret-left,
button .fa-caret-right,
button .fa-caret-up,
button .fa-caret-down,
button .fa-arrow-left,
button .fa-arrow-right,
button .fa-arrow-up,
button .fa-arrow-down,
button .fa-long-arrow-left,
button .fa-long-arrow-right,
button .fa-long-arrow-up,
button .fa-long-arrow-down {
  position: relative;
  transition: -webkit-transform 0.15s ease-out;
  transition: transform 0.15s ease-out;
  transition: transform 0.15s ease-out, -webkit-transform 0.15s ease-out;
  will-change: transform;
}
a:not(:disabled):not([class*=disabled]):hover .fa-angle-left,
a:not(:disabled):not([class*=disabled]):hover .fa-chevron-left,
a:not(:disabled):not([class*=disabled]):hover .fa-caret-left,
a:not(:disabled):not([class*=disabled]):hover .fa-arrow-left,
a:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-left, a:not(:disabled):not([class*=disabled]):focus .fa-angle-left,
a:not(:disabled):not([class*=disabled]):focus .fa-chevron-left,
a:not(:disabled):not([class*=disabled]):focus .fa-caret-left,
a:not(:disabled):not([class*=disabled]):focus .fa-arrow-left,
a:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-left,
button:not(:disabled):not([class*=disabled]):hover .fa-angle-left,
button:not(:disabled):not([class*=disabled]):hover .fa-chevron-left,
button:not(:disabled):not([class*=disabled]):hover .fa-caret-left,
button:not(:disabled):not([class*=disabled]):hover .fa-arrow-left,
button:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-left,
button:not(:disabled):not([class*=disabled]):focus .fa-angle-left,
button:not(:disabled):not([class*=disabled]):focus .fa-chevron-left,
button:not(:disabled):not([class*=disabled]):focus .fa-caret-left,
button:not(:disabled):not([class*=disabled]):focus .fa-arrow-left,
button:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-left {
  -webkit-transform: translate3d(-0.25em, 0, 0);
          transform: translate3d(-0.25em, 0, 0);
}
a:not(:disabled):not([class*=disabled]):hover .fa-angle-right,
a:not(:disabled):not([class*=disabled]):hover .fa-chevron-right,
a:not(:disabled):not([class*=disabled]):hover .fa-caret-right,
a:not(:disabled):not([class*=disabled]):hover .fa-arrow-right,
a:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-right, a:not(:disabled):not([class*=disabled]):focus .fa-angle-right,
a:not(:disabled):not([class*=disabled]):focus .fa-chevron-right,
a:not(:disabled):not([class*=disabled]):focus .fa-caret-right,
a:not(:disabled):not([class*=disabled]):focus .fa-arrow-right,
a:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-right,
button:not(:disabled):not([class*=disabled]):hover .fa-angle-right,
button:not(:disabled):not([class*=disabled]):hover .fa-chevron-right,
button:not(:disabled):not([class*=disabled]):hover .fa-caret-right,
button:not(:disabled):not([class*=disabled]):hover .fa-arrow-right,
button:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-right,
button:not(:disabled):not([class*=disabled]):focus .fa-angle-right,
button:not(:disabled):not([class*=disabled]):focus .fa-chevron-right,
button:not(:disabled):not([class*=disabled]):focus .fa-caret-right,
button:not(:disabled):not([class*=disabled]):focus .fa-arrow-right,
button:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-right {
  -webkit-transform: translate3d(0.25em, 0, 0);
          transform: translate3d(0.25em, 0, 0);
}
a:not(:disabled):not([class*=disabled]):hover .fa-angle-up,
a:not(:disabled):not([class*=disabled]):hover .fa-chevron-up,
a:not(:disabled):not([class*=disabled]):hover .fa-caret-up,
a:not(:disabled):not([class*=disabled]):hover .fa-arrow-up,
a:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-up, a:not(:disabled):not([class*=disabled]):focus .fa-angle-up,
a:not(:disabled):not([class*=disabled]):focus .fa-chevron-up,
a:not(:disabled):not([class*=disabled]):focus .fa-caret-up,
a:not(:disabled):not([class*=disabled]):focus .fa-arrow-up,
a:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-up,
button:not(:disabled):not([class*=disabled]):hover .fa-angle-up,
button:not(:disabled):not([class*=disabled]):hover .fa-chevron-up,
button:not(:disabled):not([class*=disabled]):hover .fa-caret-up,
button:not(:disabled):not([class*=disabled]):hover .fa-arrow-up,
button:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-up,
button:not(:disabled):not([class*=disabled]):focus .fa-angle-up,
button:not(:disabled):not([class*=disabled]):focus .fa-chevron-up,
button:not(:disabled):not([class*=disabled]):focus .fa-caret-up,
button:not(:disabled):not([class*=disabled]):focus .fa-arrow-up,
button:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-up {
  -webkit-transform: translate3d(0, -0.125em, 0);
          transform: translate3d(0, -0.125em, 0);
}
a:not(:disabled):not([class*=disabled]):hover .fa-angle-down,
a:not(:disabled):not([class*=disabled]):hover .fa-chevron-down,
a:not(:disabled):not([class*=disabled]):hover .fa-caret-down,
a:not(:disabled):not([class*=disabled]):hover .fa-arrow-down,
a:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-down, a:not(:disabled):not([class*=disabled]):focus .fa-angle-down,
a:not(:disabled):not([class*=disabled]):focus .fa-chevron-down,
a:not(:disabled):not([class*=disabled]):focus .fa-caret-down,
a:not(:disabled):not([class*=disabled]):focus .fa-arrow-down,
a:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-down,
button:not(:disabled):not([class*=disabled]):hover .fa-angle-down,
button:not(:disabled):not([class*=disabled]):hover .fa-chevron-down,
button:not(:disabled):not([class*=disabled]):hover .fa-caret-down,
button:not(:disabled):not([class*=disabled]):hover .fa-arrow-down,
button:not(:disabled):not([class*=disabled]):hover .fa-long-arrow-down,
button:not(:disabled):not([class*=disabled]):focus .fa-angle-down,
button:not(:disabled):not([class*=disabled]):focus .fa-chevron-down,
button:not(:disabled):not([class*=disabled]):focus .fa-caret-down,
button:not(:disabled):not([class*=disabled]):focus .fa-arrow-down,
button:not(:disabled):not([class*=disabled]):focus .fa-long-arrow-down {
  -webkit-transform: translate3d(0, 0.125em, 0);
          transform: translate3d(0, 0.125em, 0);
}

p, .gform_wrapper .gform_fields .gfield.gsection .gsection_description {
  display: block;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1em;
  line-height: 1.618em;
}
p.caption, .gform_wrapper .gform_fields .gfield.gsection .caption.gsection_description {
  color: #999;
  font-size: 0.875em;
}

hr {
  display: block;
  clear: both;
  width: 100%;
  margin: 1.5em auto;
  padding: 0;
  height: 0;
  border: 0;
  border-top: 0.1em solid hsl(200, 5%, 90%);
  border-top: 0.1em solid var(--col-grey-light);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  padding: 0;
  margin: 0;
  line-height: 1.3em;
  text-wrap: balance;
}

img {
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
}

.clear {
  display: block;
  width: 100%;
  clear: both;
  height: 0;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

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

.text-justify {
  text-align: justify;
}

.text-nowrap {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

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

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

.icon-left {
  margin-right: 0.5em;
}

.icon-right {
  margin-left: 0.5em;
}

.icon-center {
  margin: 0 0.5em;
}

.icon-light {
  opacity: 0.5;
}

.spacer {
  display: block;
  clear: both;
  width: 100%;
}
.spacer.spacer10 {
  height: 10px;
}
.spacer.spacer20 {
  height: 20px;
}
.spacer.spacer30 {
  height: 30px;
}
.spacer.spacer40 {
  height: 40px;
}
.spacer.spacer50 {
  height: 50px;
}
.spacer.spacer100 {
  height: 100px;
}
.spacer.spacer250 {
  height: 250px;
}
.spacer.spacer500 {
  height: 500px;
}
.spacer.spacer1000 {
  height: 1000px;
}

.margin {
  margin: 2em 0;
}
.margin:first-child {
  margin-top: 0;
}
.margin:last-child {
  margin-bottom: 0;
}
.margin-top {
  margin-top: 2em;
}
.margin-bottom {
  margin-bottom: 2em;
}
.margin.margin--small {
  margin: 1em 0;
}
.margin.margin--small:first-child {
  margin-top: 0;
}
.margin.margin--small:last-child {
  margin-bottom: 0;
}
.margin.margin--small-top {
  margin-top: 1em;
}
.margin.margin--small-bottom {
  margin-bottom: 1em;
}
.margin.margin--large {
  margin: 3em 0;
}
.margin.margin--large:first-child {
  margin-top: 0;
}
.margin.margin--large:last-child {
  margin-bottom: 0;
}
.margin.margin--large-top {
  margin-top: 3em;
}
.margin.margin--large-bottom {
  margin-bottom: 3em;
}

.nomargin {
  margin: 0 !important;
}
.nomargin-top {
  margin-top: 0 !important;
}
.nomargin-bottom {
  margin-bottom: 0 !important;
}

.nopadding {
  padding: 0 !important;
}
.nopadding-top {
  padding-top: 0 !important;
}
.nopadding-bottom {
  padding-bottom: 0 !important;
}

.col-success {
  color: #00b900;
  color: var(--col-success);
}

.col-warning {
  color: Orange;
  color: var(--col-warning);
}

.col-error {
  color: Tomato;
  color: var(--col-error);
}

.display-flex {
  display: flex;
}

.display-block {
  display: block;
}

.display-inline {
  display: inline;
}

.display-inline-block {
  display: inline-block;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

.clear-before:before {
  content: "";
  display: table;
  clear: both;
}

.clear-after:after {
  content: "";
  display: table;
  clear: both;
}

mark {
  padding: 0.25em 0.4em;
  border-radius: 0.5em;
  background-color: hsl(200, 5%, 85%);
  background-color: var(--col-grey);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}

.input-style-reset {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
}

.position-static {
  position: static;
}

.position-relative {
  position: relative;
}

.position-absolute {
  position: absolute;
}

.flex-spacer,
.flex-grow {
  margin: 0 !important;
}

.flex-spacer,
.flex-grow {
  flex-grow: 1;
}

.flex-shrink {
  flex-shrink: 1;
}

::-moz-selection {
  background-color: hsl(200, 15%, 15%);
  background-color: var(--col-text);
  color: hsl(0, 0%, 100%);
  color: var(--col-body-bg);
}

::selection {
  background-color: hsl(200, 15%, 15%);
  background-color: var(--col-text);
  color: hsl(0, 0%, 100%);
  color: var(--col-body-bg);
}

.hidden {
  display: none !important;
}

.narrow {
  max-width: 50em !important;
}

.x-narrow {
  max-width: 35em !important;
}

.narrow-root {
  max-width: 50rem !important;
}

.centered {
  margin-left: auto !important;
  margin-right: auto !important;
}

.col-prim {
  color: hsl(28, 97%, 52%) !important;
  color: var(--col-prim) !important;
}

.col-sec {
  color: hsl(177, 57%, 42%) !important;
  color: var(--col-sec) !important;
}

.col-tert {
  color: hsl(355, 98%, 74%) !important;
  color: var(--col-tert) !important;
}

/* Fontawesome SVG flicker fix - remove this when using FA font-file */
i[class*=fa-] {
  display: inline-block;
  height: 1em;
  width: 1em;
  border-radius: 50%;
  border: 0.15em solid currentColor;
  opacity: 0.25;
  vertical-align: -0.125em;
}

/*
==========================================================================
    Font Face
==========================================================================
*/
@font-face {
  font-family: "Epilogue";
  src: url("../webfonts/Epilogue-VariableFont_wght.ttf") format("truetype"), url("../webfonts/Epilogue-Regular.ttf") format("truetype");
  /* Chrome 4+, Firefox 3.5, Opera 10+, Safari 3—5 */
  font-display: swap;
}
/*
==========================================================================
	Animations
    Great CSS animation resource: http://animista.net

    Animate IN
==========================================================================
*/
@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade-in-up {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10vh, 0);
            transform: translate3d(0, 10vh, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-in-up {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10vh, 0);
            transform: translate3d(0, 10vh, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fade-in-down {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10vh, 0);
            transform: translate3d(0, -10vh, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-in-down {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10vh, 0);
            transform: translate3d(0, -10vh, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fade-in-left {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(10vw, 0, 0);
            transform: translate3d(10vw, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-in-left {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(10vw, 0, 0);
            transform: translate3d(10vw, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fade-in-right {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-10vw, 0, 0);
            transform: translate3d(-10vw, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@keyframes fade-in-right {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-10vw, 0, 0);
            transform: translate3d(-10vw, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}
@-webkit-keyframes fade-in-scale-down {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes fade-in-scale-down {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes fade-in-scale-up {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes fade-in-scale-up {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/*
==========================================================================
    Animate OUT
==========================================================================
*/
@-webkit-keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fade-out-up {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10vh, 0);
            transform: translate3d(0, -10vh, 0);
  }
}
@keyframes fade-out-up {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, -10vh, 0);
            transform: translate3d(0, -10vh, 0);
  }
}
@-webkit-keyframes fade-out-down {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10vh, 0);
            transform: translate3d(0, 10vh, 0);
  }
}
@keyframes fade-out-down {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(0, 10vh, 0);
            transform: translate3d(0, 10vh, 0);
  }
}
@-webkit-keyframes fade-out-left {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-10vw, 0, 0);
            transform: translate3d(-10vw, 0, 0);
  }
}
@keyframes fade-out-left {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-10vw, 0, 0);
            transform: translate3d(-10vw, 0, 0);
  }
}
@-webkit-keyframes fade-out-right {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(10vw, 0, 0);
            transform: translate3d(10vw, 0, 0);
  }
}
@keyframes fade-out-right {
  0% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(10vw, 0, 0);
            transform: translate3d(10vw, 0, 0);
  }
}
@-webkit-keyframes fade-out-scale-down {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
}
@keyframes fade-out-scale-down {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
}
@-webkit-keyframes fade-out-scale-up {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
}
@keyframes fade-out-scale-up {
  0% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.5);
            transform: scale(1.5);
  }
}
/*
==========================================================================
    Rotation
==========================================================================
*/
@-webkit-keyframes rotate-90-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
@keyframes rotate-90-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
@-webkit-keyframes rotate-90-counter-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
}
@keyframes rotate-90-counter-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
}
@-webkit-keyframes rotate-180-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
}
@keyframes rotate-180-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
}
@-webkit-keyframes rotate-180-counter-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg);
  }
}
@keyframes rotate-180-counter-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg);
  }
}
@-webkit-keyframes rotate-360-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes rotate-360-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes rotate-360-counter-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}
@keyframes rotate-360-counter-clockwise {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}
/*
==========================================================================
    Zoom
==========================================================================
*/
@-webkit-keyframes image-zoom-in {
  to {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@keyframes image-zoom-in {
  to {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@-webkit-keyframes image-zoom-out {
  from {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes image-zoom-out {
  from {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
/*
==========================================================================
    Custom
==========================================================================
*/
@-webkit-keyframes background-shift {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  25% {
    -webkit-transform: translate3d(-50vw, 0, 0);
            transform: translate3d(-50vw, 0, 0);
  }
  50% {
    -webkit-transform: translate3d(-50vw, -50vw, 0);
            transform: translate3d(-50vw, -50vw, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -50vw, 0);
            transform: translate3d(0, -50vw, 0);
  }
}
@keyframes background-shift {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  25% {
    -webkit-transform: translate3d(-50vw, 0, 0);
            transform: translate3d(-50vw, 0, 0);
  }
  50% {
    -webkit-transform: translate3d(-50vw, -50vw, 0);
            transform: translate3d(-50vw, -50vw, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -50vw, 0);
            transform: translate3d(0, -50vw, 0);
  }
}
@-webkit-keyframes lynkco-shift {
  0%, 30% {
    left: calc(100% - 16em);
    left: calc(100% - var(--lynkco-width));
  }
  70%, 100% {
    left: 0;
  }
}
@keyframes lynkco-shift {
  0%, 30% {
    left: calc(100% - 16em);
    left: calc(100% - var(--lynkco-width));
  }
  70%, 100% {
    left: 0;
  }
}
@-webkit-keyframes lynkco-wheels {
  0%, 30% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  70%, 100% {
    -webkit-transform: rotate(var(--lynkco-wheel-rotation));
            transform: rotate(var(--lynkco-wheel-rotation));
  }
}
@keyframes lynkco-wheels {
  0%, 30% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  70%, 100% {
    -webkit-transform: rotate(var(--lynkco-wheel-rotation));
            transform: rotate(var(--lynkco-wheel-rotation));
  }
}
@-webkit-keyframes load-progress-circle {
  from {
    stroke-dasharray: 0, 329;
  }
}
@keyframes load-progress-circle {
  from {
    stroke-dasharray: 0, 329;
  }
}
/*
==========================================================================
    Custom grid system
==========================================================================
*/
.container {
  width: 100%;
  padding-right: Max(10vw, 1em);
  padding-right: var(--container-side-spacing);
  padding-left: Max(10vw, 1em);
  padding-left: var(--container-side-spacing);
}

@media only screen and (max-width: 480px) {
  :root {
    --container-side-spacing: Max(5vw, 1em);
  }
}
/*
==========================================================================
	Hidden classes
==========================================================================
*/
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 481px) and (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (max-width: 480px) {
  .hidden-xxs {
    display: none !important;
  }
}
/*
==========================================================================
    .content-wrapper styles
==========================================================================
*/
.content {
  container-name: content;
  container-type: inline-size;
}
.content.content--inverted {
  color: #fff;
}
.content.content--inverted * {
  color: inherit;
}
.content.content--columns {
  -webkit-column-count: 2;
     -moz-column-count: 2;
          column-count: 2;
  -webkit-column-gap: 3.5em;
     -moz-column-gap: 3.5em;
          column-gap: 3.5em;
}
.content.content--large {
  font-size: 1.125em;
}
.content.content--small {
  font-size: 0.875em;
}
.content.content--light {
  opacity: 0.5;
}
.content.content--light * {
  color: hsl(200, 15%, 7.5%);
  color: var(--col-text-dark);
}
.content.content--margin {
  margin: 1.5em 0;
}
.content.content--margin:first-child {
  margin-top: 0;
}
.content.content--margin:last-child {
  margin-bottom: 0;
}
.content .wp-caption {
  max-width: 100%;
  margin: 2em auto;
}
.content .wp-caption.alignleft {
  float: left;
  margin: 2em 2.5em 2em 0;
}
.content .wp-caption.alignright {
  float: right;
  margin: 2em 0 2em 2.5em;
}
.content .wp-caption.aligncenter {
  display: block;
  margin: 2em auto;
}
.content .wp-caption:first-child {
  margin-top: 0;
}
.content .wp-caption:last-child {
  margin-bottom: 0;
}
.content .wp-caption .wp-caption-text {
  margin: 1em 0 0;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 0.875em;
  font-style: italic;
}
.content img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 0.25em;
}
.content img.alignnone {
  display: block;
  margin: 2em auto;
}
.content img.alignleft {
  float: left;
  margin: 2em 2.5em 2em 0;
}
.content img.alignright {
  float: right;
  margin: 2em 0 2em 2.5em;
}
.content img.aligncenter {
  display: block;
  margin: 2em auto;
}
.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6 {
  clear: both;
  margin: 1.5em 0 0.75em;
}
.content h1:first-child,
.content h2:first-child,
.content h3:first-child,
.content h4:first-child,
.content h5:first-child,
.content h6:first-child {
  margin-top: 0;
}
.content h1:last-child,
.content h2:last-child,
.content h3:last-child,
.content h4:last-child,
.content h5:last-child,
.content h6:last-child {
  margin-bottom: 0;
}
.content h1 + p, .content .gform_wrapper .gform_fields .gfield.gsection h1 + .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content h1 + .gsection_description,
.content h2 + p,
.content .gform_wrapper .gform_fields .gfield.gsection h2 + .gsection_description,
.gform_wrapper .gform_fields .gfield.gsection .content h2 + .gsection_description,
.content h3 + p,
.content .gform_wrapper .gform_fields .gfield.gsection h3 + .gsection_description,
.gform_wrapper .gform_fields .gfield.gsection .content h3 + .gsection_description,
.content h4 + p,
.content .gform_wrapper .gform_fields .gfield.gsection h4 + .gsection_description,
.gform_wrapper .gform_fields .gfield.gsection .content h4 + .gsection_description,
.content h5 + p,
.content .gform_wrapper .gform_fields .gfield.gsection h5 + .gsection_description,
.gform_wrapper .gform_fields .gfield.gsection .content h5 + .gsection_description,
.content h6 + p,
.content .gform_wrapper .gform_fields .gfield.gsection h6 + .gsection_description,
.gform_wrapper .gform_fields .gfield.gsection .content h6 + .gsection_description {
  margin-top: 1em;
}
.content h1,
.content h2 {
  font-weight: 800;
}
.content h3,
.content h4 {
  font-weight: 700;
}
.content h5,
.content h6 {
  font-weight: 600;
}
.content h1 {
  font-size: 3em;
}
.content h2 {
  font-size: 2.5em;
}
.content h3 {
  font-size: 2em;
}
.content h4 {
  font-size: 1.5em;
}
.content h5 {
  font-size: 1.25em;
}
.content h6 {
  font-size: 1.125em;
}
.content p, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description {
  margin: 1.5em 0;
  line-height: 1.8em;
}
.content p:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description:first-child {
  margin-top: 0;
}
.content p:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description:last-child {
  margin-bottom: 0;
}
.content p a:not([class]), .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description a:not([class]), .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description a:not([class]), .content p a:not([class=""]), .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description a:not([class=""]), .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description a:not([class=""]) {
  font-weight: 500;
}
.content p .btn, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn, .content p form input[type=button], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type=button], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type=button], .content form p input[type=button], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=button], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type=button],
.content p form input[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type=submit],
.content form p input[type=submit],
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type=submit],
.content p form button[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button[type=submit],
.content form p button[type=submit],
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button[type=submit],
.content p .fields input[type=button],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input[type=button],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input[type=button],
.fields .content p input[type=button],
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=button],
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input[type=button],
.content p .fields input[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input[type=submit],
.fields .content p input[type=submit],
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input[type=submit],
.content p .fields button[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields button[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields button[type=submit],
.fields .content p button[type=submit],
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description button[type=submit] {
  margin: 10px 5px 0;
}
.content p .btn:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn:first-child, .content p form input[type=button]:first-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type=button]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type=button]:first-child, .content form p input[type=button]:first-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=button]:first-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type=button]:first-child,
.content p form input[type=submit]:first-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type=submit]:first-child,
.content form p input[type=submit]:first-child,
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type=submit]:first-child,
.content p form button[type=submit]:first-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button[type=submit]:first-child,
.content form p button[type=submit]:first-child,
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button[type=submit]:first-child,
.content p .fields input[type=button]:first-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input[type=button]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input[type=button]:first-child,
.fields .content p input[type=button]:first-child,
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=button]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input[type=button]:first-child,
.content p .fields input[type=submit]:first-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input[type=submit]:first-child,
.fields .content p input[type=submit]:first-child,
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input[type=submit]:first-child,
.content p .fields button[type=submit]:first-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields button[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields button[type=submit]:first-child,
.fields .content p button[type=submit]:first-child,
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type=submit]:first-child,
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description button[type=submit]:first-child {
  margin-left: 0;
}
.content p .btn:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn:last-child, .content p form input[type=button]:last-child, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type=button]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type=button]:last-child, .content form p input[type=button]:last-child, .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=button]:last-child, .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type=button]:last-child,
.content p form input[type=submit]:last-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input[type=submit]:last-child,
.content form p input[type=submit]:last-child,
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input[type=submit]:last-child,
.content p form button[type=submit]:last-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button[type=submit]:last-child,
.content form p button[type=submit]:last-child,
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button[type=submit]:last-child,
.content p .fields input[type=button]:last-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input[type=button]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input[type=button]:last-child,
.fields .content p input[type=button]:last-child,
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=button]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input[type=button]:last-child,
.content p .fields input[type=submit]:last-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input[type=submit]:last-child,
.fields .content p input[type=submit]:last-child,
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input[type=submit]:last-child,
.content p .fields button[type=submit]:last-child,
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields button[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields button[type=submit]:last-child,
.fields .content p button[type=submit]:last-child,
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description button[type=submit]:last-child,
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description button[type=submit]:last-child {
  margin-right: 0;
}
.content p .btn.btn-full, .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .btn.btn-full, .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .btn.btn-full, .content p form input.btn-full[type=button], .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input.btn-full[type=button], .gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input.btn-full[type=button], .content form p input.btn-full[type=button], .content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input.btn-full[type=button], .gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input.btn-full[type=button],
.content p form input.btn-full[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form input.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form input.btn-full[type=submit],
.content form p input.btn-full[type=submit],
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description input.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description input.btn-full[type=submit],
.content p form button.btn-full[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description form button.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description form button.btn-full[type=submit],
.content form p button.btn-full[type=submit],
.content form .gform_wrapper .gform_fields .gfield.gsection .gsection_description button.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content form .gsection_description button.btn-full[type=submit],
.content p .fields input.btn-full[type=button],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input.btn-full[type=button],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input.btn-full[type=button],
.fields .content p input.btn-full[type=button],
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input.btn-full[type=button],
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input.btn-full[type=button],
.content p .fields input.btn-full[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields input.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields input.btn-full[type=submit],
.fields .content p input.btn-full[type=submit],
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description input.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description input.btn-full[type=submit],
.content p .fields button.btn-full[type=submit],
.content .gform_wrapper .gform_fields .gfield.gsection .gsection_description .fields button.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .content .gsection_description .fields button.btn-full[type=submit],
.fields .content p button.btn-full[type=submit],
.fields .content .gform_wrapper .gform_fields .gfield.gsection .gsection_description button.btn-full[type=submit],
.gform_wrapper .gform_fields .gfield.gsection .fields .content .gsection_description button.btn-full[type=submit] {
  margin-left: 0;
  margin-right: 0;
}
.content p.intro, .content .gform_wrapper .gform_fields .gfield.gsection .intro.gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content .intro.gsection_description {
  font-size: 1.5em;
}
.content p.micro, .content .gform_wrapper .gform_fields .gfield.gsection .micro.gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content .micro.gsection_description {
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 0.75rem;
}
.content ul,
.content ol {
  margin: 1.5em 0 1.5em 1em;
}
.content ul:first-child,
.content ol:first-child {
  margin-top: 0;
}
.content ul:last-child,
.content ol:last-child {
  margin-bottom: 0;
}
.content ul.icon-list,
.content ol.icon-list {
  list-style: none;
  margin-left: 0;
}
.content ul.icon-list li,
.content ol.icon-list li {
  position: relative;
  display: flex;
  padding-left: 2em;
}
.content ul.icon-list [class*=" fa-"],
.content ol.icon-list [class*=" fa-"] {
  position: absolute;
  top: 0.15em;
  left: 0;
  width: 1em;
  text-align: center;
}
.content ul li,
.content ol li {
  line-height: 1.618em;
}
.content ul li:not(:first-child),
.content ol li:not(:first-child) {
  margin-top: 0.75em;
}
.content ul ul,
.content ul ol,
.content ol ul,
.content ol ol {
  padding: 0.75em 0;
}
.content blockquote {
  margin: 2em 5%;
}
.content blockquote:first-child {
  margin-top: 0;
}
.content blockquote:last-child {
  margin-bottom: 0;
}
.content blockquote p, .content blockquote .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content blockquote .gsection_description {
  font-size: 1.5em;
  line-height: 1.618em;
  font-weight: 500;
  text-wrap: balance;
}
.content .table-wrapper {
  position: relative;
  display: flex;
  margin: 2em -15px;
  overflow-x: auto;
  padding: 0 15px;
  white-space: nowrap;
}
.content .table-wrapper:first-child {
  margin-top: 0;
}
.content .table-wrapper:last-child {
  margin-bottom: 0;
}
.content .table-wrapper:after {
  content: "";
  min-width: 15px;
}
.content .table-wrapper::-webkit-scrollbar {
  height: 0;
  width: 0;
}
.content table {
  width: 100%;
  margin: 2em 0;
  border-collapse: collapse;
  font-size: 1em;
}
.content table:first-child {
  margin-top: 0;
}
.content table:last-child {
  margin-bottom: 0;
}
.content table th,
.content table td {
  padding: 0.75em;
}
.content table tr:nth-child(odd) {
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
}
.content table tr:not(:last-child) th,
.content table tr:not(:last-child) td {
  border-bottom: 2px solid hsl(200, 5%, 85%);
  border-bottom: 2px solid var(--col-grey);
}
.content iframe {
  max-width: 100%;
  margin: 3em 0;
}
.content iframe:first-child {
  margin-top: 0;
}
.content iframe:last-child {
  margin-bottom: 0;
}
.content pre {
  display: block;
  margin: 2em 0;
  padding: 1em 1.5em;
  border-radius: 0.5em;
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
  font-family: monospace;
  font-size: 1em;
  white-space: normal;
}
.content pre:first-child {
  margin-top: 0;
}
.content pre:last-child {
  margin-bottom: 0;
}
.content dl {
  display: grid;
  grid-gap: 0.5em 1em;
  grid-template-columns: 10em auto;
  margin: 1.5em 0;
  text-align: left;
}
.content dl:first-child {
  margin-top: 0;
}
.content dl:last-child {
  margin-bottom: 0;
}
.content dl dt {
  font-weight: bold;
}
.content .content-highlight {
  display: block;
  margin: 3em 0;
  padding: 1.25em 1.5em;
  border-radius: 1em;
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  font-size: 0.875em;
}
.content .content-highlight:first-child {
  margin-top: 0;
}
.content .content-highlight:last-child {
  margin-bottom: 0;
}
.content .social-links {
  margin: 1.5em 0;
  margin-left: -0.6em;
  font-size: 1.125em;
}
.content .social-links:first-child {
  margin-top: 0;
}
.content .social-links:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .content.content--columns {
    -webkit-column-count: 1;
       -moz-column-count: 1;
            column-count: 1;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
}
@media only screen and (max-width: 580px) {
  .content h1 {
    font-size: 2em;
  }
  .content h2 {
    font-size: 1.5em;
  }
  .content h3 {
    font-size: 1.25em;
  }
  .content h4 {
    font-size: 1.125em;
  }
  .content h5 {
    font-size: 1em;
  }
  .content blockquote p, .content blockquote .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .content blockquote .gsection_description {
    font-size: 1.25em;
  }
}
@media only screen and (max-width: 480px) {
  .content .alignleft,
.content .alignright,
.content .aligncenter {
    float: none;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .content div.alignleft,
.content div.alignright,
.content div.aligncenter {
    margin: 1.5em 0;
  }
  .content div.alignleft:first-child,
.content div.alignright:first-child,
.content div.aligncenter:first-child {
    margin-top: 0;
  }
  .content div.alignleft:last-child,
.content div.alignright:last-child,
.content div.aligncenter:last-child {
    margin-bottom: 0;
  }
  .content div.alignleft img,
.content div.alignright img,
.content div.aligncenter img {
    width: 100%;
  }
}
@container content (max-width: 20em) {
  .content dl {
    grid-gap: 0.25em;
    grid-template-columns: auto;
  }
  .content dl dd + dt {
    margin-top: 0.5em;
  }
  .content dl dd {
    text-align: left;
  }
}
/*
==========================================================================
    Components
==========================================================================
*/
.nivo-lightbox-theme-default .nivo-lightbox-close {
  background-position: center;
}

.responsive-embed-container {
  position: relative;
  max-width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  border-radius: 1em;
}
.responsive-embed-container.responsive-embed-container--map {
  min-height: 250px;
}
.responsive-embed-container.responsive-embed-container--overflow-visible {
  overflow: visible;
}
.responsive-embed-container iframe,
.responsive-embed-container object,
.responsive-embed-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.container > .responsive-embed-container,
.container > .content > .responsive-embed-container {
  box-shadow: 0 0.1em 0.35em hsl(200, 5%, 85%);
  box-shadow: 0 0.1em 0.35em var(--col-grey);
  background-color: hsl(200, 5%, 85%);
  background-color: var(--col-grey);
}
.container > .responsive-embed-container iframe,
.container > .responsive-embed-container object,
.container > .responsive-embed-container embed,
.container > .content > .responsive-embed-container iframe,
.container > .content > .responsive-embed-container object,
.container > .content > .responsive-embed-container embed {
  border-radius: inherit;
}

/* hide slick sliders on page load, show when initialized */
.slick-slider {
  display: none;
}
.slick-slider.slick-initialized {
  display: block;
}

.page-wrapper {
  position: relative;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
  overflow: clip;
}
.page-wrapper:before, .page-wrapper:after {
  content: "";
  display: table;
  clear: both;
}

#ee_comic {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  position: fixed;
  z-index: 5000;
  top: auto;
  bottom: 0;
  right: 0;
  width: 0.5em;
  height: 0.5em;
}

/*
==========================================================================
    Sections
==========================================================================
*/
.section {
  position: relative;
  padding: 0;
  margin: Max(8vw, 4em) 0;
  margin: var(--default-spacing) 0;
}
.section[\:has\(.section__background--bottom-fade\)] + .section {
  margin-top: calc(-1 * Max(6vw, 3em));
  margin-top: calc(-1 * var(--medium-spacing));
}
.section[\:has\(.section__background--bottom-fade\)] + .section {
  margin-top: calc(-1 * Max(6vw, 3em));
  margin-top: calc(-1 * var(--medium-spacing));
}
.section:has(.section__background--bottom-fade) + .section {
  margin-top: calc(-1 * Max(6vw, 3em));
  margin-top: calc(-1 * var(--medium-spacing));
}
.section.section--x-small-margin {
  margin: Max(3vw, 2em) 0;
  margin: var(--x-small-spacing) 0;
}
.section.section--x-small-margin-top {
  margin-top: Max(3vw, 2em);
  margin-top: var(--x-small-spacing);
}
.section.section--x-small-margin-bottom {
  margin-bottom: Max(3vw, 2em);
  margin-bottom: var(--x-small-spacing);
}
.section.section--small-margin {
  margin: Max(4vw, 2.5em) 0;
  margin: var(--small-spacing) 0;
}
.section.section--small-margin-top {
  margin-top: Max(4vw, 2.5em);
  margin-top: var(--small-spacing);
}
.section.section--small-margin-bottom {
  margin-bottom: Max(4vw, 2.5em);
  margin-bottom: var(--small-spacing);
}
.section.section--medium-margin {
  margin: Max(6vw, 3em) 0;
  margin: var(--medium-spacing) 0;
}
.section.section--medium-margin-top {
  margin-top: Max(6vw, 3em);
  margin-top: var(--medium-spacing);
}
.section.section--medium-margin-bottom {
  margin-bottom: Max(6vw, 3em);
  margin-bottom: var(--medium-spacing);
}
.section.section--large-margin {
  margin: Max(10vw, 5em) 0;
  margin: var(--large-spacing) 0;
}
.section.section--large-margin-top {
  margin-top: Max(10vw, 5em);
  margin-top: var(--large-spacing);
}
.section.section--large-margin-bottom {
  margin-bottom: Max(10vw, 5em);
  margin-bottom: var(--large-spacing);
}
.section.section--x-large-margin {
  margin: Max(12vw, 6em) 0;
  margin: var(--x-large-spacing) 0;
}
.section.section--x-large-margin-top {
  margin-top: Max(12vw, 6em);
  margin-top: var(--x-large-spacing);
}
.section.section--x-large-margin-bottom {
  margin-bottom: Max(12vw, 6em);
  margin-bottom: var(--x-large-spacing);
}
.section.section--padding {
  margin: 0;
}
.section.section--padding + hr {
  margin-top: 0;
}
.section.section--padding.section--x-small-padding-top .section__inner {
  padding-top: Max(3vw, 2em);
  padding-top: var(--x-small-spacing);
}
.section.section--padding.section--x-small-padding-bottom .section__inner {
  padding-bottom: Max(3vw, 2em);
  padding-bottom: var(--x-small-spacing);
}
.section.section--padding.section--x-small-padding .section__inner {
  padding: Max(3vw, 2em) 0;
  padding: var(--x-small-spacing) 0;
}
.section.section--padding.section--small-padding-top .section__inner {
  padding-top: Max(4vw, 2.5em);
  padding-top: var(--small-spacing);
}
.section.section--padding.section--small-padding-bottom .section__inner {
  padding-bottom: Max(4vw, 2.5em);
  padding-bottom: var(--small-spacing);
}
.section.section--padding.section--small-padding .section__inner {
  padding: Max(4vw, 2.5em) 0;
  padding: var(--small-spacing) 0;
}
.section.section--padding.section--medium-padding-top .section__inner {
  padding-top: Max(6vw, 3em);
  padding-top: var(--medium-spacing);
}
.section.section--padding.section--medium-padding-bottom .section__inner {
  padding-bottom: Max(6vw, 3em);
  padding-bottom: var(--medium-spacing);
}
.section.section--padding.section--medium-padding .section__inner {
  padding: Max(6vw, 3em) 0;
  padding: var(--medium-spacing) 0;
}
.section.section--padding.section--large-padding-top .section__inner {
  padding-top: Max(10vw, 5em);
  padding-top: var(--large-spacing);
}
.section.section--padding.section--large-padding-bottom .section__inner {
  padding-bottom: Max(10vw, 5em);
  padding-bottom: var(--large-spacing);
}
.section.section--padding.section--large-padding .section__inner {
  padding: Max(10vw, 5em) 0;
  padding: var(--large-spacing) 0;
}
.section.section--padding.section--x-large-padding-top .section__inner {
  padding-top: Max(12vw, 6em);
  padding-top: var(--x-large-spacing);
}
.section.section--padding.section--x-large-padding-bottom .section__inner {
  padding-bottom: Max(12vw, 6em);
  padding-bottom: var(--x-large-spacing);
}
.section.section--padding.section--x-large-padding .section__inner {
  padding: Max(12vw, 6em) 0;
  padding: var(--x-large-spacing) 0;
}
.section.section--padding .section__inner {
  padding: Max(8vw, 4em) 0;
  padding: var(--default-spacing) 0;
}
.section.section--border-top {
  border-top: 1px solid hsl(200, 5%, 85%);
  border-top: 1px solid var(--col-grey);
}
.section.section--border-bottom {
  border-bottom: 1px solid hsl(200, 5%, 85%);
  border-bottom: 1px solid var(--col-grey);
}
.section.section--higher-zindex {
  z-index: 5;
}
.section.section--full {
  display: flex;
  flex-direction: column;
}
.section.section--full .section__inner {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 100vh;
}
.section.section--full .section__inner.section__inner--align-top {
  align-items: flex-start;
}
.section.section--full .section__inner.section__inner--align-bottom {
  align-items: flex-end;
}
.section.section--title + .section:not(.section--padding):not(.section--small-margin):not(.nomargin) {
  margin-top: Max(4vw, 2.5em) !important;
  margin-top: var(--small-spacing) !important;
}
.section.section--image[\:has\(.container\)] + .section:not(.section--padding):not(.section--small-margin):not(.nomargin), .section.section--video[\:has\(.container\)] + .section:not(.section--padding):not(.section--small-margin):not(.nomargin) {
  margin-top: Max(4vw, 2.5em) !important;
  margin-top: var(--small-spacing) !important;
}
.section.section--image[\:has\(.container\)] + .section:not(.section--padding):not(.section--small-margin):not(.nomargin), .section.section--video[\:has\(.container\)] + .section:not(.section--padding):not(.section--small-margin):not(.nomargin) {
  margin-top: Max(4vw, 2.5em) !important;
  margin-top: var(--small-spacing) !important;
}
.section.section--image:has(.container) + .section:not(.section--padding):not(.section--small-margin):not(.nomargin), .section.section--video:has(.container) + .section:not(.section--padding):not(.section--small-margin):not(.nomargin) {
  margin-top: Max(4vw, 2.5em) !important;
  margin-top: var(--small-spacing) !important;
}
.section.section--overflow-hidden {
  overflow: hidden;
}
.section__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.section__background.section__background--grey {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}
.section__background.section__background--dark-grey {
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
}
.section__background.section__background--prim {
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
}
.section__background.section__background--sec {
  background-color: hsl(177, 57%, 42%);
  background-color: var(--col-sec);
}
.section__background.section__background--tert {
  background-color: hsl(355, 98%, 74%);
  background-color: var(--col-tert);
}
.section__background.section__background--overflow {
  top: -15%;
  height: 150%;
}
.section__background.section__background--bottom-fade {
  -webkit-mask-image: linear-gradient(to bottom, black 50%, transparent);
}
.section__background.section__background--bottom-fade ~ .section__inner .container {
  padding-bottom: Max(4vw, 2.5em);
  padding-bottom: var(--small-spacing);
}
.section__background.section__background--half {
  left: 45%;
  width: 55%;
}
.section__background.section__background--half[\:has\(.key-visual\)] .section__background-fade-layer {
  opacity: 0.75;
}
.section__background.section__background--half:has(.key-visual) .section__background-fade-layer {
  opacity: 0.75;
}
.section__background.section__background--half[\:has\(.key-visual\)] .section__background-fade-layer:before {
  background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 40%);
  background: linear-gradient(to right, var(--col-body-bg), transparent 40%);
}
.section__background.section__background--half[\:has\(.key-visual\)] .section__background-fade-layer:before {
  background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 40%);
  background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 40%);
  background: linear-gradient(to right, var(--col-body-bg), transparent 40%);
}
.section__background.section__background--half[\:has\(.key-visual\)] .section__background-fade-layer:before {
  background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 40%);
  background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 40%);
  background: linear-gradient(to right, var(--col-body-bg), transparent 40%);
}
.section__background.section__background--half:has(.key-visual) .section__background-fade-layer:before {
  background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 40%);
  background: linear-gradient(to right, var(--col-body-bg), transparent 40%);
}
.section__background.section__background--half[\:has\(.key-visual\)] .section__background-fade-layer:after {
  display: none;
}
.section__background.section__background--half:has(.key-visual) .section__background-fade-layer:after {
  display: none;
}
.section__background.section__background--half .section__background-fade-layer {
  background: none;
}
.section__background.section__background--half .section__background-fade-layer:before, .section__background.section__background--half .section__background-fade-layer:after {
  content: "";
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
}
.section__background.section__background--half .section__background-fade-layer:before {
  background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 60%), linear-gradient(to bottom, hsl(0, 0%, 100%), transparent 8em);
  background: linear-gradient(to right, var(--col-body-bg), transparent 60%), linear-gradient(to bottom, var(--col-body-bg), transparent var(--masthead-height));
}
.section__background.section__background--half .section__background-fade-layer:after {
  background: radial-gradient(ellipse, transparent 50%, hsl(0, 0%, 100%));
  background: radial-gradient(ellipse, transparent 50%, var(--col-body-bg));
  opacity: 0.5;
}
.section__background-gradient, .section__background-image, .section__background-slider, .section__background-key-visual, .section__background-video, .section__background-fade-layer {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.section__background-gradient {
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
}
.section__background-gradient:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% + 50vw);
  height: calc(100% + 50vw);
  background: radial-gradient(circle at top left, hsl(28, 97%, 52%), transparent 70%) top left/150vw 150vw, radial-gradient(circle at top right, hsl(355, 98%, 74%), transparent 70%) top right/100vw 100vw, radial-gradient(circle at bottom right, hsl(177, 57%, 42%), transparent 70%) bottom right/125vw 125vw;
  background: radial-gradient(circle at top left, var(--col-prim), transparent 70%) top left/150vw 150vw, radial-gradient(circle at top right, var(--col-tert), transparent 70%) top right/100vw 100vw, radial-gradient(circle at bottom right, var(--col-sec), transparent 70%) bottom right/125vw 125vw;
  background-repeat: no-repeat;
  -webkit-animation: background-shift 15s ease infinite;
          animation: background-shift 15s ease infinite;
}
.section__background-image {
  -o-object-fit: cover;
     object-fit: cover;
}
.section__background-image.section__background-image--align-top {
  -o-object-position: top;
     object-position: top;
}
.section__background-image.section__background-image--align-bottom {
  -o-object-position: bottom;
     object-position: bottom;
}
.section__background-image.section__background-image--zoom {
  -webkit-animation: image-zoom-in 6s ease-in-out 0s both;
          animation: image-zoom-in 6s ease-in-out 0s both;
}
.section__background-slider {
  pointer-events: none;
}
.section__background-slider .swiper {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.section__background-slider .swiper-slide {
  overflow: hidden;
}
.section__background-slider .section__background-image--zoom {
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
}
.section__background-key-visual {
  display: flex;
  align-items: center;
  justify-content: center;
}
.section__background-video {
  overflow: hidden;
}
.section__background-video.section__background-video--align-top .player {
  -o-object-position: top;
     object-position: top;
}
.section__background-video.section__background-video--align-bottom .player {
  -o-object-position: bottom;
     object-position: bottom;
}
.section__background-video:after {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
}
.section__background-video .player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.section__background-fade-layer {
  background: linear-gradient(to bottom, hsla(0deg, 0%, 100%, 0.75), hsla(0deg, 0%, 100%, 0.65) 25%);
  background: linear-gradient(to bottom, hsla(var(--col-body-bg-hsl), 0.75), hsla(var(--col-body-bg-hsl), 0.65) 25%);
}
.section__background-mask {
  position: absolute;
  bottom: 0;
  left: 62.5%;
  height: 100%;
  aspect-ratio: 1/1;
}
.section__background-mask-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-clip-path: url(#image-clip);
          clip-path: url(#image-clip);
}
.section__inner {
  position: relative;
}
.section__footer {
  margin: var(small-spacing) 0 0;
}
.section__footer.section__footer--small-margin {
  margin: var(x-small-spacing) 0 0;
}

@media only screen and (max-width: 1400px) {
  .section__background-mask:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: linear-gradient(to right, hsl(0, 0%, 100%), transparent 50%);
    background: linear-gradient(to right, var(--col-body-bg), transparent 50%);
  }
}
@media only screen and (max-width: 991px) {
  .section.section--full .section__inner {
    min-height: 0;
  }
}
@media only screen and (max-width: 860px) {
  .section__background.section__background--half {
    left: 50%;
    width: 50%;
  }
}
@media only screen and (max-width: 767px) {
  .section__background.section__background--overflow {
    top: 0;
    height: 110%;
  }
  .section__background.section__background--half {
    position: relative;
    left: 0;
    width: 100%;
    height: auto;
    aspect-ratio: 3/2;
  }
  .section__background.section__background--half[\:has\(.key-visual\)] {
    margin-top: 8em;
    margin-top: var(--masthead-height);
    margin-bottom: -1em;
  }
  .section__background.section__background--half[\:has\(.key-visual\)] {
    margin-top: 8em;
    margin-top: var(--masthead-height);
    margin-bottom: -1em;
  }
  .section__background.section__background--half:has(.key-visual) {
    margin-top: 8em;
    margin-top: var(--masthead-height);
    margin-bottom: -1em;
  }
  .section__background.section__background--half[\:has\(.key-visual\)] .section__background-fade-layer {
    display: none;
  }
  .section__background.section__background--half:has(.key-visual) .section__background-fade-layer {
    display: none;
  }
  .section__background.section__background--half ~ .section__inner {
    padding-top: Max(4vw, 2.5em) !important;
    padding-top: var(--small-spacing) !important;
  }
  .section__background.section__background--half ~ .section__inner > .container {
    padding-top: 0 !important;
  }
  .section__background.section__background--half .section__background-fade-layer:before {
    background: linear-gradient(to bottom, hsl(0, 0%, 100%), transparent calc(2 * 8em));
    background: linear-gradient(to bottom, var(--col-body-bg), transparent calc(2 * var(--masthead-height)));
  }
  .section__background-mask {
    left: 50%;
    height: 75%;
  }
}
@media only screen and (max-width: 480px) {
  .section__background.section__background--half[\:not-has\(.key-visual\)] {
    aspect-ratio: 4/3;
  }
  .section__background.section__background--half:not(:has(.key-visual)) {
    aspect-ratio: 4/3;
  }
}
/*
==========================================================================
    Buttons
==========================================================================
*/
.btns {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1em;
  margin: 2em 0;
}
.btns:first-child {
  margin-top: 0;
}
.btns:last-child {
  margin-bottom: 0;
}
.btns.btns--large-margin {
  margin: 3em 0;
}
.btns.btns--large-margin:first-child {
  margin-top: 0;
}
.btns.btns--large-margin:last-child {
  margin-bottom: 0;
}
.btns.btns--large-margin-top {
  margin-top: 3em;
}
.btns.btns--large-margin-bottom {
  margin-bottom: 3em;
}
.btns.btns--medium-margin {
  margin: 1.5em 0;
}
.btns.btns--medium-margin:first-child {
  margin-top: 0;
}
.btns.btns--medium-margin:last-child {
  margin-bottom: 0;
}
.btns.btns--medium-margin-top {
  margin-top: 1.5em;
}
.btns.btns--medium-margin-bottom {
  margin-bottom: 1.5em;
}
.btns.btns--small-margin {
  margin: 1em 0;
}
.btns.btns--small-margin:first-child {
  margin-top: 0;
}
.btns.btns--small-margin:last-child {
  margin-bottom: 0;
}
.btns.btns--small-margin-top {
  margin-top: 1em;
}
.btns.btns--small-margin-bottom {
  margin-bottom: 1em;
}
.btns.btns--centered {
  justify-content: center;
}
.btns.btns--centered .btns__micro {
  text-align: center;
}
.btns.btns--dont-wrap {
  flex-wrap: nowrap;
}
.btns__micro {
  width: 100%;
  font-size: Max(0.75rem, 12px);
  line-height: 1.5em;
}
.btns__micro.btns__micro--inverted {
  color: #fff;
}

.btn, .content form input[type=button],
.content form input[type=submit],
.content form button[type=submit],
.fields input[type=button],
.fields input[type=submit],
.fields button[type=submit] {
  text-decoration: none !important;
}

.btn, .content form input[type=button],
.content form input[type=submit],
.content form button[type=submit],
.fields input[type=button],
.fields input[type=submit],
.fields button[type=submit] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  position: relative;
  display: inline-block;
  padding: 0.8em 1.75em 0.7em;
  border-radius: 1.5em;
  font-size: 1rem;
  line-height: 1.5em;
  font-weight: 500;
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
  transition: all 0.15s ease-out, top 0s;
}
.btn:disabled, .content form input[type=button]:disabled,
.content form input[type=submit]:disabled,
.content form button[type=submit]:disabled,
.fields input[type=button]:disabled,
.fields input[type=submit]:disabled,
.fields button[type=submit]:disabled, .btn.btn--disabled, .content form input.btn--disabled[type=button],
.content form input.btn--disabled[type=submit],
.content form button.btn--disabled[type=submit],
.fields input.btn--disabled[type=button],
.fields input.btn--disabled[type=submit],
.fields button.btn--disabled[type=submit] {
  top: 0 !important;
}
.btn:disabled, .content form input[type=button]:disabled,
.content form input[type=submit]:disabled,
.content form button[type=submit]:disabled,
.fields input[type=button]:disabled,
.fields input[type=submit]:disabled,
.fields button[type=submit]:disabled, .btn.btn--disabled, .content form input.btn--disabled[type=button],
.content form input.btn--disabled[type=submit],
.content form button.btn--disabled[type=submit],
.fields input.btn--disabled[type=button],
.fields input.btn--disabled[type=submit],
.fields button.btn--disabled[type=submit] {
  opacity: 0.25;
  cursor: not-allowed;
}
.btn.btn--default:not(:disabled):not(.btn--disabled):hover, .content form input.btn[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form input.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form button.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input.btn[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields button.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover, .content form input.btn--default[type=button]:not(:disabled):not(.btn--disabled):hover, .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form .fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form .fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields .content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form .fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields .content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--default[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form .fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields .content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form .fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields .content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form .fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover, .btn.btn--default:not(:disabled):not(.btn--disabled):focus, .content form input.btn[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form input.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form button.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input.btn[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields button.btn[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus, .content form input.btn--default[type=button]:not(:disabled):not(.btn--disabled):focus, .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form .fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form .fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields .content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form .fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields .content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--default[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form .fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields .content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form .fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields .content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form .fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus, .btn.btn--primary:not(:disabled):not(.btn--disabled):hover, .content form input.btn[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form input.btn[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form button.btn[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input.btn[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input.btn[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields button.btn[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary), .content form input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):hover, .content form input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form .fields input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields .content form input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form .fields input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields .content form input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form .fields button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields .content form button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields .content form input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form .fields input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields .content form input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form .fields input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields .content form button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form .fields button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary), .btn.btn--primary:not(:disabled):not(.btn--disabled):focus, .content form input.btn[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form input.btn[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form button.btn[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input.btn[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input.btn[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields button.btn[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary), .content form input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):focus, .content form input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form .fields input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields .content form input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form .fields input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields .content form input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form .fields button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields .content form button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields .content form input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form .fields input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields .content form input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form .fields input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields .content form button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form .fields button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary), .btn.btn--secondary:not(:disabled):not(.btn--disabled):hover, .content form input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):hover,
.content form input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover, .btn.btn--secondary:not(:disabled):not(.btn--disabled):focus, .content form input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):focus,
.content form input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus, .btn.btn--tertiary:not(:disabled):not(.btn--disabled):hover, .content form input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):hover,
.content form input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover, .btn.btn--tertiary:not(:disabled):not(.btn--disabled):focus, .content form input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):focus,
.content form input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus {
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}
.btn.btn--default,
.fields input.btn[type=button].gform-theme-button--secondary,
.fields input.btn[type=submit].gform-theme-button--secondary,
.fields button.btn[type=submit].gform-theme-button--secondary, .content form input.btn--default[type=button], .content form input[type=button].gform-theme-button--secondary,
.content form input.btn--default[type=submit],
.content form input[type=submit].gform-theme-button--secondary,
.content form button.btn--default[type=submit],
.content form button[type=submit].gform-theme-button--secondary,
.fields input.btn--default[type=button],
.fields input[type=button].gform-theme-button--secondary,
.fields input[type=button][type=submit].gform-theme-button--secondary,
.fields input.btn--default[type=submit],
.fields input[type=submit].gform-theme-button--secondary,
.fields button.btn--default[type=submit],
.fields button[type=submit].gform-theme-button--secondary {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  box-shadow: 0 0 0 0 hsl(200, 5%, 95%), 0 0 0 0 hsl(200, 5%, 95%);
  box-shadow: 0 0 0 0 var(--col-grey-x-light), 0 0 0 0 var(--col-grey-x-light);
}
.btn.btn--default:not(:disabled):not(.btn--disabled):hover, .content form input.btn--default[type=button]:not(:disabled):not(.btn--disabled):hover, .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.content form button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--default[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover,
.fields button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):hover, .btn.btn--default:not(:disabled):not(.btn--disabled):focus, .content form input.btn--default[type=button]:not(:disabled):not(.btn--disabled):focus, .content form input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.content form button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--default[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields input[type=button].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields input[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus,
.fields button.btn--default[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields button[type=submit].gform-theme-button--secondary:not(:disabled):not(.btn--disabled):focus {
  box-shadow: -0.25em -0.25em 0 0 hsl(200, 5%, 90%), 0.25em 0.25em 0 0 hsl(200, 5%, 90%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-grey-light), 0.25em 0.25em 0 0 var(--col-grey-light);
}
.btn.btn--primary,
.fields input.btn[type=button]:not(.gform-theme-button--secondary),
.fields input.btn[type=submit]:not(.gform-theme-button--secondary),
.fields button.btn[type=submit]:not(.gform-theme-button--secondary), .content form input.btn--primary[type=button], .content form input[type=button]:not(.gform-theme-button--secondary),
.content form input.btn--primary[type=submit],
.content form input[type=submit]:not(.gform-theme-button--secondary),
.content form button.btn--primary[type=submit],
.content form button[type=submit]:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=button],
.fields input[type=button]:not(.gform-theme-button--secondary),
.fields input[type=button][type=submit]:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=submit],
.fields input[type=submit]:not(.gform-theme-button--secondary),
.fields button.btn--primary[type=submit],
.fields button[type=submit]:not(.gform-theme-button--secondary) {
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  color: #fff;
  box-shadow: 0 0 0 0 hsl(28, 97%, 52%), 0 0 0 0 hsl(28, 97%, 52%);
  box-shadow: 0 0 0 0 var(--col-prim), 0 0 0 0 var(--col-prim);
}
.btn.btn--primary:not(:disabled):not(.btn--disabled):hover, .content form input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):hover, .content form input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.content form button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields input[type=button]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields input[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary),
.fields button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields button[type=submit]:not(:disabled):not(.btn--disabled):hover:not(.gform-theme-button--secondary), .btn.btn--primary:not(:disabled):not(.btn--disabled):focus, .content form input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):focus, .content form input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.content form button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields input[type=button]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields input.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields input[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary),
.fields button.btn--primary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields button[type=submit]:not(:disabled):not(.btn--disabled):focus:not(.gform-theme-button--secondary) {
  box-shadow: -0.25em -0.25em 0 0 hsl(28, 97%, 52%), 0.25em 0.25em 0 0 hsl(28, 97%, 52%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-prim), 0.25em 0.25em 0 0 var(--col-prim);
}
.btn.btn--secondary, .content form input.btn--secondary[type=button],
.content form input.btn--secondary[type=submit],
.content form button.btn--secondary[type=submit],
.fields input.btn--secondary[type=button],
.fields input.btn--secondary[type=submit],
.fields button.btn--secondary[type=submit] {
  background-color: hsl(177, 57%, 42%);
  background-color: var(--col-sec);
  color: #fff;
  box-shadow: 0 0 0 0 hsl(177, 57%, 42%), 0 0 0 0 hsl(177, 57%, 42%);
  box-shadow: 0 0 0 0 var(--col-sec), 0 0 0 0 var(--col-sec);
}
.btn.btn--secondary:not(:disabled):not(.btn--disabled):hover, .content form input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):hover,
.content form input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):hover, .btn.btn--secondary:not(:disabled):not(.btn--disabled):focus, .content form input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):focus,
.content form input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--secondary[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields button.btn--secondary[type=submit]:not(:disabled):not(.btn--disabled):focus {
  box-shadow: -0.25em -0.25em 0 0 hsl(177, 57%, 42%), 0.25em 0.25em 0 0 hsl(177, 57%, 42%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-sec), 0.25em 0.25em 0 0 var(--col-sec);
}
.btn.btn--tertiary, .content form input.btn--tertiary[type=button],
.content form input.btn--tertiary[type=submit],
.content form button.btn--tertiary[type=submit],
.fields input.btn--tertiary[type=button],
.fields input.btn--tertiary[type=submit],
.fields button.btn--tertiary[type=submit] {
  background-color: hsl(355, 98%, 74%);
  background-color: var(--col-tert);
  color: #fff;
  box-shadow: 0 0 0 0 hsl(355, 98%, 74%), 0 0 0 0 hsl(355, 98%, 74%);
  box-shadow: 0 0 0 0 var(--col-tert), 0 0 0 0 var(--col-tert);
}
.btn.btn--tertiary:not(:disabled):not(.btn--disabled):hover, .content form input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):hover,
.content form input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.content form button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):hover,
.fields input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover,
.fields button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):hover, .btn.btn--tertiary:not(:disabled):not(.btn--disabled):focus, .content form input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):focus,
.content form input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.content form button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--tertiary[type=button]:not(:disabled):not(.btn--disabled):focus,
.fields input.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus,
.fields button.btn--tertiary[type=submit]:not(:disabled):not(.btn--disabled):focus {
  box-shadow: -0.25em -0.25em 0 0 hsl(355, 98%, 74%), 0.25em 0.25em 0 0 hsl(355, 98%, 74%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-tert), 0.25em 0.25em 0 0 var(--col-tert);
}
.btn.btn--x-small, .content form input.btn--x-small[type=button],
.content form input.btn--x-small[type=submit],
.content form button.btn--x-small[type=submit],
.fields input.btn--x-small[type=button],
.fields input.btn--x-small[type=submit],
.fields button.btn--x-small[type=submit] {
  font-size: Max(0.75rem, 12px);
}
.btn.btn--small, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input.btn[type=button], .content form input.btn--small[type=button], .content form .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type=button], .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .content form input[type=button],
.content form input.btn--small[type=submit],
.content form button.btn--small[type=submit],
.fields input.btn--small[type=button],
.fields .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type=button],
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .fields input[type=button],
.fields input.btn--small[type=submit],
.fields button.btn--small[type=submit] {
  font-size: Max(0.875rem, 12px);
}
.btn.btn--large, .content form input.btn--large[type=button],
.content form input.btn--large[type=submit],
.content form button.btn--large[type=submit],
.fields input.btn--large[type=button],
.fields input.btn--large[type=submit],
.fields button.btn--large[type=submit] {
  font-size: 1.125rem;
}
.btn.btn--x-large, .content form input.btn--x-large[type=button],
.content form input.btn--x-large[type=submit],
.content form button.btn--x-large[type=submit],
.fields input.btn--x-large[type=button],
.fields input.btn--x-large[type=submit],
.fields button.btn--x-large[type=submit] {
  font-size: 1.25rem;
}
.btn.btn--small-padding, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input.btn[type=button], .content form input.btn--small-padding[type=button], .content form .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type=button], .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .content form input[type=button],
.content form input.btn--small-padding[type=submit],
.content form button.btn--small-padding[type=submit],
.fields input.btn--small-padding[type=button],
.fields .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type=button],
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .fields input[type=button],
.fields input.btn--small-padding[type=submit],
.fields button.btn--small-padding[type=submit] {
  padding: 0.6em 1.125em 0.5em;
}
.btn.btn--flex, .content form input.btn--flex[type=button],
.content form input.btn--flex[type=submit],
.content form button.btn--flex[type=submit],
.fields input.btn--flex[type=button],
.fields input.btn--flex[type=submit],
.fields button.btn--flex[type=submit] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1em;
}
.btn.btn--wide, .content form input.btn--wide[type=button],
.content form input.btn--wide[type=submit],
.content form button.btn--wide[type=submit],
.fields input.btn--wide[type=button],
.fields input.btn--wide[type=submit],
.fields button.btn--wide[type=submit], .btn.btn--full, .content form input.btn--full[type=button],
.content form input.btn--full[type=submit],
.content form button.btn--full[type=submit],
.fields input.btn--full[type=button],
.fields input.btn--full[type=submit],
.fields button.btn--full[type=submit] {
  width: 100%;
  padding-left: 1em;
  padding-right: 1em;
}
.btn.btn--grow, .content form input.btn--grow[type=button],
.content form input.btn--grow[type=submit],
.content form button.btn--grow[type=submit],
.fields input.btn--grow[type=button],
.fields input.btn--grow[type=submit],
.fields button.btn--grow[type=submit] {
  flex-grow: 1;
}

/* == When screen is 480px or smaller == */
@media only screen and (max-width: 480px) {
  .btns.btns--large-margin {
    margin: 2em 0;
  }

  .btn:not(.btn--dont-expand), .content form input[type=button]:not(.btn--dont-expand),
.content form input[type=submit]:not(.btn--dont-expand),
.content form button[type=submit]:not(.btn--dont-expand),
.fields input[type=button]:not(.btn--dont-expand),
.fields input[type=submit]:not(.btn--dont-expand),
.fields button[type=submit]:not(.btn--dont-expand) {
    width: 100% !important;
    padding-left: 0.75em !important;
    padding-right: 0.75em !important;
  }
  .btn.btn--large, .content form input.btn--large[type=button],
.content form input.btn--large[type=submit],
.content form button.btn--large[type=submit],
.fields input.btn--large[type=button],
.fields input.btn--large[type=submit],
.fields button.btn--large[type=submit], .btn.btn--x-large, .content form input.btn--x-large[type=button],
.content form input.btn--x-large[type=submit],
.content form button.btn--x-large[type=submit],
.fields input.btn--x-large[type=button],
.fields input.btn--x-large[type=submit],
.fields button.btn--x-large[type=submit] {
    font-size: 1rem;
  }
}
/*
==========================================================================
    Forms - Base element styling
==========================================================================
*/
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]),
.content form textarea,
.content form select,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]),
.fields textarea,
.fields select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  width: 100%;
  height: 3.5em;
  padding: 0.125em 1.25em 0;
  border-radius: 0.5em;
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
  color: var(--col-text);
  text-align: left;
  transition: all 0.15s ease-out, box-shadow 0s;
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):hover,
.content form textarea:hover,
.content form select:hover,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):hover,
.fields textarea:hover,
.fields select:hover {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):focus,
.content form textarea:focus,
.content form select:focus,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):focus,
.fields textarea:focus,
.fields select:focus {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.15em hsl(0, 0%, 100%), 0 0 0 0.15em hsl(28, 97%, 52%);
  box-shadow: inset 0 0 0 0.15em var(--col-body-bg), 0 0 0 0.15em var(--col-prim);
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range])::-webkit-input-placeholder,
.content form textarea::-webkit-input-placeholder,
.content form select::-webkit-input-placeholder,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range])::-webkit-input-placeholder,
.fields textarea::-webkit-input-placeholder,
.fields select::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range])::-moz-placeholder,
.content form textarea::-moz-placeholder,
.content form select::-moz-placeholder,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range])::-moz-placeholder,
.fields textarea::-moz-placeholder,
.fields select::-moz-placeholder {
  /* Firefox 19+ */
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):-ms-input-placeholder,
.content form textarea:-ms-input-placeholder,
.content form select:-ms-input-placeholder,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):-ms-input-placeholder,
.fields textarea:-ms-input-placeholder,
.fields select:-ms-input-placeholder {
  /* IE 10+ */
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):-moz-placeholder,
.content form textarea:-moz-placeholder,
.content form select:-moz-placeholder,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):-moz-placeholder,
.fields textarea:-moz-placeholder,
.fields select:-moz-placeholder {
  /* Firefox 18- */
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):disabled,
.content form textarea:disabled,
.content form select:disabled,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):disabled,
.fields textarea:disabled,
.fields select:disabled {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  cursor: not-allowed;
  box-shadow: none;
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):-moz-read-only, .content form textarea:-moz-read-only, .fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):-moz-read-only, .fields textarea:-moz-read-only {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  cursor: not-allowed;
  box-shadow: none;
}
.content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):read-only,
.content form textarea:read-only,
.fields input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]):read-only,
.fields textarea:read-only {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  cursor: not-allowed;
  box-shadow: none;
}
.content form input[type=date]::-webkit-inner-spin-button, .content form input[type=date]::-webkit-calendar-picker-indicator,
.fields input[type=date]::-webkit-inner-spin-button,
.fields input[type=date]::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
          appearance: none;
}
.content form textarea,
.fields textarea {
  height: auto;
  padding: 1.25em;
  line-height: 1.5em;
}
.content form select,
.fields select {
  cursor: pointer;
  padding-right: 2em;
  background-image: url("../img/theme/gf-icon-sort.svg");
  background-position: center right 0.75em;
  background-size: auto 1em;
  background-repeat: no-repeat;
}
/*
==========================================================================
    Forms - custom markup
==========================================================================
*/
.fields {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
.fields .field-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1em;
}
.fields .field-row .field {
  flex: 1 1 0;
  min-width: 250px;
}
.fields .field-row .field.field--small {
  flex-grow: 0.5;
  min-width: 150px;
}
.fields .field-row .field.field--large {
  flex-grow: 2;
  min-width: 350px;
}
.fields .field.field--error .field__input {
  border-color: Tomato !important;
  border-color: var(--col-error) !important;
  color: Tomato !important;
  color: var(--col-error) !important;
}
.fields .field.field--error .field__description.field__description--error-message {
  color: Tomato;
  color: var(--col-error);
}
.fields .field.field--success .field__input {
  border-color: #00b900 !important;
  border-color: var(--col-success) !important;
  color: #00b900 !important;
  color: var(--col-success) !important;
}
.fields .field.field--success .field__description.field__description--error-message {
  color: #00b900;
  color: var(--col-success);
}
.fields .field.field--submit {
  padding-top: 0.5em;
}
.fields .field__label {
  display: block;
  margin: 0.5em 0;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-weight: bold;
}
.fields .field__label:first-child {
  margin-top: 0;
}
.fields .field__label:last-child {
  margin-bottom: 0;
}
.fields .field__label[for] {
  cursor: pointer;
}
.fields .field__label .required {
  position: relative;
  color: Tomato;
  color: var(--col-error);
  font-size: 0.875em;
}
.fields .field__input-container {
  position: relative;
}
.fields .field__input-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 1.5em;
  margin: 1em 0;
}
.fields .field__input-grid:first-child {
  margin-top: 0;
}
.fields .field__input-grid:last-child {
  margin-bottom: 0;
}
.fields .field__input-grid.field__input-grid--small-gap {
  gap: 0.75em;
}
.fields .field__input-grid.field__input-grid--vertical {
  flex-direction: column;
  gap: 1em;
}
.fields .field__options {
  margin: 1em 0;
}
.fields .field__options:first-child {
  margin-top: 0;
}
.fields .field__options:last-child {
  margin-bottom: 0;
}
.fields .field__icon {
  position: absolute;
  top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 1.5em;
  padding-bottom: 0.125em;
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
  font-size: 0.875em;
  line-height: 1em;
  text-align: center;
  pointer-events: none;
}
.fields .field__icon.field__icon--left {
  left: 1em;
}
.fields .field__icon.field__icon--left ~ .field__input {
  padding-left: 3em !important;
}
.fields .field__icon.field__icon--right {
  right: 1em;
}
.fields .field__icon.field__icon--right ~ .field__input {
  padding-right: 3em !important;
}
.fields .field__description {
  margin: 0.75em 0;
  font-size: 0.875em;
  line-height: 1.5em;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
}
.fields .field__description:first-child {
  margin-top: 0;
}
.fields .field__description:last-child {
  margin-bottom: 0;
}
.fields .field__description:empty {
  display: none;
}
.fields .field__description.field__description--error-message {
  font-weight: bold;
}

/*
==========================================================================
    Forms - Gravity Forms markup
==========================================================================
*/
.gform_confirmation_wrapper .gform_confirmation_message {
  color: #00b900;
  color: var(--col-success);
  font-weight: bold;
}

.gform_validation_errors {
  margin: 1.5em 0;
}
.gform_validation_errors:first-child {
  margin-top: 0;
}
.gform_validation_errors:last-child {
  margin-bottom: 0;
}

.gform_submission_error {
  font-size: 1em !important;
}

.gform_submission_error {
  color: Tomato;
  color: var(--col-error);
}

script + .gform_wrapper {
  margin-top: 0 !important;
}

.container > .content > .gform_wrapper,
.container > .columns .content .gform_wrapper {
  border-radius: 2em;
  border: 0.1em solid hsl(200, 5%, 90%);
  border: 0.1em solid var(--col-grey-light);
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
}

.container > .content > .gform_wrapper {
  padding: max(2em, 6vw);
}

.container > .columns .content .gform_wrapper {
  padding: max(2em, min(7.5%, 6vw));
}

.gform_wrapper {
  font-size: 1rem;
  font-weight: normal;
  text-align: left;
}
.gform_wrapper .validation_error {
  margin: 1em 0;
  color: Tomato;
  color: var(--col-error);
}
.gform_wrapper .validation_error:first-child {
  margin-top: 0;
}
.gform_wrapper .validation_error:last-child {
  margin-bottom: 0;
}
.gform_wrapper .gform_hidden,
.gform_wrapper .gfield_visibility_hidden,
.gform_wrapper .admin-hidden-markup,
.gform_wrapper .screen-reader-text {
  display: none !important;
}
.gform_wrapper .gform_heading,
.gform_wrapper .gform_body {
  margin: 0 0 2em;
}
.gform_wrapper .gform_heading:first-child,
.gform_wrapper .gform_body:first-child {
  margin-top: 0;
}
.gform_wrapper .gform_heading:last-child,
.gform_wrapper .gform_body:last-child {
  margin-bottom: 0;
}
.gform_wrapper .gform_heading .gform_title {
  margin: 0;
  font-size: 2em;
}
.gform_wrapper .gform_heading .gform_description {
  display: block;
  margin: 1em 0;
  font-weight: 300;
  line-height: 1.8em;
}
.gform_wrapper .gform_heading .gform_description:first-child {
  margin-top: 0;
}
.gform_wrapper .gform_heading .gform_description:last-child {
  margin-bottom: 0;
}
.gform_wrapper .gform_fields {
  display: flex;
  flex-wrap: wrap;
  gap: 2em 1em;
}
.gform_wrapper .gform_fields .gfield {
  flex: 1 1 100%;
}
.gform_wrapper .gform_fields .gfield.gfield--width-half {
  flex-basis: calc(50% - 1em);
}
.gform_wrapper .gform_fields .gfield.gfield--width-third {
  flex-basis: calc(33.33% - 1em);
}
.gform_wrapper .gform_fields .gfield.gfield--width-quarter {
  flex-basis: calc(25% - 1em);
}
.gform_wrapper .gform_fields .gfield.no_label .gfield_label {
  display: none;
}
.gform_wrapper .gform_fields .gfield.gfield_error .ginput_container.ginput_complex .error_icon {
  top: 10px !important;
}
.gform_wrapper .gform_fields .gfield.gfield_error .ginput_container.ginput_complex .error_icon {
  right: calc( 100% + .5em );
  margin-right: -5px;
}
.gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) {
  position: relative;
}
.gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]),
.gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) textarea {
  border: 0.1em solid Tomato;
  border: 0.1em solid var(--col-error);
  color: Tomato;
  color: var(--col-error);
}
.gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) .error_icon {
  top: 0;
  right: calc(100% + .5em);
}
.gform_wrapper .gform_fields .gfield.gfield_error .gfield_description.validation_message {
  color: Tomato;
  color: var(--col-error);
  font-weight: bold;
}
.gform_wrapper .gform_fields .gfield.gfield_html {
  padding: 1em 1.35em;
  border-radius: 0.75em;
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 0.875em;
  line-height: 1.8em;
}
.gform_wrapper .gform_fields .gfield.gsection .gsection_title {
  font-size: 1.125em;
  font-weight: bold;
}
.gform_wrapper .gform_fields .gfield.gsection .gsection_description {
  margin: 0.75em 0;
  font-size: 0.875em;
}
.gform_wrapper .gform_fields .gfield.gsection .gsection_description:first-child {
  margin-top: 0;
}
.gform_wrapper .gform_fields .gfield.gsection .gsection_description:last-child {
  margin-bottom: 0;
}
.gform_wrapper .gform_fields .gfield.gfield--type-time .ginput_complex .ginput_container {
  width: max(5em, 15%);
}
.gform_wrapper .gform_fields .gfield .gfield_label {
  display: block;
  padding: 0;
  margin: 0.5em 0;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-weight: bold;
}
.gform_wrapper .gform_fields .gfield .gfield_label:first-child {
  margin-top: 0;
}
.gform_wrapper .gform_fields .gfield .gfield_label:last-child {
  margin-bottom: 0;
}
.gform_wrapper .gform_fields .gfield .gfield_label .gfield_required {
  margin-left: 0.25em;
  color: Tomato;
  color: var(--col-error);
  font-size: Max(0.75rem, 12px);
}
.gform_wrapper .gform_fields .gfield .clear-multi {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: -10px -5px;
}
.gform_wrapper .gform_fields .gfield .clear-multi div {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 10px 5px;
}
.gform_wrapper .gform_fields .gfield .clear-multi div * {
  margin: 0 5px;
}
.gform_wrapper .gform_fields .gfield .clear-multi div *:first-child {
  margin-left: 0;
}
.gform_wrapper .gform_fields .gfield .clear-multi div *:last-child {
  margin-right: 0;
}
.gform_wrapper .gform_fields .gfield .clear-multi div i {
  font-style: normal;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox {
  list-style: none;
  margin: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox .gchoice, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox > li,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox .gchoice {
  margin: 0.5em 0 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li:first-child,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox .gchoice:first-child, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox > li:first-child,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox .gchoice:first-child {
  margin-top: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li:last-child,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox .gchoice:last-child, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox > li:last-child,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox .gchoice:last-child {
  margin-bottom: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox > li:before,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox .gfield_checkbox .gchoice:before, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox > li:before,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent .gfield_checkbox .gchoice:before {
  display: none;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox input[type=checkbox], .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent input[type=checkbox] {
  margin-right: 0.35em;
  font-size: 2em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox input[type=checkbox]:checked ~ label, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent input[type=checkbox]:checked ~ label {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-weight: bold;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_checkbox label, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_consent label {
  font-weight: normal;
  cursor: pointer;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio {
  list-style: none;
  margin: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio .gchoice {
  margin: 0.5em 0 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li:first-child,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio .gchoice:first-child {
  margin-top: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li:last-child,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio .gchoice:last-child {
  margin-bottom: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio > li:before,
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio .gfield_radio .gchoice:before {
  display: none;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio input[type=radio] {
  margin-right: 0.35em;
  font-size: 2em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio input[type=radio]:checked ~ label {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-weight: bold;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_radio label {
  font-weight: normal;
  cursor: pointer;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_select {
  position: relative;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_multiselect select {
  height: 110px;
  padding: 10px;
  resize: none;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_multiselect select option {
  padding: 0.25em 0.5em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_date {
  position: relative;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_date input.datepicker:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=submit]):not([type=file]):not([type=reset]):not([type=range]) {
  padding-left: 2.5em;
  background-image: url("../img/theme/gf-icon-calendar.svg");
  background-position: center left 0.75em;
  background-size: auto 1em;
  background-repeat: no-repeat;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload[\:not-has\(.gform_drop_area\)] {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25em 1em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload:not(:has(.gform_drop_area)) {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25em 1em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload[\:not-has\(.gform_drop_area\)] .gfield_description {
  width: 100%;
  margin: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload:not(:has(.gform_drop_area)) .gfield_description {
  width: 100%;
  margin: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload input[type=file] {
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 0.875em;
  line-height: 1ex;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100px;
  border: 2px dashed hsl(200, 5%, 85%);
  border: 2px dashed var(--col-grey);
  background-color: rgba(255, 255, 255, 0.5);
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .gform_drop_instructions {
  margin: 5px 10px;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 0.875em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area input[type=button] {
  padding: 0.5em 1em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .ginput_preview_list {
  width: 100%;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .ginput_preview {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25em 1em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_fileupload .ginput_preview .gfield_fileupload_filename {
  flex-grow: 1;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list {
  width: 100%;
  margin: 0;
  border: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tr {
  background: none;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list thead tr {
  vertical-align: bottom;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list thead tr th {
  padding-bottom: 0.5em;
  font-size: 0.875em;
  line-height: 1.3em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group:first-child td {
  padding-top: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td {
  padding: 0.75em 0.75em 0 0;
  border: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td:last-child {
  padding-right: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td.gfield_list_icons {
  width: 1em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_container_list table.gfield_list tbody tr.gfield_list_group td.gfield_list_icons img {
  display: inline;
  margin: 0;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 1em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex.ginput_container_name span.name_middle {
  flex-grow: 0.5;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span {
  flex: 1;
  display: block;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span.ginput_full {
  flex: 1 0 100%;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span.ginput_left, .gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex span.ginput_right {
  flex: 1 0 calc(50% - .75em);
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex label {
  display: block;
  margin: 0.5em 0 0;
  font-size: 0.875em;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex .gf_clear_complex {
  display: none;
}
.gform_wrapper .gform_fields .gfield .ginput_container.ginput_complex .hour_minute_colon {
  align-self: center;
}
.gform_wrapper .gform_fields .gfield .gfield_description {
  margin: 0.75em 0;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 0.875em;
  font-weight: normal;
}
.gform_wrapper .gform_fields .gfield .gfield_description:first-child {
  margin-top: 0;
}
.gform_wrapper .gform_fields .gfield .gfield_description:last-child {
  margin-bottom: 0;
}
.gform_wrapper fieldset {
  border: 0;
}
.gform_wrapper .gf_progressbar_wrapper {
  margin-bottom: 2em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em 1.5em;
}
.gform_wrapper .gf_progressbar_wrapper .gf_progressbar {
  position: relative;
  display: none;
  height: 1.25em;
  min-width: min(10em, 100%);
  flex-grow: 1;
  border-radius: 0.35em;
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  overflow: hidden;
}
.gform_wrapper .gf_progressbar_wrapper .gf_progressbar_title {
  flex-shrink: 0;
  max-width: 100%;
  margin: 0;
  font-size: 0.875em;
  font-weight: bold;
}
.gform_wrapper .gf_progressbar_wrapper .gf_progressbar_percentage {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 0.125em;
  background-color: hsl(177, 57%, 42%);
  background-color: var(--col-sec);
  border-radius: inherit;
  text-align: center;
  overflow: clip;
}
.gform_wrapper .gf_progressbar_wrapper .gf_progressbar_percentage span {
  color: #fff;
  font-size: 0.75em;
  line-height: 1em;
  font-weight: bold;
}
.gform_wrapper .gform_page_fields {
  margin-bottom: 2em;
}
.gform_wrapper .gform_page_footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75em 1em;
}
.gform_wrapper .gform_page_footer input:not(:first-child):last-of-type {
  margin-left: auto;
}

.gform_validation_container,
.gform_wrapper .gform_validation_container,
body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container,
body .gform_wrapper li.gform_validation_container,
body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container {
  position: absolute !important;
}

.gform_validation_container,
.gform_wrapper .gform_validation_container,
body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container,
body .gform_wrapper li.gform_validation_container,
body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container {
  left: -9000px;
  height: 0;
  overflow: hidden;
}

label[for]:hover {
  cursor: pointer;
}

.ui-datepicker {
  display: none;
  width: 300px;
  max-width: 100%;
  padding: 15px;
  border-radius: 0.5em;
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(0, 0, 0, 0.05);
}
.ui-datepicker .ui-datepicker-header {
  padding-bottom: 15px;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next {
  display: none;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-title {
  display: flex;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-title select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  flex: 1;
  height: 30px;
  margin: 0 4px;
  padding: 0 10px;
  border-radius: 0.25em;
  border: 1px solid hsl(200, 5%, 80%);
  border: 1px solid var(--col-grey-dark);
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 0.875em;
  transition: all 0.15s ease-out;
  cursor: pointer;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-title select:first-child {
  margin-left: 0;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-title select:last-child {
  margin-right: 0;
}
.ui-datepicker .ui-datepicker-header .ui-datepicker-title select:hover, .ui-datepicker .ui-datepicker-header .ui-datepicker-title select:focus {
  border-color: hsl(28, 97%, 52%);
  border-color: var(--col-prim);
}
.ui-datepicker .ui-datepicker-calendar {
  width: 100%;
  border: 1px solid hsl(200, 5%, 80%);
  border: 1px solid var(--col-grey-dark);
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  font-size: 0.875em;
}
.ui-datepicker .ui-datepicker-calendar tr {
  border-bottom: 1px solid hsl(200, 5%, 85%);
  border-bottom: 1px solid var(--col-grey);
}
.ui-datepicker .ui-datepicker-calendar tr:last-child {
  border: 0;
}
.ui-datepicker .ui-datepicker-calendar tr th {
  padding: 10px 0;
  border-bottom: 1px solid hsl(200, 5%, 85%);
  border-bottom: 1px solid var(--col-grey);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}
.ui-datepicker .ui-datepicker-calendar tr th,
.ui-datepicker .ui-datepicker-calendar tr td {
  text-align: center;
}
.ui-datepicker .ui-datepicker-calendar tr th.ui-state-disabled,
.ui-datepicker .ui-datepicker-calendar tr td.ui-state-disabled {
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
}
.ui-datepicker .ui-datepicker-calendar tr th a,
.ui-datepicker .ui-datepicker-calendar tr td a {
  display: block;
  padding: 6px 0;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}
.ui-datepicker .ui-datepicker-calendar tr th a:hover, .ui-datepicker .ui-datepicker-calendar tr th a:focus,
.ui-datepicker .ui-datepicker-calendar tr td a:hover,
.ui-datepicker .ui-datepicker-calendar tr td a:focus {
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
  text-decoration: none;
}
.ui-datepicker .ui-datepicker-calendar tr th a.ui-state-highlight,
.ui-datepicker .ui-datepicker-calendar tr td a.ui-state-highlight {
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  color: #fff;
}
.ui-datepicker .ui-datepicker-calendar tr th a.ui-state-active,
.ui-datepicker .ui-datepicker-calendar tr td a.ui-state-active {
  background-color: hsl(177, 57%, 42%);
  background-color: var(--col-sec);
  color: #fff;
}

@media only screen and (max-width: 767px) {
  .gform_wrapper .gform_fields .gfield.gfield_error .ginput_container:not(.ginput_container_checkbox):not(.ginput_container_radio):not(.ginput_container_select) .error_icon {
    right: auto;
    top: 50%;
    left: 0;
    height: 1.5em;
    width: 1.5em;
    margin: -0.75em 0 0 -0.75em;
    border-radius: 50%;
    background-color: Tomato;
    background-color: var(--col-error);
    color: #fff;
    font-size: Max(0.75rem, 12px);
  }
}
@container content (max-width: 28em) {
  .container > .content > .gform_wrapper {
    padding: max(1.5em, min(7.5%, 6vw)) !important;
  }

  .content form input:not([type=radio]):not([type=checkbox]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=range]),
.content form select {
    height: 3em;
    padding: 0 1em;
  }
  .content form textarea {
    padding: 1em;
  }

  .gform_wrapper .gform_heading .gform_title {
    font-size: 2em;
  }
  .gform_wrapper .gform_body .gform_fields .gfield.gfield--width-half, .gform_wrapper .gform_body .gform_fields .gfield.gfield--width-third, .gform_wrapper .gform_body .gform_fields .gfield.gfield--width-quarter {
    flex-basis: 100%;
  }
  .gform_wrapper .gform_body .gform_fields .gfield .ginput_container.ginput_complex span.name_last, .gform_wrapper .gform_body .gform_fields .gfield .ginput_container.ginput_complex span.ginput_left, .gform_wrapper .gform_body .gform_fields .gfield .ginput_container.ginput_complex span.ginput_right {
    flex: 1 0 100%;
  }
  .gform_wrapper .gform_body .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area {
    display: block;
    text-align: center;
    height: auto;
    padding: 5%;
  }
  .gform_wrapper .gform_body .gform_fields .gfield .ginput_container.ginput_container_fileupload .gform_drop_area .gform_drop_instructions {
    display: block;
    margin: 0 0 0.75em;
  }
}
/*
==========================================================================
	Filters
==========================================================================
*/
/*
==========================================================================
    Columns
==========================================================================
*/
.columns {
  --row-gap: 3em;
  --column-gap: 3em;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--row-gap) var(--column-gap);
  margin: 3em 0;
}
.columns:first-child {
  margin-top: 0;
}
.columns:last-child {
  margin-bottom: 0;
}
.columns.columns--align-center {
  align-items: center;
}
.columns.columns--align-end {
  align-items: flex-end;
}
.columns.columns--align-stretch {
  align-items: stretch;
}
.columns.columns--justify-center {
  justify-content: center;
}
.columns.columns--justify-end {
  justify-content: flex-end;
}
.columns.columns--order-reverse {
  flex-direction: row-reverse;
  flex-wrap: wrap-reverse;
}
.columns.columns--large-gap {
  --column-gap: 6em;
}
.columns .column {
  position: relative;
  flex: 1;
  min-width: 12em;
}
.columns .column.column--small, .columns .column.column--quarter, .columns .column.column--third, .columns .column.column--half {
  min-width: 0;
}
.columns .column.column--small {
  flex-grow: 0;
  flex-basis: auto;
}
.columns .column.column--quarter {
  flex-grow: 0;
  flex-basis: calc(25% - var(--column-gap)*3/4);
}
.columns .column.column--third {
  flex-grow: 0;
  flex-basis: calc(33.33% - var(--column-gap)*2/3);
}
.columns .column.column--half {
  flex-grow: 0;
  flex-basis: calc(50% - var(--column-gap)/2);
}
.columns .column.column--align-start {
  align-self: flex-start;
}
.columns__sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 8em;
  bottom: 0;
}

@media only screen and (max-width: 1200px) {
  .columns .column.column--quarter {
    flex-basis: calc(33.33% - var(--column-gap)*2/3);
  }
}
@media only screen and (max-width: 991px) {
  .columns.columns--small-gap-mobile {
    --row-gap: 2em;
    --column-gap: 2em;
  }
  .columns .column.column--third {
    flex-basis: calc(50% - var(--column-gap)/2);
  }
  .columns .column.column--half {
    flex-basis: 100%;
  }

  .section--hero .columns .column--third,
.section--hero .columns .column--quarter {
    flex-basis: 100% !important;
  }
}
@media only screen and (max-width: 767px) {
  .columns .column.column--quarter {
    flex-basis: calc(50% - var(--column-gap)/2);
  }
}
@media only screen and (max-width: 580px) {
  .columns .column.column--third {
    flex-basis: 100%;
  }
}
@media only screen and (max-width: 480px) {
  .columns .column.column--quarter {
    flex-basis: 100%;
  }
}
/*
==========================================================================
    Masthead
==========================================================================
*/
:root {
  --masthead-height: 8em;
}

.masthead {
  position: relative;
  z-index: 50;
  top: 0;
  height: 8em;
  height: var(--masthead-height);
}
.masthead.masthead--float {
  position: absolute;
  left: 0;
  width: 100%;
}
.masthead.masthead--float + .section .section__inner .container {
  padding-top: 8em;
  padding-top: var(--masthead-height);
}
.masthead:not(.masthead--float) + .section:not(.section--hero):not(.section--padding)[\:not-has\(.section__background-mask\)]:not(.nomargin) {
  margin-top: Max(4vw, 2.5em);
  margin-top: var(--small-spacing);
}
.masthead:not(.masthead--float) + .section:not(.section--hero):not(.section--padding)[\:not-has\(.section__background-mask\)]:not(.nomargin) {
  margin-top: Max(4vw, 2.5em);
  margin-top: var(--small-spacing);
}
.masthead:not(.masthead--float) + .section:not(.section--hero):not(.section--padding):not(:has(.section__background-mask)):not(.nomargin) {
  margin-top: Max(4vw, 2.5em);
  margin-top: var(--small-spacing);
}
.masthead:not(.masthead--float) + .section:not(.section--hero).section--padding .section__inner {
  padding-top: Max(4vw, 2.5em);
  padding-top: var(--small-spacing);
}
.masthead__logo {
  transition: opacity 0.15s ease-out;
}
.masthead__logo.masthead__logo--full {
  width: 18em;
}
.masthead__logo.masthead__logo--compact {
  display: none;
  width: 7em;
}
.masthead__logo.masthead__logo--kingsday:before, .masthead__logo.masthead__logo--memorial:before, .masthead__logo.masthead__logo--sinterklaas:before, .masthead__logo.masthead__logo--christmas:before, .masthead__logo.masthead__logo--newyear:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: auto;
  aspect-ratio: 1/1;
  background: center/contain no-repeat;
}
.masthead__logo.masthead__logo--kingsday:before {
  background-image: url("../img/theme/dbk-kingsday.png");
  -webkit-transform: translate3d(-45%, -53%, 0);
          transform: translate3d(-45%, -53%, 0);
}
.masthead__logo.masthead__logo--memorial:before {
  background-image: url("../img/theme/dbk-memorial-day.png");
  -webkit-transform: translate3d(-60%, -40%, 0);
          transform: translate3d(-60%, -40%, 0);
}
.masthead__logo.masthead__logo--sinterklaas:before {
  background-image: url("../img/theme/dbk-sinterklaas.png");
  -webkit-transform: translate3d(-50%, -35%, 0);
          transform: translate3d(-50%, -35%, 0);
}
.masthead__logo.masthead__logo--christmas:before {
  background-image: url("../img/theme/dbk-christmas.png");
  -webkit-transform: translate3d(-35%, -25%, 0);
          transform: translate3d(-35%, -25%, 0);
}
.masthead__logo.masthead__logo--newyear:before {
  z-index: -1;
  top: auto;
  bottom: 0;
  height: 125%;
  background-image: url("../img/theme/dbk-newyear.png");
  -webkit-transform: translate3d(-70%, 4%, 0);
          transform: translate3d(-70%, 4%, 0);
}
.masthead__logo img,
.masthead__logo svg {
  display: block;
  width: 100%;
  height: auto;
}
.masthead__logo svg .st0 {
  fill: hsl(200, 15%, 15%);
  fill: var(--col-text);
}
.masthead__logo svg .st1 {
  fill: hsl(28, 97%, 52%);
  fill: var(--col-prim);
}
.masthead__link, .masthead__cta {
  flex-shrink: 0;
}
.masthead__link {
  display: flex;
  align-items: center;
  gap: 0.875em;
  height: 3em;
  padding-top: 0;
  padding-bottom: 0;
}
.masthead__link.masthead__link--phone {
  margin-right: auto;
}
.masthead__link-icon {
  line-height: 1em;
}
.masthead__link-text {
  text-align: left;
}
.masthead__link-text small {
  display: block;
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
  font-size: Max(0.65em, 10px);
  line-height: 1em;
  font-weight: 400;
}
.masthead__link.masthead__link--menu, .masthead__cta {
  opacity: 0;
  pointer-events: none;
}
.masthead .container {
  height: inherit;
  display: flex;
  align-items: center;
  gap: 2em;
}
.masthead .container .btn + .btn, .masthead .container .content form input[type=button] + .btn, .content form .masthead .container input[type=button] + .btn,
.masthead .container .content form input[type=submit] + .btn,
.content form .masthead .container input[type=submit] + .btn,
.masthead .container .content form button[type=submit] + .btn,
.content form .masthead .container button[type=submit] + .btn,
.masthead .container .fields input[type=button] + .btn,
.fields .masthead .container input[type=button] + .btn,
.masthead .container .fields input[type=submit] + .btn,
.fields .masthead .container input[type=submit] + .btn,
.masthead .container .fields button[type=submit] + .btn,
.fields .masthead .container button[type=submit] + .btn, .masthead .container .content form .btn + input[type=button], .content form .masthead .container .btn + input[type=button], .masthead .container .content form input[type=button] + input[type=button], .content form .masthead .container input[type=button] + input[type=button],
.masthead .container .content form input[type=submit] + input[type=button],
.content form .masthead .container input[type=submit] + input[type=button],
.masthead .container .content form button[type=submit] + input[type=button],
.content form .masthead .container button[type=submit] + input[type=button],
.masthead .container .fields .content form input[type=button] + input[type=button],
.content form .masthead .container .fields input[type=button] + input[type=button],
.fields .masthead .container .content form input[type=button] + input[type=button],
.content form .fields .masthead .container input[type=button] + input[type=button],
.masthead .container .fields .content form input[type=submit] + input[type=button],
.content form .masthead .container .fields input[type=submit] + input[type=button],
.fields .masthead .container .content form input[type=submit] + input[type=button],
.content form .fields .masthead .container input[type=submit] + input[type=button],
.masthead .container .fields .content form button[type=submit] + input[type=button],
.content form .masthead .container .fields button[type=submit] + input[type=button],
.fields .masthead .container .content form button[type=submit] + input[type=button],
.content form .fields .masthead .container button[type=submit] + input[type=button],
.masthead .container .content form .btn + input[type=submit],
.content form .masthead .container .btn + input[type=submit],
.masthead .container .content form input[type=button] + input[type=submit],
.content form .masthead .container input[type=button] + input[type=submit],
.masthead .container .content form input[type=submit] + input[type=submit],
.content form .masthead .container input[type=submit] + input[type=submit],
.masthead .container .content form button[type=submit] + input[type=submit],
.content form .masthead .container button[type=submit] + input[type=submit],
.masthead .container .fields .content form input[type=button] + input[type=submit],
.content form .masthead .container .fields input[type=button] + input[type=submit],
.fields .masthead .container .content form input[type=button] + input[type=submit],
.content form .fields .masthead .container input[type=button] + input[type=submit],
.masthead .container .fields .content form input[type=submit] + input[type=submit],
.content form .masthead .container .fields input[type=submit] + input[type=submit],
.fields .masthead .container .content form input[type=submit] + input[type=submit],
.content form .fields .masthead .container input[type=submit] + input[type=submit],
.masthead .container .fields .content form button[type=submit] + input[type=submit],
.content form .masthead .container .fields button[type=submit] + input[type=submit],
.fields .masthead .container .content form button[type=submit] + input[type=submit],
.content form .fields .masthead .container button[type=submit] + input[type=submit],
.masthead .container .content form .btn + button[type=submit],
.content form .masthead .container .btn + button[type=submit],
.masthead .container .content form input[type=button] + button[type=submit],
.content form .masthead .container input[type=button] + button[type=submit],
.masthead .container .content form input[type=submit] + button[type=submit],
.content form .masthead .container input[type=submit] + button[type=submit],
.masthead .container .content form button[type=submit] + button[type=submit],
.content form .masthead .container button[type=submit] + button[type=submit],
.masthead .container .fields .content form input[type=button] + button[type=submit],
.content form .masthead .container .fields input[type=button] + button[type=submit],
.fields .masthead .container .content form input[type=button] + button[type=submit],
.content form .fields .masthead .container input[type=button] + button[type=submit],
.masthead .container .fields .content form input[type=submit] + button[type=submit],
.content form .masthead .container .fields input[type=submit] + button[type=submit],
.fields .masthead .container .content form input[type=submit] + button[type=submit],
.content form .fields .masthead .container input[type=submit] + button[type=submit],
.masthead .container .fields .content form button[type=submit] + button[type=submit],
.content form .masthead .container .fields button[type=submit] + button[type=submit],
.fields .masthead .container .content form button[type=submit] + button[type=submit],
.content form .fields .masthead .container button[type=submit] + button[type=submit],
.masthead .container .fields .btn + input[type=button],
.fields .masthead .container .btn + input[type=button],
.masthead .container .content form .fields input[type=button] + input[type=button],
.fields .masthead .container .content form input[type=button] + input[type=button],
.content form .masthead .container .fields input[type=button] + input[type=button],
.fields .content form .masthead .container input[type=button] + input[type=button],
.masthead .container .content form .fields input[type=submit] + input[type=button],
.fields .masthead .container .content form input[type=submit] + input[type=button],
.content form .masthead .container .fields input[type=submit] + input[type=button],
.fields .content form .masthead .container input[type=submit] + input[type=button],
.masthead .container .content form .fields button[type=submit] + input[type=button],
.fields .masthead .container .content form button[type=submit] + input[type=button],
.content form .masthead .container .fields button[type=submit] + input[type=button],
.fields .content form .masthead .container button[type=submit] + input[type=button],
.masthead .container .fields input[type=button] + input[type=button],
.fields .masthead .container input[type=button] + input[type=button],
.masthead .container .fields input[type=submit] + input[type=button],
.fields .masthead .container input[type=submit] + input[type=button],
.masthead .container .fields button[type=submit] + input[type=button],
.fields .masthead .container button[type=submit] + input[type=button],
.masthead .container .fields .btn + input[type=submit],
.fields .masthead .container .btn + input[type=submit],
.masthead .container .content form .fields input[type=button] + input[type=submit],
.fields .masthead .container .content form input[type=button] + input[type=submit],
.content form .masthead .container .fields input[type=button] + input[type=submit],
.fields .content form .masthead .container input[type=button] + input[type=submit],
.masthead .container .content form .fields input[type=submit] + input[type=submit],
.fields .masthead .container .content form input[type=submit] + input[type=submit],
.content form .masthead .container .fields input[type=submit] + input[type=submit],
.fields .content form .masthead .container input[type=submit] + input[type=submit],
.masthead .container .content form .fields button[type=submit] + input[type=submit],
.fields .masthead .container .content form button[type=submit] + input[type=submit],
.content form .masthead .container .fields button[type=submit] + input[type=submit],
.fields .content form .masthead .container button[type=submit] + input[type=submit],
.masthead .container .fields input[type=button] + input[type=submit],
.fields .masthead .container input[type=button] + input[type=submit],
.masthead .container .fields input[type=submit] + input[type=submit],
.fields .masthead .container input[type=submit] + input[type=submit],
.masthead .container .fields button[type=submit] + input[type=submit],
.fields .masthead .container button[type=submit] + input[type=submit],
.masthead .container .fields .btn + button[type=submit],
.fields .masthead .container .btn + button[type=submit],
.masthead .container .content form .fields input[type=button] + button[type=submit],
.fields .masthead .container .content form input[type=button] + button[type=submit],
.content form .masthead .container .fields input[type=button] + button[type=submit],
.fields .content form .masthead .container input[type=button] + button[type=submit],
.masthead .container .content form .fields input[type=submit] + button[type=submit],
.fields .masthead .container .content form input[type=submit] + button[type=submit],
.content form .masthead .container .fields input[type=submit] + button[type=submit],
.fields .content form .masthead .container input[type=submit] + button[type=submit],
.masthead .container .content form .fields button[type=submit] + button[type=submit],
.fields .masthead .container .content form button[type=submit] + button[type=submit],
.content form .masthead .container .fields button[type=submit] + button[type=submit],
.fields .content form .masthead .container button[type=submit] + button[type=submit],
.masthead .container .fields input[type=button] + button[type=submit],
.fields .masthead .container input[type=button] + button[type=submit],
.masthead .container .fields input[type=submit] + button[type=submit],
.fields .masthead .container input[type=submit] + button[type=submit],
.masthead .container .fields button[type=submit] + button[type=submit],
.fields .masthead .container button[type=submit] + button[type=submit] {
  margin-left: -1em;
}

@media only screen and (max-width: 1200px) {
  .masthead__logo.masthead__logo--full {
    display: none;
  }
  .masthead__logo.masthead__logo--compact {
    display: block;
  }
}
@media only screen and (max-width: 991px) {
  .masthead__link.masthead__link--theme {
    display: none;
  }
  .masthead__link.masthead__link--menu .masthead__link-text {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .masthead__link.masthead__link--phone {
    margin-left: auto;
    margin-right: 0;
  }
  .masthead__link.masthead__link--phone .masthead__link-text {
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  .masthead .btn, .masthead .content form input[type=button], .content form .masthead input[type=button],
.masthead .content form input[type=submit],
.content form .masthead input[type=submit],
.masthead .content form button[type=submit],
.content form .masthead button[type=submit],
.masthead .fields input[type=button],
.fields .masthead input[type=button],
.masthead .fields input[type=submit],
.fields .masthead input[type=submit],
.masthead .fields button[type=submit],
.fields .masthead button[type=submit] {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}
@media only screen and (max-width: 480px) {
  :root {
    --masthead-height: 6em;
  }
}
@media only screen and (max-width: 400px) {
  .masthead .container {
    gap: 1.5em;
  }
}
/*
==========================================================================
	Footer
==========================================================================
*/
.section.section--padding[\:has\(.section__background\)] + .site-footer,
.section[\:not-has\(.container\)][\:has\(.full-width-map\)] + .site-footer {
  border-top: 0;
}
.section.section--padding:has(.section__background) + .site-footer,
.section:not(:has(.container)):has(.full-width-map) + .site-footer {
  border-top: 0;
}

.site-footer {
  position: relative;
  container-name: site-footer;
  container-type: inline-size;
  border-top: 0.1em solid hsl(200, 5%, 90%);
  border-top: 0.1em solid var(--col-grey-light);
}
.site-footer__action {
  padding: Max(6vw, 3em) 0 0;
  padding: var(--medium-spacing) 0 0;
}
.site-footer__main {
  padding: Max(8vw, 4em) 0 Max(6vw, 3em);
  padding: var(--default-spacing) 0 var(--medium-spacing);
}
.site-footer__bottom {
  padding: 0 0 Max(4vw, 2.5em);
  padding: 0 0 var(--small-spacing);
}
.site-footer__bottom .container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5em 2em;
}
.site-footer__title {
  margin: 4em 0 2em;
  font-size: 1em;
  line-height: 1.5em;
}
.site-footer__title:first-child {
  margin-top: 0;
}
.site-footer__title:last-child {
  margin-bottom: 0;
}
.site-footer__logo {
  display: block;
  width: 12em;
  max-width: 100%;
  margin: 2em 0;
  transition: none;
}
.site-footer__logo:first-child {
  margin-top: 0;
}
.site-footer__logo:last-child {
  margin-bottom: 0;
}
.site-footer__logo img,
.site-footer__logo svg {
  display: block;
  width: 100%;
  height: auto;
}
.site-footer__logo svg .st0 {
  fill: hsl(200, 15%, 15%);
  fill: var(--col-text);
}
.site-footer__logo svg .st1 {
  fill: hsl(28, 97%, 52%);
  fill: var(--col-prim);
}
.site-footer__nav .menu {
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25em;
}
.site-footer__nav .menu-item {
  display: flex;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 1.25em;
  line-height: 1.618em;
}
.site-footer__nav .menu-item.current-menu-item > a, .site-footer__nav .menu-item.current-menu-parent > a {
  padding-left: 0.75em;
  font-weight: bold;
}
.site-footer__nav .menu-item.current-menu-item > a:before, .site-footer__nav .menu-item.current-menu-parent > a:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 0.35em;
  height: 0.35em;
  border-radius: 50%;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
}
.site-footer__nav .menu a {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25em 0.5em;
  padding: 0.25em 0;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
.site-footer__small-nav .menu {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75em 2em;
}
.site-footer__small-nav .menu-item {
  font-size: 0.875em;
}
.site-footer__small-nav .menu a {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}
.site-footer__small-nav .menu button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  font-size: inherit;
  text-underline-offset: 0.3em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
  transition: all 0.15s ease-out, top 0s;
}
.site-footer__small-nav .menu button:hover, .site-footer__small-nav .menu button:focus {
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
.site-footer__copyright {
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
  font-size: 0.875em;
}
.site-footer .social-links {
  font-size: 1.125em;
}

@media only screen and (max-width: 675px) {
  .site-footer__copyright {
    width: 100%;
  }
}
@container site-footer (max-width: 30em) {
  .site-footer__main {
    text-align: center;
  }
  .site-footer__bottom {
    text-align: center;
  }
  .site-footer__logo {
    margin-left: auto;
    margin-right: auto;
  }
  .site-footer__nav .menu {
    align-items: center;
  }
  .site-footer__small-nav .menu {
    justify-content: center;
  }
  .site-footer .social-links {
    width: 100%;
    justify-content: center;
    margin-left: 0;
  }
}
/*
==========================================================================
    Sliders
==========================================================================
*/
.cards__slider {
  --swiper-navigation-size: 1.5em;
  --swiper-navigation-top-offset: calc(100% - var(--swiper-navigation-size));
  --swiper-navigation-sides-offset: 0;
  --swiper-navigation-color: var(--col-prim);
  --swiper-pagination-color: var(--col-prim);
  --swiper-pagination-top: auto;
  --swiper-pagination-bottom: 0;
  --swiper-pagination-bullet-size: .5em;
  --swiper-pagination-bullet-inactive-color: var(--col-grey);
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: .25em;
}
.cards__slider .swiper-button-prev,
.cards__slider .swiper-button-next {
  z-index: 15;
  margin-top: 0;
  font-size: 44px;
  font-size: var(--swiper-navigation-size);
}
.cards__slider .swiper-button-prev:after,
.cards__slider .swiper-button-next:after {
  display: none;
}
.cards__slider .swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  height: var(--swiper-navigation-size);
  font-size: 44px;
  font-size: var(--swiper-navigation-size);
}
.cards__slider .swiper-pagination.swiper-pagination-lock {
  visibility: hidden;
}

.content-image-blocks .block__slider {
  --swiper-navigation-size: 3em;
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: .5em;
  --swiper-navigation-color: var(--col-text);
}
.content-image-blocks .block__slider .swiper-button-prev,
.content-image-blocks .block__slider .swiper-button-next {
  width: 1em;
  height: 1em;
  border-radius: 50%;
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  margin-top: -0.5em;
  font-size: 44px;
  font-size: var(--swiper-navigation-size);
  transition: all 0.15s ease-out;
}
.content-image-blocks .block__slider .swiper-button-prev:hover, .content-image-blocks .block__slider .swiper-button-prev:focus,
.content-image-blocks .block__slider .swiper-button-next:hover,
.content-image-blocks .block__slider .swiper-button-next:focus {
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
}
.content-image-blocks .block__slider .swiper-button-prev:after,
.content-image-blocks .block__slider .swiper-button-next:after {
  display: none;
}
.content-image-blocks .block__slider .swiper-button-prev [class*=fa-],
.content-image-blocks .block__slider .swiper-button-next [class*=fa-] {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
}

.testimonials__slider {
  --swiper-navigation-size: 1.5em;
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: .25em;
  --swiper-navigation-color: var(--col-text);
  --swiper-pagination-color: var(--col-prim);
  --swiper-pagination-top: auto;
  --swiper-pagination-bottom: .5em;
  --swiper-pagination-bullet-size: .5em;
  --swiper-pagination-bullet-inactive-color: var(--col-grey);
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: .25em;
}
.testimonials__slider .swiper-button-prev,
.testimonials__slider .swiper-button-next {
  width: 1.5em;
  height: 1.5em;
  padding: 0.35em;
  margin-top: -0.5em;
  border-radius: 50%;
  font-size: 44px;
  font-size: var(--swiper-navigation-size);
  transition: all 0.15s ease-out;
}
.testimonials__slider .swiper-button-prev:hover, .testimonials__slider .swiper-button-prev:focus,
.testimonials__slider .swiper-button-next:hover,
.testimonials__slider .swiper-button-next:focus {
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
}
.testimonials__slider .swiper-button-prev:after,
.testimonials__slider .swiper-button-next:after {
  display: none;
}
.testimonials__slider .swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 44px;
  height: var(--swiper-navigation-size);
  font-size: 44px;
  font-size: var(--swiper-navigation-size);
}
.testimonials__slider .swiper-pagination.swiper-pagination-lock {
  visibility: hidden;
}

@media only screen and (max-width: 480px) {
  .content-image-blocks .block__slider {
    --swiper-navigation-size: 2.5em;
  }
}
/*
==========================================================================
    Modals
==========================================================================
*/
/*
==========================================================================
    Popovers
==========================================================================
*/
/*
==========================================================================
    Tooltips
==========================================================================
*/
/*
==========================================================================
	Widgets
==========================================================================
*/
/*
==========================================================================
    Section-title
==========================================================================
*/
.section-title {
  margin: 4em 0 2em;
}
.section-title:first-child {
  margin-top: 0;
}
.section-title:last-child {
  margin-bottom: 0;
}
.section-title.text-center .title.title--flex {
  justify-content: center;
}
.section-title.section-title--inverted .pretitle,
.section-title.section-title--inverted .title,
.section-title.section-title--inverted .subtitle {
  color: #fff;
}
.section-title.section-title--small-margin {
  margin: 2em 0 1em;
}
.section-title.section-title--small-margin:first-child {
  margin-top: 0;
}
.section-title.section-title--small-margin:last-child {
  margin-bottom: 0;
}
.section-title .pretitle {
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
  font-size: 1.25em;
  font-weight: 500;
}
.section-title .title {
  margin: 0.25em 0;
  font-size: 3em;
  font-weight: 800;
}
.section-title .title:first-child {
  margin-top: 0;
}
.section-title .title:last-child {
  margin-bottom: 0;
}
.section-title .title.title--x-small {
  font-size: 1.5em;
  line-height: 1.4em;
  font-weight: 500;
}
.section-title .title.title--x-small + .subtitle {
  margin-top: 0.5em;
}
.section-title .title.title--small {
  font-size: 2em;
  line-height: 1.4em;
  font-weight: 700;
}
.section-title .title.title--small + .subtitle {
  margin-top: 0.5em;
}
.section-title .title.title--large {
  font-size: 4em;
  line-height: 1.2em;
}
.section-title .title.title--flex {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75em 1em;
}
.section-title .subtitle {
  margin: 1em 0;
  font-size: 1.25em;
  text-wrap: balance;
}
.section-title .subtitle:first-child {
  margin-top: 0;
}
.section-title .subtitle:last-child {
  margin-bottom: 0;
}
.section-title .title em,
.section-title .subtitle em {
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
  font-style: normal;
}

@media only screen and (max-width: 991px) {
  .section-title .title {
    font-size: 2.5em;
  }
  .section-title .title.title--x-small {
    font-size: 1.25em;
  }
  .section-title .title.title--small {
    font-size: 1.75em;
  }
  .section-title .title.title--large {
    font-size: 3.5em;
  }
}
@media only screen and (max-width: 767px) {
  .section-title .title {
    font-size: 2em;
  }
  .section-title .title.title--small {
    font-size: 1.5em;
  }
  .section-title .title.title--large {
    font-size: 3em;
  }
  .section-title .subtitle {
    font-size: 1.125em;
  }
}
@media only screen and (max-width: 580px) {
  .section-title .title.title--large {
    font-size: 2.5em;
  }
}
/*
==========================================================================
    Social links
==========================================================================
*/
.social-links {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-left: -0.65em;
}
.social-links .item.item--facebook .item__link:before {
  background-color: #2172f0;
  background-color: var(--col-facebook);
}
.social-links .item.item--twitter .item__link:before {
  background-color: #000;
  background-color: var(--col-twitter);
  box-shadow: inset 0 0 0 0.05em hsl(200, 15%, 15%);
  box-shadow: inset 0 0 0 0.05em var(--col-text);
}
.social-links .item.item--instagram .item__link:before {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fcb045 20%, #fd1d1d 45%, #d6249f 60%, #833ab4 90%);
  background-color: #405de6;
  background-color: var(--col-instagram);
}
.social-links .item.item--instagram [class*=fa-] {
  position: relative;
}
.social-links .item.item--linkedin .item__link:before {
  background-color: #0077b5;
  background-color: var(--col-linkedin);
}
.social-links .item.item--pinterest .item__link:before {
  background-color: #bd081c;
  background-color: var(--col-pinterest);
}
.social-links .item.item--google .item__link:before {
  background-color: #dd4b39;
  background-color: var(--col-google);
}
.social-links .item.item--youtube .item__link:before {
  background-color: #ff0000;
  background-color: var(--col-youtube);
}
.social-links .item.item--vimeo .item__link:before {
  background-color: #0faef1;
  background-color: var(--col-vimeo);
}
.social-links .item.item--whatsapp .item__link:before {
  background-color: #25d366;
  background-color: var(--col-whatsapp);
}
.social-links .item.item--tripadvisor .item__link:before {
  background-color: #34e0a1;
  background-color: var(--col-tripadvisor);
}
.social-links .item.item--trustpilot .item__link:before {
  background-color: #00aa6c;
  background-color: var(--col-trustpilot);
}
.social-links .item.item--tiktok .item__link:before {
  background-color: #fe2c55;
  background-color: var(--col-tiktok);
}
.social-links .item__link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 2.25em;
  width: 2.25em;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  line-height: 1em;
  text-align: center;
}
.social-links .item__link:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  -webkit-transform: scale(0);
          transform: scale(0);
  transition: -webkit-transform 0.075s ease-out;
  transition: transform 0.075s ease-out;
  transition: transform 0.075s ease-out, -webkit-transform 0.075s ease-out;
}
.social-links .item__link:hover, .social-links .item__link:focus {
  color: #fff;
}
.social-links .item__link:hover:before, .social-links .item__link:focus:before {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.social-links .item__link-icon {
  position: relative;
}

/*
==========================================================================
    Sidebar layout
==========================================================================
*/
.sidebar-layout {
  display: flex;
  align-items: flex-start;
  margin: 3em 0;
  gap: 3em;
}
.sidebar-layout:first-child {
  margin-top: 0;
}
.sidebar-layout:last-child {
  margin-bottom: 0;
}
.sidebar-layout__sidebar {
  position: relative;
  flex-shrink: 0;
  align-self: stretch;
  width: min(30%, 26em);
}
.sidebar-layout__content {
  flex-grow: 1;
}
.sidebar-layout__sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 7em;
  bottom: 0;
}

@media only screen and (max-width: 1200px) {
  .sidebar-layout:not(.sidebar-layout--break-later) {
    flex-direction: column;
    align-items: stretch;
  }
  .sidebar-layout:not(.sidebar-layout--break-later).sidebar-layout--reverse-after-break {
    flex-direction: column-reverse;
  }
  .sidebar-layout:not(.sidebar-layout--break-later) .sidebar-layout__sidebar {
    width: auto;
  }
  .sidebar-layout:not(.sidebar-layout--break-later) .sidebar-layout__sidebar:empty {
    display: none;
  }
  .sidebar-layout:not(.sidebar-layout--break-later) .sidebar-layout__sticky {
    top: 0 !important;
  }
  .sidebar-layout:not(.sidebar-layout--break-later) .sidebar-layout__sticky {
    position: relative;
  }
}
@media only screen and (max-width: 991px) {
  .sidebar-layout.sidebar-layout--break-later {
    flex-direction: column;
    align-items: stretch;
  }
  .sidebar-layout.sidebar-layout--break-later.sidebar-layout--reverse-after-break {
    flex-direction: column-reverse;
  }
  .sidebar-layout.sidebar-layout--break-later .sidebar-layout__sidebar {
    width: auto;
  }
  .sidebar-layout.sidebar-layout--break-later .sidebar-layout__sidebar:empty {
    display: none;
  }
  .sidebar-layout.sidebar-layout--break-later .sidebar-layout__sticky {
    top: 0 !important;
  }
  .sidebar-layout.sidebar-layout--break-later .sidebar-layout__sticky {
    position: relative;
  }
}
/*
==========================================================================
    Hamburger
==========================================================================
*/
body.show-menu .hamburger span:nth-child(1) {
  -webkit-transform: translate3d(0.2em, 0, 0) rotate(45deg);
          transform: translate3d(0.2em, 0, 0) rotate(45deg);
}
body.show-menu .hamburger span:nth-child(2) {
  -webkit-transform: translate3d(0.2em, 0.5em, 0) rotate(-45deg);
          transform: translate3d(0.2em, 0.5em, 0) rotate(-45deg);
}
body.show-menu .hamburger span:nth-child(3) {
  opacity: 0;
  -webkit-transform: translate3d(0, 0.5em, 0);
          transform: translate3d(0, 0.5em, 0);
}

.hamburger {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  height: 1em;
  width: 1.3em;
}
.hamburger span {
  height: 0.125em;
  width: 100%;
  background-color: currentColor;
  transition: all 0.15s ease-out;
  -webkit-transform-origin: left center;
          transform-origin: left center;
}
.hamburger span:nth-child(3) {
  width: 75%;
}

/*
==========================================================================
    Quantity orb
==========================================================================
*/
.quantity-orb {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5em;
  height: 1.5em;
  padding: 0.2em 0.5em 0;
  border-radius: 2em;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  color: #fff;
  font-weight: bold;
  font-size: 0.75rem;
  line-height: 1em;
  text-align: center;
}

/*
==========================================================================
    Scroll progress bar
==========================================================================
*/
.scroll-progress-bar {
  position: fixed;
  z-index: 55;
  top: 0;
  left: 0;
  height: 0.25em;
  width: 100%;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}
.scroll-progress-bar__fill {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transform-origin: left;
          transform-origin: left;
}

@media only screen and (max-width: 991px) {
  .scroll-progress-bar {
    display: none;
  }
}
/*
==========================================================================
    Menu bar
==========================================================================
*/
:root {
  --menu-width: Max(25vw, 20em);
}

body.show-menu .menu-bar-shadow {
  opacity: 0.5;
  pointer-events: auto;
}
body.show-menu .menu-bar,
body.show-menu .menu-bar-shadow,
body.show-menu .scroll-progress-bar,
body.show-menu .sticky-masthead,
body.show-menu .page-wrapper {
  -webkit-transform: translate3d(calc(-1 * Max(25vw, 20em)), 0, 0);
          transform: translate3d(calc(-1 * Max(25vw, 20em)), 0, 0);
  -webkit-transform: translate3d(calc(-1 * var(--menu-width)), 0, 0);
          transform: translate3d(calc(-1 * var(--menu-width)), 0, 0);
}

.menu-bar {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1.5em;
  width: Max(25vw, 20em);
  width: var(--menu-width);
  padding: 2.5em 3em;
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-menu-bar-bg);
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: none;
  /* hide scrollbar for Internet Explorer, Edge */
  scrollbar-width: none;
  /* hide scrollbar for Firefox */
}
.menu-bar::-webkit-scrollbar {
  display: none;
  /* hide scrollbar for Chrome, Safari, and Opera */
}
.menu-bar > .flex-spacer {
  margin-bottom: -1.5em !important;
}
.menu-bar__close + .menu-bar__nav {
  margin-top: 3em;
}
.menu-bar__title {
  margin: 1.5em 0 0;
  font-size: 1em;
}
.menu-bar__title:first-child {
  margin-top: 0;
}
.menu-bar__title:last-child {
  margin-bottom: 0;
}
.menu-bar__nav.menu-bar__nav--small .menu-item {
  font-size: 0.875em;
}
.menu-bar__nav .menu {
  list-style: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25em;
}
.menu-bar__nav .menu-item {
  display: flex;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 1.25em;
  line-height: 1.618em;
}
.menu-bar__nav .menu-item.menu-item--light {
  opacity: 0.25;
  transition: opacity 0.15s ease-out;
}
.menu-bar__nav .menu-item.menu-item--light:hover, .menu-bar__nav .menu-item.menu-item--light[focus-within] {
  opacity: 0.5;
}
.menu-bar__nav .menu-item.menu-item--light:hover, .menu-bar__nav .menu-item.menu-item--light:focus-within {
  opacity: 0.5;
}
.menu-bar__nav .menu-item.current-menu-item > a, .menu-bar__nav .menu-item.current-menu-parent > a {
  padding-left: 0.75em;
  font-weight: bold;
}
.menu-bar__nav .menu-item.current-menu-item > a:before, .menu-bar__nav .menu-item.current-menu-parent > a:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 0.35em;
  height: 0.35em;
  border-radius: 50%;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
}
.menu-bar__nav .menu-icon {
  flex-shrink: 0;
  display: inline-block;
  width: 1.125em;
  margin-right: 0.75em;
  text-align: center;
}
.menu-bar__nav .menu button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  font-size: inherit;
  text-align: inherit;
  text-underline-offset: 0.3em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
.menu-bar__nav .menu button:hover, .menu-bar__nav .menu button:focus {
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
.menu-bar__nav .menu a,
.menu-bar__nav .menu button {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25em 0.5em;
  padding: 0.25em 0;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  line-height: inherit;
}
.menu-bar .social-links {
  margin-top: 1.25rem;
  margin-left: -0.6em;
  font-size: 1.125em;
}
.menu-bar .social-links:first-child {
  margin-top: 0;
}
.menu-bar .social-links:last-child {
  margin-bottom: 0;
}

.menu-bar-shadow {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-menu-bar-bg);
  opacity: 0;
  pointer-events: none;
  cursor: pointer;
  transition: opacity 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}

@media only screen and (max-width: 480px) {
  .menu-bar {
    padding: 1.5em 2em;
  }
}
/*
==========================================================================
    Sticky masthead (buttons)
==========================================================================
*/
.sticky-masthead {
  position: fixed;
  z-index: 55;
  top: 0;
  right: Max(10vw, 1em);
  right: var(--container-side-spacing);
  display: flex;
  align-items: center;
  gap: 1em;
  height: 8em;
  height: var(--masthead-height);
  pointer-events: none;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}
.sticky-masthead > * {
  pointer-events: auto;
}
.sticky-masthead__link, .sticky-masthead__cta {
  flex-shrink: 0;
}
.sticky-masthead__link {
  display: flex;
  align-items: center;
  gap: 0.875em;
  height: 3em;
  padding-top: 0;
  padding-bottom: 0;
}
.sticky-masthead__link-icon {
  line-height: 1em;
}
.sticky-masthead__link-text {
  text-align: left;
}

@media only screen and (max-width: 991px) {
  .sticky-masthead__link.sticky-masthead__link--menu .sticky-masthead__link-text {
    display: none;
  }
}
@media only screen and (max-width: 640px) {
  .sticky-masthead .btn, .sticky-masthead .content form input[type=button], .content form .sticky-masthead input[type=button],
.sticky-masthead .content form input[type=submit],
.content form .sticky-masthead input[type=submit],
.sticky-masthead .content form button[type=submit],
.content form .sticky-masthead button[type=submit],
.sticky-masthead .fields input[type=button],
.fields .sticky-masthead input[type=button],
.sticky-masthead .fields input[type=submit],
.fields .sticky-masthead input[type=submit],
.sticky-masthead .fields button[type=submit],
.fields .sticky-masthead button[type=submit] {
    padding-left: 1.25em;
    padding-right: 1.25em;
  }
}
@media only screen and (max-width: 400px) {
  .sticky-masthead {
    gap: 0.5em;
  }
}
/*
==========================================================================
    Hero components
==========================================================================
*/
.section--hero .hero-content {
  width: 60%;
}

@media only screen and (max-width: 860px) {
  .section--hero .hero-content {
    width: 70%;
  }
}
@media only screen and (max-width: 767px) {
  .section--hero.section--full .section__inner {
    min-height: 0 !important;
  }
  .section--hero .hero-content {
    width: 100%;
  }
}
/*
==========================================================================
    Full width image
==========================================================================
*/
.full-width-image img {
  display: block;
  width: 100%;
  height: auto;
}

.container .full-width-image img {
  border-radius: 1.5em;
}

@media only screen and (max-width: 480px) {
  .container .full-width-image img {
    border-radius: 1em;
  }
}
/*
==========================================================================
    Full width image
==========================================================================
*/
.full-width-video {
  display: block;
  width: 100%;
  height: auto;
}

.container .full-width-video {
  border-radius: 1.5em;
}

@media only screen and (max-width: 480px) {
  .container .full-width-video {
    border-radius: 1em;
  }
}
/*
==========================================================================
    Full width map
==========================================================================
*/
.full-width-map {
  margin: 2em 0;
}
.full-width-map:first-child {
  margin-top: 0;
}
.full-width-map:last-child {
  margin-bottom: 0;
}
.full-width-map .map-container {
  width: 100%;
  height: min(60vh, 60vw);
  min-height: 20em;
}

/*
==========================================================================
    Case single
==========================================================================
*/
/*
==========================================================================
    Content image blocks
==========================================================================
*/
.content-image-blocks .block {
  display: flex;
  flex-direction: column;
  gap: max(5vw, 1.5em);
  margin: Max(8vw, 4em) 0;
  margin: var(--default-spacing) 0;
}
.content-image-blocks .block:first-child {
  margin-top: 0;
}
.content-image-blocks .block:last-child {
  margin-bottom: 0;
}
.content-image-blocks .block__media {
  position: relative;
}
.content-image-blocks .block__media.block__media--image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 1.5em;
}
.content-image-blocks .block__media.block__media--map .map-container {
  width: 100%;
  aspect-ratio: 4/3;
}
.content-image-blocks .block__slider {
  border-radius: 1.5em;
}
.content-image-blocks .block__slider-image img {
  border-radius: 0 !important;
}
.content-image-blocks .block__slider-image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4/3;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (min-width: 992px) {
  .content-image-blocks .block {
    flex-direction: row;
    align-items: center;
  }
  .content-image-blocks .block.block--reverse {
    flex-direction: row-reverse;
  }
  .content-image-blocks .block__media {
    align-self: flex-start;
    flex-shrink: 0;
    width: 50%;
  }
  .content-image-blocks .block__content {
    flex-grow: 1;
  }
}
@media only screen and (max-width: 580px) {
  .content-image-blocks .block {
    gap: max(6vw, 1.5em);
  }
  .content-image-blocks .block__media.block__media--image img, .content-image-blocks .block__slider {
    border-radius: 1em;
  }
}
@media only screen and (max-width: 480px) {
  .content-image-blocks .block__slider {
    border-radius: 1.5em 0 0 1.5em;
    margin-right: calc(0px - Max(10vw, 1em));
    margin-right: calc(0px - var(--container-side-spacing));
  }
}
/*
==========================================================================
    Action block
==========================================================================
*/
.action-block {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2em 4em;
  padding: max(2em, 3vw) max(1.5em, 4vw);
  border-radius: 2em;
  border: 0.1em solid hsl(200, 5%, 90%);
  border: 0.1em solid var(--col-grey-light);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
}
.action-block__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: inherit;
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  opacity: 0.5;
}
.action-block__inner {
  position: relative;
}
.action-block__inner.action-block__inner--flex {
  display: flex;
  align-items: flex-end;
  gap: inherit;
  width: 100%;
}
.action-block__inner.action-block__inner--flex .section-title,
.action-block__inner.action-block__inner--flex .btns {
  margin: 0;
}
.action-block__inner.action-block__inner--flex .section-title {
  margin-right: auto;
}
.action-block__inner.action-block__inner--flex .btns {
  flex-shrink: 0;
  flex-direction: column;
  align-items: stretch;
}
.action-block__inner.action-block__inner--flex .btns__micro {
  text-align: center;
}
@media only screen and (max-width: 1200px) {
  .action-block__inner.action-block__inner--flex {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .action-block__inner.action-block__inner--flex .section-title {
    margin: 0;
  }
  .action-block__inner.action-block__inner--flex .btns {
    flex-direction: row;
    justify-content: center;
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn:first-child:not(:nth-last-child(2)), .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button]:first-child:not(:nth-last-child(2)), .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit]:first-child:not(:nth-last-child(2)),
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit]:first-child:not(:nth-last-child(2)),
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button]:first-child:not(:nth-last-child(2)),
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit]:first-child:not(:nth-last-child(2)),
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit]:first-child:not(:nth-last-child(2)),
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn + .btn,
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .btn + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .btn + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .btn + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .btn + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .btn + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields .btn + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:has\(.btns__micro\)] button[type=submit] + button[type=submit] {
    flex-grow: 1;
  }
  .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn:first-child:not(:nth-last-child(2)), .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button]:first-child:not(:nth-last-child(2)), .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit]:first-child:not(:nth-last-child(2)),
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit]:first-child:not(:nth-last-child(2)),
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button]:first-child:not(:nth-last-child(2)),
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit]:first-child:not(:nth-last-child(2)),
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit]:first-child:not(:nth-last-child(2)),
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit]:first-child:not(:nth-last-child(2)),
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn + .btn,
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .btn + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .btn + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .btn + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .btn + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .btn + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields .btn + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:has(.btns__micro) .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:has(.btns__micro) button[type=submit] + button[type=submit] {
    flex-grow: 1;
  }
  .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn:first-child:not(:last-child), .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button]:first-child:not(:last-child), .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit]:first-child:not(:last-child),
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit]:first-child:not(:last-child),
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button]:first-child:not(:last-child),
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit]:first-child:not(:last-child),
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit]:first-child:not(:last-child),
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn + .btn,
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .btn + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .btn + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .btn + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .btn + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .btn + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields .btn + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns[\:not-has\(.btns__micro\)] button[type=submit] + button[type=submit] {
    flex-grow: 1;
  }
  .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn:first-child:not(:last-child), .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button]:first-child:not(:last-child), .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit]:first-child:not(:last-child),
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit]:first-child:not(:last-child),
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button]:first-child:not(:last-child),
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit]:first-child:not(:last-child),
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit]:first-child:not(:last-child),
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit]:first-child:not(:last-child),
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn + .btn,
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + .btn,
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + .btn,
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + .btn,
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + .btn,
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .btn + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + input[type=button],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .btn + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + input[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .btn + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + button[type=submit],
.content form .fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .btn + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + input[type=button],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + input[type=button],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + input[type=button],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=button],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .btn + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + input[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + input[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + input[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + input[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields .btn + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .btn + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=button] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form input[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .content form button[type=submit] + button[type=submit],
.content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + button[type=submit],
.fields .content form .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=button] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=button] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields input[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) input[type=submit] + button[type=submit],
.action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) .fields button[type=submit] + button[type=submit],
.fields .action-block__inner.action-block__inner--flex .btns:not(:has(.btns__micro)) button[type=submit] + button[type=submit] {
    flex-grow: 1;
  }
}
/*
==========================================================================
    Fancy video
==========================================================================
*/
.fancy-video {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 1.5em;
  background-color: hsl(200, 5%, 85%);
  background-color: var(--col-grey);
  overflow: hidden;
}
.fancy-video__placeholder {
  cursor: pointer;
}
.fancy-video__thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.fancy-video__title, .fancy-video__duration {
  position: absolute;
  z-index: 2;
  bottom: 2em;
  padding: 0.35em 0.75em;
  border-radius: 0.25em;
  background-color: hsla(200deg, 15%, 15%, 0.85);
  background-color: hsla(var(--col-quat-hsl), 0.85);
  color: #fff;
  font-size: 1em;
  line-height: 1.3em;
}
.fancy-video__title {
  left: 2em;
}
.fancy-video__duration {
  right: 2em;
}
.fancy-video__play {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3em;
  height: 3em;
  padding-left: 0.1em;
  margin: -1.5em 0 0 -1.5em;
  border-radius: 50%;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  color: #fff;
  font-size: 1.25em;
  box-shadow: 0 0 0 0 hsl(28, 97%, 52%), 0 0 0 0 hsl(28, 97%, 52%);
  box-shadow: 0 0 0 0 var(--col-prim), 0 0 0 0 var(--col-prim);
}
.fancy-video__play:hover, .fancy-video__play:focus {
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  box-shadow: -0.25em -0.25em 0 0 hsl(28, 97%, 52%), 0.25em 0.25em 0 0 hsl(28, 97%, 52%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-prim), 0.25em 0.25em 0 0 var(--col-prim);
}
.fancy-video__play:active {
  top: calc(50% + 1px);
}
.fancy-video__player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media only screen and (max-width: 580px) {
  .fancy-video {
    border-radius: 1em;
  }
  .fancy-video__title, .fancy-video__duration {
    bottom: 1em;
    font-size: 0.875em;
  }
  .fancy-video__title {
    left: 1em;
  }
  .fancy-video__duration {
    right: 1em;
  }
}
/*
==========================================================================
    Map components
==========================================================================
*/
button.leaflet-reset-view {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  position: absolute;
  z-index: 10;
  top: 84px;
  left: 12px;
  display: none;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 2px;
  background-color: #fff;
  color: black;
  line-height: 1em;
  text-align: center;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.2);
  transition: background 0.15s ease-out;
}
button.leaflet-reset-view:hover, button.leaflet-reset-view:focus {
  background-color: #f4f4f4;
}
button.leaflet-reset-view:active {
  top: 85px;
}

.map-container {
  position: relative;
  background: url("../img/theme/map-background.jpg") center/cover no-repeat hsl(200, 5%, 95%);
  background: url("../img/theme/map-background.jpg") center/cover no-repeat var(--col-grey-x-light);
  overflow: hidden;
}

.container .map-container {
  border-radius: 0.5em 1.5em;
}

.map-canvas {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
}
.map-canvas.leaflet-container + button.leaflet-reset-view {
  display: flex;
}
.map-canvas .leaflet-popup-content-wrapper,
.map-canvas .leaflet-popup-tip {
  background: hsl(0, 0%, 100%);
  background: var(--col-body-bg);
  box-shadow: 0 0.125em 0.5em hsla(200deg, 15%, 15%, 0.25);
  box-shadow: 0 0.125em 0.5em hsla(var(--col-text-hsl), 0.25);
}
.map-canvas .leaflet-popup-content-wrapper {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}
.map-canvas .leaflet-popup-content {
  margin: 0;
}
.map-canvas a.leaflet-popup-close-button {
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}
.map-canvas .map-popup {
  min-width: 15em;
  padding: 1em 1.5em 1em 1.25em;
  font-family: "Epilogue", system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif;
  font-family: var(--font-prim);
  font-size: 1rem;
}
.map-canvas .map-popup .content {
  font-size: 0.75em;
}

.btn--show-map {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
}
.btn--show-map:active {
  top: calc(50% + 1px) !important;
}

/*
==========================================================================
    Expandable Items
==========================================================================
*/
.expandable-items {
  margin: 1.5em 0;
}
.expandable-items:first-child {
  margin-top: 0;
}
.expandable-items:last-child {
  margin-bottom: 0;
}
.expandable-items .item {
  padding: 0.5em 0;
  border-bottom: 0.1em solid hsl(200, 5%, 90%);
  border-bottom: 0.1em solid var(--col-grey-light);
}
.expandable-items .item:first-child {
  border-top: 0.1em solid hsl(200, 5%, 90%);
  border-top: 0.1em solid var(--col-grey-light);
}
.expandable-items .item.item--toggled .item__toggle-icon {
  -webkit-transform: rotate(-180deg);
          transform: rotate(-180deg);
}
.expandable-items .item.item--toggled .item__content {
  grid-template-rows: 1fr;
  padding-bottom: 1em;
}
.expandable-items .item.item--toggled .item__content .content {
  visibility: visible;
}
.expandable-items .item__toggle {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  height: auto;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  font-family: inherit;
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2em;
  width: 100%;
  padding: 1em 0;
  color: var(--col-text);
  font-size: 1em;
  line-height: 1.618em;
  text-align: left;
  font-weight: 600;
}
.expandable-items .item__toggle:hover .item__toggle-text, .expandable-items .item__toggle:focus .item__toggle-text {
  text-decoration: underline;
  text-underline-offset: 0.2em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
.expandable-items .item__toggle-text {
  flex-grow: 1;
  max-width: 50rem;
  font-size: 1.125em;
  text-underline-offset: 0.3em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
  transition: all 0.15s ease-out;
}
.expandable-items .item__toggle-icon {
  flex-shrink: 0;
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
  transition: -webkit-transform 0.15s ease-out;
  transition: transform 0.15s ease-out;
  transition: transform 0.15s ease-out, -webkit-transform 0.15s ease-out;
}
.expandable-items .item__content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease-out;
  transition: grid-template-rows 0.3s ease-out, -ms-grid-rows 0.3s ease-out;
  overflow: hidden;
}
.expandable-items .item__content .content {
  min-height: 0;
  transition: visibility 0.3s ease-out;
  visibility: hidden;
}

@media only screen and (max-width: 767px) {
  .expandable-items .item.item--toggled .item__content {
    padding-bottom: 0.75em;
  }
  .expandable-items .item__toggle {
    padding: 0.75em 0;
  }
}
/*
==========================================================================
    Breadcrumbs
==========================================================================
*/
.breadcrumbs {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.125em 0.75em;
  font-size: 0.875em;
}
.breadcrumbs__prefix {
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
}
.breadcrumbs__divider {
  color: hsl(200, 5%, 75%);
  color: var(--col-grey-x-dark);
}
.breadcrumbs .crumb.crumb--current a {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}
.breadcrumbs .crumb a {
  display: block;
  font-weight: bold;
}

@media only screen and (max-width: 480px) {
  .breadcrumbs__prefix {
    width: 100%;
  }
}
/*
==========================================================================
    Site-loader overlay
==========================================================================
*/
.site-loader {
  position: fixed;
  z-index: 250;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
}

/*
==========================================================================
    Scroll fade-in animations
==========================================================================
*/
.hide-for-fade-in {
  opacity: 0;
}
.hide-for-fade-in .section__inner {
  -webkit-transform: translate3d(0, 1em, 0);
          transform: translate3d(0, 1em, 0);
}
.hide-for-fade-in.fade-in {
  transition: opacity 1s ease;
  opacity: 1;
}
.hide-for-fade-in.fade-in .section__inner {
  transition: -webkit-transform 1s ease;
  transition: transform 1s ease;
  transition: transform 1s ease, -webkit-transform 1s ease;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

/*
==========================================================================
    Wizard
==========================================================================
*/
.wizard {
  container-name: wizard;
  container-type: inline-size;
  padding: max(1.5em, 4vw);
  margin: 2em 0;
  border-radius: 2em;
  border: 0.1em solid hsl(200, 5%, 90%);
  border: 0.1em solid var(--col-grey-light);
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
}
.wizard:first-child {
  margin-top: 0;
}
.wizard:last-child {
  margin-bottom: 0;
}
.wizard__columns {
  display: flex;
  align-items: stretch;
  gap: 4em;
}
.wizard__main {
  flex-grow: 1;
}
.wizard__aside {
  position: relative;
  flex-shrink: 0;
  width: max(24em, calc(33.33% - 2em));
}
.wizard__sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 8em;
  top: var(--masthead-height);
  bottom: 0;
}
.wizard__steps > .step:not(:first-child) {
  display: none;
  margin-top: 3em;
  padding-top: 3em;
  border-top: 0.15em solid hsl(200, 5%, 90%);
  border-top: 0.15em solid var(--col-grey-light);
}
.wizard__steps .step__header.step__header--has-percentage {
  display: flex;
  align-items: flex-start;
  gap: 1.5em 2em;
}
.wizard__steps .step__title {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 1.25em;
  text-wrap: initial;
}
.wizard__steps .step__number {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  padding: 0.55em 0.75em 0.35em;
  border-radius: 5em;
  background-color: hsl(177, 57%, 42%);
  background-color: var(--col-sec);
  color: #fff;
  font-size: 0.6em;
  line-height: 1.3em;
  font-weight: bold;
}
.wizard__steps .step__subtitle {
  margin: 0.75em 0 0;
}
.wizard__steps .step__fields {
  margin: 2em 0;
}
.wizard__steps .step__fields:first-child {
  margin-top: 0;
}
.wizard__steps .step__fields:last-child {
  margin-bottom: 0;
}
.wizard__result, .wizard__usps {
  padding: max(6.5%, 1.5em) max(7.5%, 1.5em);
  margin: 2em 0;
  border-radius: 1em;
}
.wizard__result:first-child, .wizard__usps:first-child {
  margin-top: 0;
}
.wizard__result:last-child, .wizard__usps:last-child {
  margin-bottom: 0;
}
.wizard__result {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}
.wizard__usps {
  border: 0.1em solid hsl(200, 5%, 90%);
  border: 0.1em solid var(--col-grey-light);
}
.wizard__data {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.75em;
  width: 100%;
  margin: 1.5em 0;
}
.wizard__data:first-child {
  margin-top: 0;
}
.wizard__data:last-child {
  margin-bottom: 0;
}
.wizard__data-expand {
  display: none;
}
.wizard__data-elem {
  display: flex;
  justify-content: space-between;
  gap: 0.25em 1em;
}
.wizard__data-elem:not(:first-child):not(.wizard__data-elem--sub) {
  padding-top: 0.75em;
  border-top: 0.1em solid hsl(200, 5%, 85%);
  border-top: 0.1em solid var(--col-grey);
}
.wizard__data-elem.wizard__data-elem--sub {
  margin-top: -0.25em;
  font-size: 0.875em;
}
.wizard__data-elem.wizard__data-elem--sub + .wizard__data-elem--sub {
  margin-top: -0.5em;
}
.wizard__data-elem.wizard__data-elem--sub .value {
  font-weight: normal;
}
.wizard__data-elem .key {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1em;
}
.wizard__data-elem .value {
  text-align: right;
}
.wizard__percentage {
  flex-shrink: 0;
}

@container wizard (max-width: 50em) {
  .wizard__columns {
    flex-wrap: wrap;
  }
  .wizard__aside {
    width: 100%;
  }
  .wizard__steps {
    text-align: center;
  }
  .wizard__steps .step__header.step__header--has-percentage {
    flex-direction: column;
    align-items: center;
  }
  .wizard__steps .step__title {
    flex-direction: column;
    align-items: center;
  }
  .wizard__steps .step__number {
    align-self: center;
  }
  .wizard__steps .step__fields .field__input-grid {
    justify-content: center;
  }
}
@media only screen and (max-width: 580px) {
  .wizard__steps > .step:not(:first-child) {
    margin-top: 2em;
    padding-top: 2em;
  }
}
/*
==========================================================================
    Custom radio
==========================================================================
*/
.custom-radio {
  position: relative;
  cursor: pointer;
}
.custom-radio.custom-radio--large .custom-radio__input:checked ~ .custom-radio__inner .custom-radio__check {
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  color: #fff;
  -webkit-transform: rotate(0);
          transform: rotate(0);
}
.custom-radio.custom-radio--large .custom-radio__inner {
  flex-direction: column;
  justify-content: center;
  aspect-ratio: 1/1;
  flex: 1 1 0;
  padding-bottom: 1.5em;
  text-align: center;
}
.custom-radio.custom-radio--large .custom-radio__image {
  display: block;
  width: 60%;
  height: auto;
}
.custom-radio.custom-radio--large .custom-radio__title {
  margin: 1.5em 0 0;
  font-size: 1em;
}
.custom-radio.custom-radio--large .custom-radio__subtitle {
  margin: 0.35em 0 0;
  font-size: 0.875em;
}
.custom-radio.custom-radio--large .custom-radio__check {
  position: absolute;
  bottom: 1.5em;
  right: calc(50% - .75em);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  background-color: hsl(200, 5%, 85%);
  background-color: var(--col-grey);
  color: transparent;
  font-size: 0.75em;
  line-height: 1em;
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg);
  transition: all 0.15s ease-out;
}
.custom-radio.custom-radio--small .custom-radio__inner {
  gap: 1em;
  padding: 0.875em 1.25em;
}
.custom-radio.custom-radio--small .custom-radio__icon {
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
  font-size: 1em;
  line-height: 1em;
}
.custom-radio.custom-radio--small .custom-radio__image {
  display: block;
  height: 1.125em;
  width: auto;
}
.custom-radio.custom-radio--small .custom-radio__title {
  padding-top: 0.25em;
  font-size: 1em;
}
.custom-radio:hover .custom-radio__inner, .custom-radio[focus-within] .custom-radio__inner {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}
.custom-radio:hover .custom-radio__inner, .custom-radio[focus-within] .custom-radio__inner {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}
.custom-radio:hover .custom-radio__inner, .custom-radio[focus-within] .custom-radio__inner {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}
.custom-radio:hover .custom-radio__inner, .custom-radio:focus-within .custom-radio__inner {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}
.custom-radio__input {
  position: absolute;
  left: -9999px;
  opacity: 0;
}
.custom-radio__input:checked ~ .custom-radio__inner {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.15em hsl(0, 0%, 100%), 0 0 0 0.15em hsl(28, 97%, 52%);
  box-shadow: inset 0 0 0 0.15em var(--col-body-bg), 0 0 0 0.15em var(--col-prim);
}
.custom-radio__inner {
  display: flex;
  align-items: center;
  border-radius: 0.5em;
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
  transition: all 0.15s ease-out;
}

@container (max-width : 30em) {
  .custom-radio.custom-radio--large .custom-radio__inner {
    flex-direction: row;
    justify-content: flex-start;
    aspect-ratio: auto;
    padding: 1em;
    gap: 1.25em;
    text-align: left;
  }
  .custom-radio.custom-radio--large .custom-radio__image {
    height: 2em;
    width: auto;
  }
  .custom-radio.custom-radio--large .custom-radio__title {
    margin: 0;
  }
  .custom-radio.custom-radio--large .custom-radio__subtitle {
    margin: 0.25em 0 0;
  }
  .custom-radio.custom-radio--large .custom-radio__check {
    display: none;
  }
}
/*
==========================================================================
    True dark mode
==========================================================================
*/
.menu-item--truedark {
  display: none !important;
}

.truedark {
  --pos-x: 50%;
  --pos-y: 50%;
  position: fixed;
  z-index: 500;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  background-color: #000;
  font-size: 15vw;
  pointer-events: none;
  -webkit-mask-image: radial-gradient(circle 1em at var(--pos-x) var(--pos-y), transparent 25%, black);
}

@media only screen and (min-width: 768px) {
  .menu-item--truedark {
    display: flex !important;
  }

  body:not(.browser-ios).show-truedark * {
    -webkit-user-select: none !important;
       -moz-user-select: none !important;
        -ms-user-select: none !important;
            user-select: none !important;
  }
  body:not(.browser-ios).show-truedark .truedark {
    display: block;
  }
}
/*
==========================================================================
    Lynk&Co
==========================================================================
*/
:root {
  --lynkco-width: 16em;
  --lynk-height-factor: .35;
  --lynkco-animation-duration: 20s;
}

.lynkco {
  --lynkco-wheel-rotation: -3600deg;
  position: absolute;
  z-index: 25;
  left: 0;
  bottom: 100%;
  width: 100%;
  height: calc(16em * .35);
  height: calc(var(--lynkco-width) * var(--lynk-height-factor));
  overflow: clip;
  pointer-events: none;
}
.lynkco__track {
  position: absolute;
  top: 0;
  right: calc(-1 * 16em);
  bottom: 0;
  left: calc(-1 * 16em);
  top: 0;
  right: calc(-1 * var(--lynkco-width));
  bottom: 0;
  left: calc(-1 * var(--lynkco-width));
}
.lynkco__elem {
  position: absolute;
  bottom: 0;
  left: 0;
  height: calc(16em * .35);
  height: calc(var(--lynkco-width) * var(--lynk-height-factor));
  width: 16em;
  width: var(--lynkco-width);
  background: url("../img/theme/dbk-lynkco.png") center/cover no-repeat;
  pointer-events: auto;
  -webkit-animation: lynkco-shift 20s ease-in-out infinite both;
          animation: lynkco-shift 20s ease-in-out infinite both;
  -webkit-animation: lynkco-shift var(--lynkco-animation-duration) ease-in-out infinite both;
          animation: lynkco-shift var(--lynkco-animation-duration) ease-in-out infinite both;
}
.lynkco__elem:before, .lynkco__elem:after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 14.5%;
  aspect-ratio: 1/1;
  background: url("../img/theme/dbk-lynkco-wheel.png") center/cover no-repeat;
  -webkit-animation: lynkco-wheels 20s ease-in-out infinite both;
          animation: lynkco-wheels 20s ease-in-out infinite both;
  -webkit-animation: lynkco-wheels var(--lynkco-animation-duration) ease-in-out infinite both;
          animation: lynkco-wheels var(--lynkco-animation-duration) ease-in-out infinite both;
}
.lynkco__elem:before {
  left: 13.5%;
}
.lynkco__elem:after {
  right: 14.75%;
}

/*
==========================================================================
    Post meta
==========================================================================
*/
.section:not(.section--padding):not(.nomargin) + .section--post-signoff {
  margin-top: calc(-1 * Max(8vw, 4em) + 2em);
  margin-top: calc(-1 * var(--default-spacing) + 2em);
}

.post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5em 2em;
}
.post-meta__main {
  display: flex;
  align-items: center;
  gap: 1em;
}
.post-meta__photo {
  align-self: flex-start;
  flex-shrink: 0;
  width: 3.5em;
  height: 3.5em;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}
.post-meta__details {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 0.25em;
}
.post-meta__date {
  font-size: 1em;
}
.post-meta__reading-time {
  display: flex;
  align-items: center;
  gap: 0.75em;
  padding: 0.65em 1.125em 0.5em;
  border-radius: 1.5em;
  font-size: 0.875em;
  font-weight: 500;
  border: 0.1em solid hsl(200, 5%, 90%);
  border: 0.1em solid var(--col-grey-light);
}
.post-meta__reading-time [class*=fa-] {
  position: relative;
  top: -0.1em;
}

.post-categories {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em;
  margin: 2em 0 3em;
}
.post-categories:first-child {
  margin-top: 0;
}
.post-categories:last-child {
  margin-bottom: 0;
}
.post-categories .category {
  position: relative;
  padding: 0.65em 1.125em 0.5em;
  border-radius: 1.5em;
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-weight: 500;
  font-size: 0.875em;
  box-shadow: 0 0 0 0 hsl(200, 5%, 95%), 0 0 0 0 hsl(200, 5%, 95%);
  box-shadow: 0 0 0 0 var(--col-grey-x-light), 0 0 0 0 var(--col-grey-x-light);
}
.post-categories .category:hover, .post-categories .category:focus {
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  text-decoration: none;
  box-shadow: -0.25em -0.25em 0 0 hsl(200, 5%, 90%), 0.25em 0.25em 0 0 hsl(200, 5%, 90%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-grey-light), 0.25em 0.25em 0 0 var(--col-grey-light);
}
.post-categories .category.category--primary {
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
}
.post-categories .category.category--primary:hover, .post-categories .category.category--primary:focus {
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  box-shadow: -0.25em -0.25em 0 0 hsl(200, 5%, 90%), 0.25em 0.25em 0 0 hsl(200, 5%, 90%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-grey-light), 0.25em 0.25em 0 0 var(--col-grey-light);
}

/*
==========================================================================
    Pagination
==========================================================================
*/
.pagination {
  margin: 3em 0;
  clear: both;
}
.pagination:first-child {
  margin-top: 0;
}
.pagination:last-child {
  margin-bottom: 0;
}
.pagination ul.page-numbers {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75em;
}
.pagination a.page-numbers,
.pagination span.page-numbers:not(.dots) {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75em;
  min-width: 2.5em;
  height: 2.5em;
  padding: 0.25em 1em 0.125em;
  border-radius: 2em;
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-weight: 500;
  text-decoration: none;
  transition: all 0.15s ease-out, top 0s;
  box-shadow: 0 0 0 0 hsl(200, 5%, 95%), 0 0 0 0 hsl(200, 5%, 95%);
  box-shadow: 0 0 0 0 var(--col-grey-x-light), 0 0 0 0 var(--col-grey-x-light);
}
.pagination a.page-numbers:not(.current):hover, .pagination a.page-numbers:not(.current):focus,
.pagination span.page-numbers:not(.dots):not(.current):hover,
.pagination span.page-numbers:not(.dots):not(.current):focus {
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  box-shadow: -0.25em -0.25em 0 0 hsl(200, 5%, 90%), 0.25em 0.25em 0 0 hsl(200, 5%, 90%);
  box-shadow: -0.25em -0.25em 0 0 var(--col-grey-light), 0.25em 0.25em 0 0 var(--col-grey-light);
}
.pagination a.page-numbers.current,
.pagination span.page-numbers:not(.dots).current {
  background: transparent;
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 90%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-light);
}
.pagination a.page-numbers [class*=fa-],
.pagination span.page-numbers:not(.dots) [class*=fa-] {
  position: relative;
  top: -0.1em;
}
.pagination a.prev,
.pagination a.next {
  padding-left: 1.25em;
  padding-right: 1.25em;
}
.pagination .dots {
  padding: 0 0.25em;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
}

@media only screen and (max-width: 767px) {
  .pagination a.prev,
.pagination a.next {
    padding-left: 0;
    padding-right: 0;
  }
}
/*
==========================================================================
    Video player
==========================================================================
*/
.video-player {
  position: relative;
  margin: 2em auto;
  border-radius: 1.5em;
}
.video-player:first-child {
  margin-top: 0;
}
.video-player:last-child {
  margin-bottom: 0;
}
.video-player.video-player--phone {
  padding-top: 12.5%;
  border-radius: 2.5em;
  border: 0.75em solid #000;
  background-color: #000;
  box-shadow: 0 -0.05em 0 0 rgba(255, 255, 255, 0.25);
}
.video-player.video-player--phone .video-player__video {
  border-radius: 0 0 1.75em 1.75em;
}
.video-player.video-player--phone .video-player__phone-elements {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
}
.video-player.video-player--phone .video-player__phone-elements .elem-screen-cutout {
  position: absolute;
  z-index: 1;
  top: -1px;
  left: 35%;
  width: 30%;
  height: 5%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.video-player.video-player--phone .video-player__phone-elements .elem-screen-cutout:before, .video-player.video-player--phone .video-player__phone-elements .elem-screen-cutout:after {
  content: "";
  border-radius: 5em;
  background: #333;
}
.video-player.video-player--phone .video-player__phone-elements .elem-screen-cutout:before {
  width: 70%;
  height: 25%;
}
.video-player.video-player--phone .video-player__phone-elements .elem-screen-cutout:after {
  height: 30%;
  aspect-ratio: 1/1;
}
.video-player.video-player--phone .video-player__phone-elements .elem-onoff-button {
  position: absolute;
  left: calc(100% + .75em - 1px);
  top: 15%;
  width: 2%;
  height: 15%;
  border-radius: 0 0.125em 0.125em 0;
  background: #000;
  box-shadow: inset 0 0.1em 0 0 rgba(255, 255, 255, 0.5);
}
.video-player.video-player--phone .video-player__phone-elements .elem-volume-controls {
  position: absolute;
  right: calc(100% + .75em - 1px);
  top: 15%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 2%;
  height: 15%;
}
.video-player.video-player--phone .video-player__phone-elements .elem-volume-controls:before, .video-player.video-player--phone .video-player__phone-elements .elem-volume-controls:after {
  content: "";
  height: 44%;
  width: 100%;
  border-radius: 0.125em 0 0 0.125em;
  background: #000;
  box-shadow: inset 0 0.1em 0 0 rgba(255, 255, 255, 0.5);
}
.video-player.video-player--phone .video-player__phone-elements .elem-bottom-shadow {
  position: absolute;
  z-index: -1;
  top: calc(100% + .4em);
  left: 0;
  width: 100%;
  height: 0.5em;
  border-radius: 100%;
  background: #000;
  opacity: 0.75;
  box-shadow: 0 0 0.25em 0.25em rgba(0, 0, 0, 0.5), 0 0 0.5em 0.5em rgba(0, 0, 0, 0.5), 0 0 1em 1em rgba(0, 0, 0, 0.5);
}
.video-player.video-player--framed {
  border: 0.5em solid hsl(200, 5%, 90%);
  border: 0.5em solid var(--col-grey-light);
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
}
.video-player.video-player--framed .video-player__video {
  border-radius: 1.125em;
}
.video-player__video {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  border-radius: 1.5em;
}

/*
==========================================================================
    Background icons
==========================================================================
*/
.site-background {
  position: absolute;
  z-index: -10;
  top: 50vh;
  right: -10vw;
  bottom: 50vh;
  left: -10vw;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-around;
  opacity: 0.025;
}
.site-background svg {
  width: 40%;
  height: auto;
}
.site-background svg:nth-child(even) {
  align-self: flex-end;
}
.site-background svg path {
  fill: hsl(200, 15%, 15%);
  fill: var(--col-text);
}

/*
==========================================================================
    Progress-circle
==========================================================================
*/
.progress-circle {
  position: relative;
}
.progress-circle__value {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  text-align: center;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  font-size: 0.875em;
  line-height: 1em;
  font-weight: bold;
}
.progress-circle__gauge {
  display: block;
  width: 4em;
  aspect-ratio: 1/1;
  stroke-linecap: round;
}
.progress-circle__gauge-base {
  fill: none;
  stroke: hsl(200, 5%, 90%);
  stroke: var(--col-grey-light);
  stroke-width: 0.5em;
}
.progress-circle__gauge-arc {
  fill: none;
  stroke: hsl(28, 97%, 52%);
  stroke: var(--col-prim);
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 0.5em;
  transition: stroke-dasharray 0.5s ease-out;
}

/*
==========================================================================
    Process
==========================================================================
*/
.process__steps .step {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 2em;
  margin: 3em 0;
}
.process__steps .step:first-child {
  margin-top: 0;
}
.process__steps .step:last-child {
  margin-bottom: 0;
}
.process__steps .step:not(:last-child):before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 2em;
  left: 0.75em;
  height: calc(100% + 2em);
  border-right: 0.5em solid hsl(200, 5%, 85%);
  border-right: 0.5em solid var(--col-grey);
}
.process__steps .step__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  box-shadow: 0 0 0 0.5em hsl(200, 5%, 85%);
  box-shadow: 0 0 0 0.5em var(--col-grey);
  color: #fff;
  line-height: 1em;
  text-align: center;
}
.process__steps .step__content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5em;
}
.process__steps .step__title {
  font-size: 1.25em;
}
.process__steps .step__description {
  max-width: 100ch;
}

@media only screen and (min-width: 992px) {
  .process__steps .step {
    width: calc(50% + 1em);
  }
  .process__steps .step:nth-child(even) {
    margin-left: auto;
    text-align: right;
  }
  .process__steps .step:nth-child(even) .step__title {
    flex-direction: row-reverse;
  }
  .process__steps .step:nth-child(even) .step__title:after {
    left: auto;
    right: 1.25em;
  }
  .process__steps .step:nth-child(odd) {
    flex-direction: row-reverse;
  }
  .process__steps .step:nth-child(odd):not(:last-child):before {
    left: auto;
    right: 0.75em;
  }
  .process__steps .step__icon {
    margin-top: -0.15em;
  }
  .process__steps .step__content {
    gap: 0.75em;
  }
  .process__steps .step__title {
    display: flex;
    align-items: center;
  }
  .process__steps .step__title:after {
    content: "";
    position: relative;
    z-index: -1;
    left: 1.25em;
    flex-grow: 1;
    border-top: 0.15rem solid hsl(200, 5%, 85%);
    border-top: 0.15rem solid var(--col-grey);
  }
}
/*
==========================================================================
    Key visual (used in hero)
==========================================================================
*/
.key-visual {
  container-name: key-visual;
  container-type: inline-size;
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
}
.key-visual__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.05;
}
.key-visual__background svg {
  height: 100%;
  width: auto;
}
.key-visual__background svg path {
  fill: hsl(200, 15%, 15%);
  fill: var(--col-text);
}
.key-visual__orbs {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.key-visual__orbs .orb {
  --orb-shift: 5%;
  position: absolute;
  height: auto;
  aspect-ratio: 1/1;
}
.key-visual__orbs .orb:nth-child(1) {
  top: 7.5%;
  left: 5%;
  width: 14%;
}
.key-visual__orbs .orb:nth-child(1) .orb__background {
  top: var(--orb-shift);
}
.key-visual__orbs .orb:nth-child(2) {
  top: 50%;
  left: 83%;
  width: 12%;
}
.key-visual__orbs .orb:nth-child(2) .orb__background {
  bottom: var(--orb-shift);
}
.key-visual__orbs .orb:nth-child(3) {
  top: 77%;
  left: 32%;
  width: 13%;
}
.key-visual__orbs .orb:nth-child(3) .orb__background {
  right: var(--orb-shift);
}
.key-visual__orbs .orb:nth-child(4) {
  top: 5%;
  left: 57.5%;
  width: 12%;
}
.key-visual__orbs .orb:nth-child(4) .orb__background {
  left: var(--orb-shift);
}
.key-visual__orbs .orb__background {
  position: absolute;
  width: 100%;
  height: 100%;
}
.key-visual__orbs .orb__background img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}
.key-visual__frames {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4%;
  -webkit-perspective: 50em;
          perspective: 50em;
}
.key-visual__frames .frame {
  position: relative;
  width: 20%;
  height: auto;
  aspect-ratio: 1/2;
  border-radius: 1em;
  background: var(--col-grey-60);
  overflow: hidden;
  box-shadow: 0 0 0 0.35em hsl(200, 10%, 40%);
  box-shadow: 0 0 0 0.35em var(--col-text-light);
}
.key-visual__frames .frame:nth-child(1) {
  width: 17.5%;
  -webkit-transform-origin: bottom right;
          transform-origin: bottom right;
  -webkit-transform: rotate3d(0, 1, -0.15, 20deg);
          transform: rotate3d(0, 1, -0.15, 20deg);
}
.key-visual__frames .frame:nth-child(3) {
  width: 17.5%;
  -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
  -webkit-transform: rotate3d(0, 1, -0.15, -20deg);
          transform: rotate3d(0, 1, -0.15, -20deg);
}
.key-visual__frames .frame__background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.key-visual__frames .frame__background img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@container key-visual (max-width: 40em) {
  .key-visual__frames .frame {
    border-radius: 0.75em;
    box-shadow: 0 0 0 0.275em hsl(200, 15%, 15%);
    box-shadow: 0 0 0 0.275em var(--col-text);
  }
}
@container key-visual (max-width: 30em) {
  .key-visual__frames .frame {
    border-radius: 0.5em;
    box-shadow: 0 0 0 0.2em hsl(200, 15%, 15%);
    box-shadow: 0 0 0 0.2em var(--col-text);
  }
}
/*
==========================================================================
    Color blocks
==========================================================================
*/
.color-blocks {
  display: flex;
  align-items: stretch;
  margin: 2.5vw;
}
.color-blocks:first-child {
  margin-top: 0;
}
.color-blocks:last-child {
  margin-bottom: 0;
}
.color-blocks .block {
  flex: 1;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  text-align: center;
  font-size: 2vw;
  line-height: 1em;
  font-weight: bold;
}
.color-blocks .block.block--prim {
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
}
.color-blocks .block.block--sec {
  background-color: hsl(177, 57%, 42%);
  background-color: var(--col-sec);
}
.color-blocks .block.block--tert {
  background-color: hsl(355, 98%, 74%);
  background-color: var(--col-tert);
}
.color-blocks .block.block--quat {
  background-color: hsl(200, 15%, 15%);
  background-color: var(--col-quat);
}
.color-blocks .block.block--quin {
  background-color: var(--col-quin);
}
.color-blocks .block.block--sen {
  background-color: var(--col-sen);
}
.color-blocks .block[class*=block--text] {
  color: hsl(0, 0%, 100%);
  color: var(--col-body-bg);
}
.color-blocks .block.block--text {
  background-color: #000;
  background-color: var(--col-text-x-dark);
}
.color-blocks .block.block--text-80 {
  background-color: hsl(200, 15%, 7.5%);
  background-color: var(--col-text-dark);
}
.color-blocks .block.block--text-60 {
  background-color: hsl(200, 15%, 15%);
  background-color: var(--col-text);
}
.color-blocks .block.block--text-40 {
  background-color: hsl(200, 10%, 40%);
  background-color: var(--col-text-light);
}
.color-blocks .block.block--text-20 {
  background-color: hsl(200, 5%, 60%);
  background-color: var(--col-text-x-light);
}
.color-blocks .block[class*=block--grey] {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
}
.color-blocks .block.block--grey {
  background-color: hsl(200, 5%, 75%);
  background-color: var(--col-grey-x-dark);
}
.color-blocks .block.block--grey-80 {
  background-color: hsl(200, 5%, 80%);
  background-color: var(--col-grey-dark);
}
.color-blocks .block.block--grey-60 {
  background-color: hsl(200, 5%, 85%);
  background-color: var(--col-grey);
}
.color-blocks .block.block--grey-40 {
  background-color: hsl(200, 5%, 90%);
  background-color: var(--col-grey-light);
}
.color-blocks .block.block--grey-20 {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
}

/*
==========================================================================
    Stats
==========================================================================
*/
.stats {
  container-name: stats;
  container-type: inline-size;
  margin: 3em 0;
}
.stats:first-child {
  margin-top: 0;
}
.stats:last-child {
  margin-bottom: 0;
}
.stats__grid {
  --gap-y: 6em;
  --gap-x: 6em;
  --columns: 3;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  gap: var(--gap-y) var(--gap-x);
}
.stats__grid .stat {
  width: calc(99.9% / var(--columns) - (var(--gap-x) * (var(--columns) - 1) / var(--columns)));
}
.stats .stat {
  container-name: stats-item;
  container-type: inline-size;
  position: relative;
  display: flex;
  flex-direction: column;
}
.stats .stat__icon {
  position: absolute;
  z-index: -1;
  top: calc(-1 * (var(--gap-y) / 2));
  left: calc(var(--gap-x) / 2);
  color: hsl(200, 5%, 85%);
  color: var(--col-grey);
}
.stats .stat__icon [class*=fa-] {
  font-size: 10em;
}
.stats .stat__number {
  font-size: 4em;
  line-height: 1em;
  font-weight: 800;
}
.stats .stat__title {
  margin: 0.75em 0 0.5em;
  font-size: 1em;
}
.stats .stat__title:first-child {
  margin-top: 0;
}
.stats .stat__title:last-child {
  margin-bottom: 0;
}
@container stats (max-width: 56em) {
  .stats__grid {
    --columns: 2;
  }
}
@container stats-item (max-width: 15em) {
  .stats .stat__icon [class*=fa-] {
    font-size: 8em;
  }
  .stats .stat__number {
    font-size: 3em;
  }
}
@container stats-item (max-width: 12em) {
  .stats .stat__icon {
    left: auto;
    right: calc(var(--gap-x) / 2);
  }
  .stats .stat__icon [class*=fa-] {
    font-size: 6em;
  }
  .stats .stat__number {
    font-size: 2em;
  }
}
@media only screen and (max-width: 675px) {
  .stats__grid {
    --gap-y: 4em;
    --gap-x: 4em;
  }
}
@media only screen and (max-width: 580px) {
  .stats {
    margin: 2em 0;
  }
}
@media only screen and (max-width: 400px) {
  .stats__grid {
    --gap-y: 3em;
    --gap-x: 3em;
  }
}
/*
==========================================================================
    Logos
==========================================================================
*/
.logos {
  margin: 3em 0;
}
.logos:first-child {
  margin-top: 0;
}
.logos:last-child {
  margin-bottom: 0;
}
.logos.logos--spaced-evenly {
  container-name: logos;
  container-type: inline-size;
}
.logos.logos--spaced-evenly .logos__grid {
  --gap-y: 2em;
  --gap-x: 2em;
  justify-content: flex-start;
}
.logos.logos--spaced-evenly .logos__grid .logo {
  width: calc(16.66% - var(--gap-x)*5/6);
}
.logos.logos--spaced-evenly .logos__grid .logo__link:hover + .logo__image img, .logos.logos--spaced-evenly .logos__grid .logo__link:focus + .logo__image img {
  opacity: 0.5;
}
.logos.logos--spaced-evenly .logos__grid .logo__image {
  width: 100%;
  padding: 10%;
  border-radius: 1em;
  border: Max(0.05em, 1px) solid hsla(200deg, 15%, 15%, 0.25);
  border: Max(0.05em, 1px) solid hsla(var(--col-text-hsl), 0.25);
}
.logos.logos--spaced-evenly .logos__grid .logo__image img {
  aspect-ratio: 2.5/1;
  -o-object-fit: contain;
     object-fit: contain;
  transition: opacity 0.15s ease-out;
}
.logos__grid {
  --gap-y: 2em;
  --gap-x: 4em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--gap-y) var(--gap-x);
}
.logos .logo {
  position: relative;
}
.logos .logo__link {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.logos .logo__image img {
  display: block;
  width: 100%;
  height: auto;
  -webkit-filter: contrast(0) brightness(0.25);
          filter: contrast(0) brightness(0.25);
}
.logos .logo__image svg {
  display: block;
  width: auto;
  height: auto;
  max-width: 8em;
  max-height: 4em;
}
.logos .logo__image svg path {
  fill: hsl(200, 15%, 15%);
  fill: var(--col-text);
}
.logos__subtitle {
  margin: max(5vw, 3em) 0;
  text-wrap: balance;
}
.logos__subtitle:first-child {
  margin-top: 0;
}
.logos__subtitle:last-child {
  margin-bottom: 0;
}

@media only screen and (max-width: 991px) {
  .logos__grid {
    --gap-y: 1.5em;
    --gap-x: 3em;
  }
  .logos .logo__image svg {
    max-width: 6em;
    max-height: 3em;
  }
}
@media only screen and (max-width: 480px) {
  .logos__grid {
    --gap-y: 1em;
    --gap-x: 2em;
  }
  .logos .logo__image svg {
    max-width: 5em;
    max-height: 2.5em;
  }
}
@container logos (max-width: 65em) {
  .logos.logos--spaced-evenly .logos__grid .logo {
    width: calc(20% - var(--gap-x)*4/5);
  }
}
@container logos (max-width: 52.5em) {
  .logos.logos--spaced-evenly .logos__grid .logo {
    width: calc(25% - var(--gap-x)*3/4);
  }
}
@container logos (max-width: 40em) {
  .logos.logos--spaced-evenly .logos__grid .logo {
    width: calc(33.33% - var(--gap-x)*2/3);
  }
}
@container logos (max-width: 30em) {
  .logos.logos--spaced-evenly .logos__grid {
    --gap-x: 1em;
    --gap-y: 1em;
  }
}
/*
==========================================================================
    Portal
==========================================================================
*/
.portal {
  container-name: portal;
  container-type: inline-size;
}
.portal__grid {
  --gap-y: 1em;
  --gap-x: 1em;
  --columns: 3;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: var(--gap-y) var(--gap-x);
}
.portal__grid .link {
  width: calc(99.9% / var(--columns) - (var(--gap-x) * (var(--columns) - 1) / var(--columns)));
}
.portal .link {
  container-name: portal-item;
  container-type: inline-size;
  display: flex;
}
.portal .link__inner {
  display: flex;
  align-items: center;
  gap: 1em;
  width: 100%;
  padding: 1.35em 1.5em 1.25em;
  border-radius: 1em;
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-size: 1.25em;
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 90%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-light);
  transition: all 0.15s ease-out;
}
.portal .link__inner:hover, .portal .link__inner:focus {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.portal .link__icon {
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
}
.portal .link__title {
  flex-grow: 1;
  font-size: 1em;
}
.portal .link__arrow {
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}

@container portal (max-width: 56em) {
  .portal__grid {
    --columns: 2;
  }
}
@container portal (max-width: 37em) {
  .portal__grid {
    --columns: 1;
  }
}
@container portal-item (max-width: 20em) {
  .portal .link__inner {
    font-size: 1.125em;
  }
}
@media only screen and (max-width: 400px) {
  .portal .link__inner {
    padding: 1.15em 1.25em 1em;
  }
}
/*
==========================================================================
    Cards
==========================================================================
*/
.cards {
  margin: 2em 0;
}
.cards:first-child {
  margin-top: 0;
}
.cards:last-child {
  margin-bottom: 0;
}
.cards__slider {
  overflow: visible;
}
.cards__slider[\:not-has\(.swiper-pagination-lock\)] {
  padding-bottom: 3em;
}
.cards__slider:not(:has(.swiper-pagination-lock)) {
  padding-bottom: 3em;
}
.cards__slider .swiper-wrapper {
  align-items: stretch;
}
.cards__slider .swiper-wrapper .swiper-slide {
  display: flex;
  height: auto;
}
.cards__slider .card {
  width: 100%;
}
.cards__grid {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: var(--gap-y) var(--gap-x);
}
.cards__grid.cards__grid--two-columns {
  --gap-y: 6em;
  --gap-x: 4em;
  --columns: 2;
}
.cards__grid.cards__grid--two-columns:not(.cards__grid--align-top) {
  --gap-y: 8em;
  padding-bottom: 5vw;
}
.cards__grid.cards__grid--two-columns:not(.cards__grid--align-top) .card:nth-child(2n+2) {
  -webkit-transform: translate3d(0, 5vw, 0);
          transform: translate3d(0, 5vw, 0);
}
.cards__grid.cards__grid--three-columns {
  --gap-y: 5em;
  --gap-x: 3em;
  --columns: 3;
}
.cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) {
  --gap-y: 6em;
  padding-bottom: 10vw;
}
.cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) .card:nth-child(3n+2) {
  -webkit-transform: translate3d(0, 2.5vw, 0);
          transform: translate3d(0, 2.5vw, 0);
}
.cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) .card:nth-child(3n+3) {
  -webkit-transform: translate3d(0, 5vw, 0);
          transform: translate3d(0, 5vw, 0);
}
.cards__grid .card {
  width: calc(99.9% / var(--columns) - (var(--gap-x) * (var(--columns) - 1) / var(--columns)));
}
.cards .card {
  container-name: cards-item;
  container-type: inline-size;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border-radius: 1.5em;
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 90%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-light);
  transition: all 0.15s ease-out;
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card:has(.card__link):hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card:focus-within {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card:has(.card__link):hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card:focus-within {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card:has(.card__link):hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card[focus-within] {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:hover, .cards .card:focus-within {
  background-color: hsl(200, 5%, 95%);
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card:has(.card__link):hover, .cards .card:focus-within {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.cards .card[\:has\(.card__link\)]:active {
  top: 1px;
}
.cards .card:has(.card__link):active {
  top: 1px;
}
.cards .card__link {
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.cards .card__link:hover ~ .card__image:after, .cards .card__link:focus ~ .card__image:after {
  opacity: 0;
}
.cards .card__link:hover ~ .card__image > img, .cards .card__link:focus ~ .card__image > img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.cards .card__link:hover ~ .card__content .card__title, .cards .card__link:focus ~ .card__content .card__title {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.cards .card__image {
  position: relative;
  overflow: hidden;
  border-radius: 1.5em 1.5em 0 0;
}
.cards .card__image:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  box-shadow: inset 0 -5em 10em #000;
  opacity: 0.5;
  transition: opacity 0.3s ease-out;
}
.cards .card__image > img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}
.cards .card__logo {
  position: absolute;
  z-index: 1;
  bottom: 2em;
  left: 2em;
}
.cards .card__logo img {
  display: block;
  height: 3em;
  width: auto;
  aspect-ratio: 3/1;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: bottom left;
     object-position: bottom left;
}
.cards .card__label {
  position: absolute;
  z-index: 1;
  bottom: 2em;
  right: 2em;
  max-width: calc(100% - 4em);
  padding: 0.35em 1em 0.25em;
  border-radius: 1.5em;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  color: #fff;
  line-height: 1.5em;
  font-weight: 500;
  text-align: right;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cards .card__content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1em;
  padding: max(1.5em, 6%);
}
.cards .card__title {
  text-decoration-color: hsl(28, 97%, 52%) !important;
  text-decoration-color: var(--col-prim) !important;
}
.cards .card__title {
  font-size: 1.5em;
  line-height: 1.5em;
  text-underline-offset: 0.3em;
  transition: all 0.15s ease-out;
}
.cards .card__subtitle {
  font-size: 1.125em;
}
.cards .card__meta {
  margin: -0.5em 0;
  font-size: 0.875em;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
}
.cards .card__meta:first-child {
  margin-top: 0;
}
.cards .card__meta:last-child {
  margin-bottom: 0;
}
.cards .card__author {
  padding: 0 max(1.5em, 6%) max(1.5em, 6%);
}

@media only screen and (max-width: 1200px) {
  .cards__grid.cards__grid--two-columns, .cards__grid.cards__grid--three-columns {
    --gap-y: 5em;
    --gap-x: 3em;
  }
  .cards__grid.cards__grid--two-columns:not(.cards__grid--align-top), .cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) {
    --gap-y: 6em;
  }
  .cards__grid.cards__grid--three-columns {
    --columns: 2;
  }
  .cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) .card:nth-child(3n+2) {
    -webkit-transform: none;
            transform: none;
  }
  .cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) .card:nth-child(3n+3) {
    -webkit-transform: none;
            transform: none;
  }
  .cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) .card:nth-child(2n+2) {
    -webkit-transform: translate3d(0, 5vw, 0);
            transform: translate3d(0, 5vw, 0);
  }
}
@media only screen and (max-width: 991px) {
  .cards__grid.cards__grid--two-columns, .cards__grid.cards__grid--three-columns {
    --gap-y: 4em;
    --gap-x: 2em;
  }
  .cards__grid.cards__grid--two-columns:not(.cards__grid--align-top), .cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) {
    --gap-y: 5em;
  }
}
@media only screen and (max-width: 767px) {
  .cards__grid.cards__grid--two-columns, .cards__grid.cards__grid--three-columns {
    --gap-y: 6vw;
    --columns: 1;
  }
  .cards__grid.cards__grid--two-columns:not(.cards__grid--align-top), .cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) {
    --gap-y: 6vw;
    padding-bottom: 0;
  }
  .cards__grid.cards__grid--two-columns:not(.cards__grid--align-top) .card, .cards__grid.cards__grid--three-columns:not(.cards__grid--align-top) .card {
    -webkit-transform: none !important;
            transform: none !important;
  }
}
@container cards-item (max-width: 30em) {
  .cards .card__logo img {
    aspect-ratio: 2/1;
  }
  .cards .card__label {
    bottom: 1.5em;
    right: 1.5em;
    max-width: calc(100% - 3em);
    font-size: 0.875em;
  }
  .cards .card__title {
    font-size: 1.25em;
  }
  .cards .card__subtitle {
    font-size: 1em;
  }
  .cards .card__description {
    font-size: 0.875em;
  }
}
/*
==========================================================================
    Case details
==========================================================================
*/
.case-details {
  container-name: case-details;
  container-type: inline-size;
  margin: 3em 0;
}
.case-details:first-child {
  margin-top: 0;
}
.case-details:last-child {
  margin-bottom: 0;
}
.case-details__grid {
  --gap-y: 1.5em;
  --gap-x: 3em;
  --columns: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: var(--gap-y) var(--gap-x);
}
.case-details__grid .detail {
  width: calc(99.9% / var(--columns) - (var(--gap-x) * (var(--columns) - 1) / var(--columns)));
}
.case-details .detail {
  padding-bottom: 1.5em;
  border-bottom: 0.1em solid hsl(200, 5%, 90%);
  border-bottom: 0.1em solid var(--col-grey-light);
}
.case-details .detail__title {
  font-size: 1.25em;
}
.case-details .detail__subtitle {
  margin: 0.5em 0 0;
}
.case-details .detail__subtitle a {
  text-decoration-color: hsl(28, 97%, 52%) !important;
  text-decoration-color: var(--col-prim) !important;
}
.case-details .detail__subtitle a {
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  font-weight: 500;
}

@container case-details (max-width: 37em) {
  .case-details__grid {
    --columns: 1;
  }
}
@media only screen and (max-width: 480px) {
  .case-details__grid {
    --gap-y: 1em;
  }
  .case-details .detail {
    padding-bottom: 1em;
  }
}
/*
==========================================================================
    Testimonials
==========================================================================
*/
.testimonials.narrow .testimonials__slider {
  padding: max(3vw, 2em) max(5vw, 2em);
}
.testimonials.narrow .testimonials__slider[\:not-has\(.swiper-pagination-lock\)] {
  padding-bottom: calc(2em + Max(3vw, 2em));
}
.testimonials.narrow .testimonials__slider:not(:has(.swiper-pagination-lock)) {
  padding-bottom: calc(2em + Max(3vw, 2em));
}
.testimonials__slider {
  padding: max(4vw, 2em) max(8vw, 2em);
  border-radius: 2em;
  border: 0.1em solid hsl(200, 5%, 90%);
  border: 0.1em solid var(--col-grey-light);
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
}
.testimonials__slider[\:not-has\(.swiper-pagination-lock\)] {
  padding-bottom: calc(3em + Max(4vw, 2em));
}
.testimonials__slider:not(:has(.swiper-pagination-lock)) {
  padding-bottom: calc(3em + Max(4vw, 2em));
}
.testimonials .testimonials__slider .testimonial {
  text-align: center;
}
.testimonials .testimonials__slider .testimonial__content {
  font-size: 1.25em;
}
.testimonials .testimonials__slider .testimonial__author {
  justify-content: center;
}
.testimonials .testimonials__slider .testimonial__author-photo {
  width: 3.5em;
}
.testimonials .testimonials__slider .testimonial__author-details:not(:first-child) {
  text-align: left;
}
.testimonials .testimonials__slider .testimonial__author-details:first-child {
  align-items: center;
}
.testimonials .testimonials__slider .testimonial__author-name, .testimonials .testimonials__slider .testimonial__author-position {
  font-size: 1em;
}
.testimonials .testimonial__content {
  font-size: 2em;
}
.testimonials .testimonial__content p, .testimonials .testimonial__content .gform_wrapper .gform_fields .gfield.gsection .gsection_description, .gform_wrapper .gform_fields .gfield.gsection .testimonials .testimonial__content .gsection_description {
  font-weight: 500;
  line-height: 1.618em;
}
.testimonials .testimonial__content p:first-of-type:before, .testimonials .testimonial__content .gform_wrapper .gform_fields .gfield.gsection .gsection_description:first-of-type:before, .gform_wrapper .gform_fields .gfield.gsection .testimonials .testimonial__content .gsection_description:first-of-type:before {
  content: '"';
}
.testimonials .testimonial__content p:last-of-type:after, .testimonials .testimonial__content .gform_wrapper .gform_fields .gfield.gsection .gsection_description:last-of-type:after, .gform_wrapper .gform_fields .gfield.gsection .testimonials .testimonial__content .gsection_description:last-of-type:after {
  content: '"';
}
.testimonials .testimonial__author {
  margin: 2em 0 0;
  display: flex;
  align-items: center;
  gap: 1.5em;
}
.testimonials .testimonial__author-photo {
  align-self: flex-start;
  width: 5em;
  height: auto;
  aspect-ratio: 1/1;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}
.testimonials .testimonial__author-details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.testimonials .testimonial__author-name {
  display: block;
  font-size: 1.25em;
  line-height: 1.3em;
}
.testimonials .testimonial__author-position {
  display: block;
  margin: 0.25em 0 0;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 1.25em;
  line-height: 1.618em;
}

@media only screen and (max-width: 675px) {
  .testimonials .testimonial__content {
    font-size: 1.5em;
  }
  .testimonials .testimonial__author-photo {
    width: 4em;
  }
  .testimonials .testimonial__author-name {
    font-size: 1.125em;
  }
  .testimonials .testimonial__author-position {
    font-size: 1.125em;
  }
}
@media only screen and (max-width: 480px) {
  .testimonials .testimonial__content {
    font-size: 1.25em;
  }
  .testimonials .testimonial__author-photo {
    width: 3.5em;
  }
  .testimonials .testimonial__author-name {
    font-size: 1em;
  }
  .testimonials .testimonial__author-position {
    font-size: 1em;
  }
}
/*
==========================================================================
    Masters
==========================================================================
*/
.masters {
  container-name: masters;
  container-type: inline-size;
  margin: Max(4vw, 2.5em) 0;
  margin: var(--small-spacing) 0;
}
.masters:first-child {
  margin-top: 0;
}
.masters:last-child {
  margin-bottom: 0;
}
.masters__grid {
  --gap-y: 6em;
  --gap-x: 3em;
  --columns: 3;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: var(--gap-y) var(--gap-x);
}
.masters__grid .master {
  width: calc(99.9% / var(--columns) - (var(--gap-x) * (var(--columns) - 1) / var(--columns)));
}
.masters .master {
  --border-radius: 1.5em;
  container-name: masters-item;
  container-type: inline-size;
  border-radius: var(--border-radius);
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 90%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-light);
}
.masters .master__image {
  position: relative;
  aspect-ratio: 3/4;
  border-radius: var(--border-radius) var(--border-radius) 0 0;
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  overflow: hidden;
}
.masters .master__image img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.masters .master__content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: max(1.25em, 8%);
}
.masters .master__title {
  text-decoration-color: hsl(28, 97%, 52%) !important;
  text-decoration-color: var(--col-prim) !important;
}
.masters .master__title {
  font-size: 1.5em;
  text-underline-offset: 0.3em;
  transition: all 0.15s ease-out;
}
.masters .master__subtitle {
  margin: 0.5em 0 0;
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
  font-size: 0.875em;
}
.masters .master__subtitle:first-child {
  margin-top: 0;
}
.masters .master__subtitle:last-child {
  margin-bottom: 0;
}

@container masters (max-width: 55em) {
  .masters__grid {
    --gap-y: 4em;
    --gap-x: 2em;
    --columns: 2;
  }
}
@container masters (max-width: 35em) {
  .masters__grid {
    --gap-y: 6vw;
    --gap-x: 1.5em;
  }
}
@container masters-item (max-width: 20em) {
  .masters .master__title {
    font-size: 1.25em;
  }
}
@container masters-item (max-width: 15em) {
  .masters .master__title {
    font-size: 1.125em;
  }
  .masters .master__subtitle {
    font-size: 0.75em;
  }
}
@media only screen and (max-width: 675px) {
  .masters .master {
    --border-radius: 1em;
  }
}
/*
==========================================================================
    Vacancies
==========================================================================
*/
.vacancies__list .vacancy {
  container-name: vacancies-item;
  container-type: inline-size;
  display: block;
  margin: 1.5em 0;
}
.vacancies__list .vacancy:first-child {
  margin-top: 0;
}
.vacancies__list .vacancy:last-child {
  margin-bottom: 0;
}
.vacancies__list .vacancy:hover, .vacancies__list .vacancy:focus {
  text-decoration: none;
}
.vacancies__list .vacancy:hover .vacancy__inner, .vacancies__list .vacancy:focus .vacancy__inner {
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  box-shadow: inset 0 0 0 0.1em hsl(200, 5%, 95%);
  box-shadow: inset 0 0 0 0.1em var(--col-grey-x-light);
}
.vacancies__list .vacancy:hover .vacancy__title, .vacancies__list .vacancy:focus .vacancy__title {
  text-decoration: underline;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
.vacancies__list .vacancy__inner {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em 2em;
  padding: 1.35em 1.5em 1.25em;
  border-radius: 1em;
  background-color: hsl(0, 0%, 100%);
  background-color: var(--col-body-bg);
  color: hsl(200, 15%, 15%);
  color: var(--col-text);
  box-shadow: inset 0 0 0 0.15em hsl(200, 5%, 90%);
  box-shadow: inset 0 0 0 0.15em var(--col-grey-light);
  transition: all 0.15s ease-out;
}
.vacancies__list .vacancy__title {
  flex-grow: 1000;
  font-size: 1.25em;
  text-decoration-color: hsl(28, 97%, 52%);
  text-decoration-color: var(--col-prim);
}
.vacancies__list .vacancy__wrap-container {
  flex-grow: 1;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.25em 2em;
}
.vacancies__list .vacancy__hours {
  flex-shrink: 0;
}
.vacancies__list .vacancy__date {
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}
.vacancies__list .vacancy__arrow {
  margin-left: auto;
  color: hsl(200, 5%, 60%);
  color: var(--col-text-x-light);
}

/*
==========================================================================
    USPs
==========================================================================
*/
.usps {
  container-name: usps;
  container-type: inline-size;
  margin: 3em 0;
}
.usps:first-child {
  margin-top: 0;
}
.usps:last-child {
  margin-bottom: 0;
}
.usps__grid {
  --gap-y: 4em;
  --gap-x: 4em;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--gap-y) var(--gap-x);
}
.usps__grid.usps__grid--two-columns .usp {
  width: calc(50% - var(--gap-x)*1/2);
}
.usps__grid.usps__grid--three-columns .usp {
  width: calc(33.33% - var(--gap-x)*2/3);
}
.usps__grid.usps__grid--four-columns {
  --gap-x: 3em;
}
.usps__grid.usps__grid--four-columns .usp {
  width: calc(25% - var(--gap-x)*3/4);
}
.usps .usp {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5em;
  width: 100%;
  text-align: center;
}
.usps .usp__icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5em;
  height: 2.5em;
  border-radius: 50%;
  background-color: hsl(200, 5%, 95%);
  background-color: var(--col-grey-x-light);
  color: hsl(28, 97%, 52%);
  color: var(--col-prim);
  font-size: 1.5em;
  line-height: 1em;
  text-align: center;
}
.usps .usp__check {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  background-color: hsl(28, 97%, 52%);
  background-color: var(--col-prim);
  color: #fff;
  font-size: 0.5rem;
  line-height: 1em;
  box-shadow: 0 0 0 0.5em hsl(0, 0%, 100%);
  box-shadow: 0 0 0 0.5em var(--col-body-bg);
}
.usps .usp__content {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
.usps .usp__title {
  font-size: 1.25em;
}
.usps .usp__read-more {
  font-weight: bold;
}

@media only screen and (max-width: 1200px) {
  .usps__grid.usps__grid--four-columns {
    --gap-x: 4em;
  }
  .usps__grid.usps__grid--four-columns .usp {
    width: calc(50% - var(--gap-x)*1/2);
  }
}
@media only screen and (max-width: 991px) {
  .usps__grid.usps__grid--three-columns .usp {
    width: calc(50% - var(--gap-x)*1/2);
  }
}
@media only screen and (max-width: 580px) {
  .usps__grid {
    --gap-y: 3em;
  }
  .usps__grid.usps__grid--two-columns .usp, .usps__grid.usps__grid--three-columns .usp, .usps__grid.usps__grid--four-columns .usp {
    width: 100%;
  }
  .usps .usp {
    flex-direction: row;
    align-items: flex-start;
    text-align: left;
  }
  .usps .usp__icon {
    flex-shrink: 0;
  }
  .usps .usp__content {
    gap: 0.5em;
  }
  .usps .usp__title {
    font-size: 1.125em;
  }
  .usps .usp__read-more {
    margin-top: 0.5em;
  }
}
/*
==========================================================================
    Body classes
==========================================================================
*/
/*
==========================================================================
    Internet Explorer fixes
==========================================================================
*/
/*
==========================================================================
    iOS fixes
==========================================================================
*/
body.browser-ios .section.section--full .section__inner {
  min-height: -webkit-fill-available;
}
body.browser-ios .section__background.section__background--image.section__background--fixed {
  background-attachment: scroll;
}

/*
==========================================================================
	Media queries
==========================================================================
*/
/**
* Large Devices, Wide Screens
**/
/* == When screen is 1400px or smaller == */
/* == When screen is larger than 1400px == */
/**
* Large Devices, Wide Screens
**/
/* == When screen is 1200px or smaller == */
/* == When screen is larger than 1200px == */
/**
* Medium Devices, Desktops
**/
/* == When screen is 991px or smaller == */
/* == When screen is larger than 991px == */
/**
* Small Devices, Tablets
**/
/* == When screen is 767px or smaller == */
@media only screen and (max-width: 767px) {
  h1 br,
h2 br,
h3 br,
h4 br,
h5 br,
h6 br {
    content: "";
  }
  h1 br:after,
h2 br:after,
h3 br:after,
h4 br:after,
h5 br:after,
h6 br:after {
    content: " ";
  }
}
/* == When screen is larger than 767px == */
/**
* Small Devices, Tablets
**/
/* == When screen is 675px or smaller == */
/* == When screen is larger than 675px == */
/**
* Small Devices, Tablets
**/
/* == When screen is 580px or smaller == */
/* == When screen is larger than 580px == */
/**
* Extra Small Devices, Phones
**/
/* == When screen is 480px or smaller == */
/* == When screen is larger than 480px == */
/**
* Extra Small Devices, Phones
**/
/* == When screen is 400px or smaller == */
/* == When screen is larger than 400px == */
/**
* Extra Small Devices, Phones
**/
/* == When screen is 320px or smaller == */
/* == When screen is larger than 320px == */
/*
==========================================================================
    Styles if logged in and admin-bar visible
==========================================================================
*/
:root {
  --admin-bar-offset: 32px;
}

body.logged-in.admin-bar .sticky-masthead,
body.logged-in.admin-bar .menu-bar,
body.logged-in.admin-bar .menu-bar-shadow,
body.logged-in.admin-bar .scroll-progress-bar {
  top: 32px;
  top: var(--admin-bar-offset);
}

@media screen and (max-width: 782px) {
  :root {
    --admin-bar-offset: 46px;
  }
}
/*
==========================================================================
    Dark mode theme
==========================================================================
*/
@media (color-index: 48) {
  :root {
    --col-text-hsl: 200deg, 15%, 90%;
    --col-text-dark: hsl(200, 15%, 95%);
    --col-text-x-dark: #fff;
    --col-text-light: hsl(200, 12.5%, 70%);
    --col-text-x-light: hsl(200, 10%, 50%);
    --col-grey: hsl(200, 15%, 30%);
    --col-grey-dark: hsl(200, 15%, 35%);
    --col-grey-x-dark: hsl(200, 15%, 40%);
    --col-grey-light: hsl(200, 15%, 25%);
    --col-grey-x-light: hsl(200, 15%, 20%);
    --col-body-bg-hsl: 200deg, 15%, 15%;
    --col-menu-bar-bg: hsl(200, 15%, 12%);
  }
}
@media (color: 48842621) {
  :root {
    --col-text-hsl: 200deg, 15%, 90%;
    --col-text-dark: hsl(200, 15%, 95%);
    --col-text-x-dark: #fff;
    --col-text-light: hsl(200, 12.5%, 70%);
    --col-text-x-light: hsl(200, 10%, 50%);
    --col-grey: hsl(200, 15%, 30%);
    --col-grey-dark: hsl(200, 15%, 35%);
    --col-grey-x-dark: hsl(200, 15%, 40%);
    --col-grey-light: hsl(200, 15%, 25%);
    --col-grey-x-light: hsl(200, 15%, 20%);
    --col-body-bg-hsl: 200deg, 15%, 15%;
    --col-menu-bar-bg: hsl(200, 15%, 12%);
  }
}
@media (color-index: 48) {
  :root {
    --col-text-hsl: 200deg, 15%, 90%;
    --col-text-dark: hsl(200, 15%, 95%);
    --col-text-x-dark: #fff;
    --col-text-light: hsl(200, 12.5%, 70%);
    --col-text-x-light: hsl(200, 10%, 50%);
    --col-grey: hsl(200, 15%, 30%);
    --col-grey-dark: hsl(200, 15%, 35%);
    --col-grey-x-dark: hsl(200, 15%, 40%);
    --col-grey-light: hsl(200, 15%, 25%);
    --col-grey-x-light: hsl(200, 15%, 20%);
    --col-body-bg-hsl: 200deg, 15%, 15%;
    --col-menu-bar-bg: hsl(200, 15%, 12%);
  }
}
@media (color: 48842621) {
  :root {
    --col-text-hsl: 200deg, 15%, 90%;
    --col-text-dark: hsl(200, 15%, 95%);
    --col-text-x-dark: #fff;
    --col-text-light: hsl(200, 12.5%, 70%);
    --col-text-x-light: hsl(200, 10%, 50%);
    --col-grey: hsl(200, 15%, 30%);
    --col-grey-dark: hsl(200, 15%, 35%);
    --col-grey-x-dark: hsl(200, 15%, 40%);
    --col-grey-light: hsl(200, 15%, 25%);
    --col-grey-x-light: hsl(200, 15%, 20%);
    --col-body-bg-hsl: 200deg, 15%, 15%;
    --col-menu-bar-bg: hsl(200, 15%, 12%);
  }
}
@media (prefers-color-scheme: dark) {
  :root {
    --col-text-hsl: 200deg, 15%, 90%;
    --col-text-dark: hsl(200, 15%, 95%);
    --col-text-x-dark: #fff;
    --col-text-light: hsl(200, 12.5%, 70%);
    --col-text-x-light: hsl(200, 10%, 50%);
    --col-grey: hsl(200, 15%, 30%);
    --col-grey-dark: hsl(200, 15%, 35%);
    --col-grey-x-dark: hsl(200, 15%, 40%);
    --col-grey-light: hsl(200, 15%, 25%);
    --col-grey-x-light: hsl(200, 15%, 20%);
    --col-body-bg-hsl: 200deg, 15%, 15%;
    --col-menu-bar-bg: hsl(200, 15%, 12%);
  }
}
:root[data-theme=dark] {
  --col-text-hsl: 200deg, 15%, 90%;
  --col-text-dark: hsl(200, 15%, 95%);
  --col-text-x-dark: #fff;
  --col-text-light: hsl(200, 12.5%, 70%);
  --col-text-x-light: hsl(200, 10%, 50%);
  --col-grey: hsl(200, 15%, 30%);
  --col-grey-dark: hsl(200, 15%, 35%);
  --col-grey-x-dark: hsl(200, 15%, 40%);
  --col-grey-light: hsl(200, 15%, 25%);
  --col-grey-x-light: hsl(200, 15%, 20%);
  --col-body-bg-hsl: 200deg, 15%, 15%;
  --col-menu-bar-bg: hsl(200, 15%, 12%);
}

[data-theme=light] [data-hide-if-theme-is=light] {
  display: none !important;
}

[data-theme=dark] [data-hide-if-theme-is=dark] {
  display: none !important;
}
[data-theme=dark] .leaflet-layer {
  -webkit-filter: invert(100%) hue-rotate(180deg) saturate(25%) brightness(125%) contrast(80%);
          filter: invert(100%) hue-rotate(180deg) saturate(25%) brightness(125%) contrast(80%);
}
[data-theme=dark] .leaflet-bar,
[data-theme=dark] .leaflet-reset-view {
  -webkit-filter: invert(100%) hue-rotate(180deg) brightness(95%) contrast(80%);
          filter: invert(100%) hue-rotate(180deg) brightness(95%) contrast(80%);
}
[data-theme=dark] .leaflet-control-attribution {
  background: rgba(0, 0, 0, 0.7);
}
[data-theme=dark] .leaflet-control-attribution a {
  color: hsl(200, 10%, 40%);
  color: var(--col-text-light);
}
[data-theme=dark] .map-container {
  background-image: url("../img/theme/map-background-dark.jpg");
}
[data-theme=dark] .logos__grid .logo__image img {
  -webkit-filter: contrast(0) brightness(0.25) invert(1);
          filter: contrast(0) brightness(0.25) invert(1);
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3Nhc3MvYXBwLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9fc3dpcGVyLWJ1bmRsZS5taW4uc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvX2xlYWZsZXQuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvbWl4aW5zL19taXhpbi1mbGV4bWFyZ2luLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL19mb250LWZhY2Uuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvX2FuaW1hdGlvbnMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvX2hpZGRlbi1jbGFzc2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL19jb250ZW50LnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL19jb21wb25lbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2Jhc2Uuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvbWl4aW5zL19taXhpbi1pbnB1dC1zdHlsZS1yZXNldC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19zZWN0aW9ucy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19idG5zLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fY29sdW1ucy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19tYXN0aGVhZC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fc2xpZGVycy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19tb2RhbHMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fcG9wb3ZlcnMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fdG9vbHRpcHMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fd2lkZ2V0cy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19zZWN0aW9uLXRpdGxlLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3NvY2lhbC1saW5rcy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19zaWRlYmFyLWxheW91dC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19oYW1idXJnZXIuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fcXVhbnRpdHktb3JiLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3Njcm9sbC1wcm9ncmVzcy1iYXIuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fbWVudS1iYXIuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fc3RpY2t5LW1hc3RoZWFkLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2hlcm8uc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fZnVsbC13aWR0aC1pbWFnZS5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19mdWxsLXdpZHRoLXZpZGVvLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2Z1bGwtd2lkdGgtbWFwLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2Nhc2Utc2luZ2xlLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2NvbnRlbnQtaW1hZ2UtYmxvY2tzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2FjdGlvbi1ibG9jay5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19mYW5jeS12aWRlby5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19tYXAtY29tcG9uZW50cy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19leHBhbmRhYmxlLWl0ZW1zLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3NpdGUtbG9hZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3Njcm9sbC1hbmltYXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3dpemFyZC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19jdXN0b20tcmFkaW8uc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fdHJ1ZWRhcmsuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fbHlua2NvLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3Bvc3QtY29tcG9uZW50cy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3ZpZGVvLXBsYXllci5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19iYWNrZ3JvdW5kLWljb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWNpcmNsZS5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19wcm9jZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2tleS12aXN1YWwuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fY29sb3ItYmxvY2tzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3N0YXRzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2xvZ29zLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX3BvcnRhbC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL19jYXJkcy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9taXhpbnMvX21peGluLXRleHQtbm93cmFwLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL2NvbXBvbmVudHMvX2Nhc2UtZGV0YWlscy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL190ZXN0aW1vbmlhbHMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fbWFzdGVycy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9jb21wb25lbnRzL192YWNhbmNpZXMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvY29tcG9uZW50cy9fdXNwcy5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9fYm9keS1jbGFzc2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL19pZS5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9faW9zLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL19tZWRpYXF1ZXJpZXMuc2NzcyIsIndlYnBhY2s6Ly8uL3Nhc3MvbWVkaWFxdWVyaWVzL18xNDAwLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL21lZGlhcXVlcmllcy9fMTIwMC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9tZWRpYXF1ZXJpZXMvXzk5MS5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9tZWRpYXF1ZXJpZXMvXzc2Ny5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9tZWRpYXF1ZXJpZXMvXzY3NS5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9tZWRpYXF1ZXJpZXMvXzU4MC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9tZWRpYXF1ZXJpZXMvXzQ4MC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9tZWRpYXF1ZXJpZXMvXzQwMC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9tZWRpYXF1ZXJpZXMvXzMyMC5zY3NzIiwid2VicGFjazovLy4vc2Fzcy9fd3AtYWRtaW4tYmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLi9zYXNzL19kYXJrLW1vZGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUFBaEI7Ozs7Q0FBQTtBQ0FBOzs7O0NBQUE7QUNBQTs7OztDQUFBO0FBT0E7O0VBRUksK0JBQUE7RUFDQSxvQ0FBQTtFQUNBLHVCQUFBO0VBRUEsK0JBQUE7RUFDQSxrQ0FBQTtFQUNBLHNCQUFBO0VBRUEsZ0NBQUE7RUFDQSxvQ0FBQTtFQUNBLHVCQUFBO0VBRUEsZ0NBQUE7RUFDQSxvQ0FBQTtFQUNBLHVCQUFBO0VBRUEsZ0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0EsdUJBQUE7RUFDQSxvQ0FBQTtFQUNBLHFDQUFBO0VBRUEsNkJBQUE7RUFDQSxrQ0FBQTtFQUNBLG9DQUFBO0VBQ0EsbUNBQUE7RUFDQSxxQ0FBQTtFQUVBLGlDQUFBO0VBQ0EsMENBQUE7RUFDQSx3Q0FBQTtFQUVBLG1CQUFBO0VBQ0EscUJBQUE7RUFDQSxzQkFBQTtFQUVBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSx1QkFBQTtFQUNBLHFCQUFBO0VBQ0Esc0JBQUE7RUFDQSxvQkFBQTtFQUNBLHdCQUFBO0VBQ0EsdUJBQUE7RUFDQSx3QkFBQTtFQUNBLHNCQUFBO0VBQ0EscUJBQUE7RUFDQSwwQkFBQTtFQUNBLHlCQUFBO0VBQ0EscUJBQUE7QUZFSjs7QUVDQTtFQUNJLDZHQUFBO0VBQ0EsNEJBQUE7RUFFQSx1QkFBQTtFQUNBLDJCQUFBO0VBRUEsd0NBQUE7RUFFQSxnQ0FBQTtFQUNBLGdDQUFBO0VBQ0EsK0JBQUE7RUFDQSxnQ0FBQTtFQUNBLCtCQUFBO0VBQ0EsaUNBQUE7QUZESjs7QUVJQTtFQUVJO0lBQ0ksaUJBQUE7RUZGTjtBQUNGO0FFTUE7RUFFSTtJ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RHpvUVE7RUFFSSxtQ0FBQTtFQUFBLG1DQUFBO0VBQUEseUNBQUE7RUFDQSwrQ0FBQTtFQUFBLCtDQUFBO0VBQUEscURBQUE7QS9Ec29RWjtBK0R6b1FRO0VBRUksbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEseUNBQUE7RUFDQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSxxREFBQTtBL0Rzb1FaO0ErRHpvUVE7RUFFSSxtQ0FBQTtFQUFBLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLCtDQUFBO0VBQUEscURBQUE7QS9Ec29RWjtBK0R6b1FRO0VBRUksbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSxxREFBQTtBL0Rzb1FaO0ErRHpvUVE7RUFFSSxtQ0FBQTtFQUFBLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLCtDQUFBO0VBQUEscURBQUE7QS9Ec29RWjtBK0R6b1FRO0VBRUksbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSxxREFBQTtBL0Rzb1FaO0ErRHpvUVE7RUFFSSxtQ0FBQTtFQUFBLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLCtDQUFBO0VBQUEscURBQUE7QS9Ec29RWjtBK0R6b1FRO0VBRUksbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSxxREFBQTtBL0Rzb1FaO0ErRHpvUVE7RUFFSSxtQ0FBQTtFQUFBLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSx5Q0FBQTtFQUNBLCtDQUFBO0VBQUEsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEsbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLCtDQUFBO0VBQUEscURBQUE7QS9Ec29RWjtBK0R6b1FRO0VBRUksbUNBQUE7RUFBQSxtQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsK0NBQUE7RUFBQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEem9RUTtFQUVJLG1DQUFBO0VBQUEseUNBQUE7RUFDQSwrQ0FBQTtFQUFBLHFEQUFBO0EvRHNvUVo7QStEbm9RUTtFQUNJLFFBQUE7QS9EcW9RWjtBK0R0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PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEltcG9ydCBhbGwgU0NTUyBwYXJ0cyBoZXJlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuXG4vLyBpbXBvcnQgYmFzZSBjb21wb25lbnRzXG5AaW1wb3J0ICdtaXhpbnMnO1xuQGltcG9ydCAndmFyaWFibGVzJztcblxuLy8gaW1wb3J0IHBsdWdpbiBzdHlsZXNoZWV0c1xuQGltcG9ydCAnc3dpcGVyLWJ1bmRsZS5taW4nO1xuQGltcG9ydCAnbGVhZmxldCc7XG5cbi8vIGltcG9ydCBzY3NzIHBhcnRzXG5AaW1wb3J0ICdiYXNlJztcbkBpbXBvcnQgJ2ZvbnQtZmFjZSc7XG5AaW1wb3J0ICdhbmltYXRpb25zJztcbkBpbXBvcnQgJ2dyaWQnO1xuQGltcG9ydCAnaGlkZGVuLWNsYXNzZXMnO1xuQGltcG9ydCAnY29udGVudCc7XG5AaW1wb3J0ICdjb21wb25lbnRzJztcbkBpbXBvcnQgJ2JvZHktY2xhc3Nlcyc7XG5AaW1wb3J0ICdpZSc7XG5AaW1wb3J0ICdpb3MnO1xuQGltcG9ydCAnbWVkaWFxdWVyaWVzJztcbkBpbXBvcnQgJ3dwLWFkbWluLWJhcic7XG5AaW1wb3J0ICdkYXJrLW1vZGUnOyIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRNaXhpbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG5AaW1wb3J0ICdtaXhpbnMvbWl4aW4tZmFtaWx5JztcbkBpbXBvcnQgJ21peGlucy9taXhpbi1mbGV4bWFyZ2luJztcbkBpbXBvcnQgJ21peGlucy9taXhpbi1pbnB1dC1zdHlsZS1yZXNldCc7XG5AaW1wb3J0ICdtaXhpbnMvbWl4aW4tdGV4dC1ub3dyYXAnOyIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFZhcmlhYmxlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi8vIEF1dG9tYXRpYy9tYW51YWwgbGlnaHQgbW9kZVxuOnJvb3QsXG46cm9vdFtkYXRhLXRoZW1lPVwibGlnaHRcIl0ge1xuICAgIC0tY29sLXByaW0taHNsOiAyOGRlZywgOTclLCA1MiU7XG4gICAgLS1jb2wtcHJpbTogaHNsKHZhcigtLWNvbC1wcmltLWhzbCkpO1xuICAgIC0tY29sLXByaW0taGV4OiAjZmI3ZDBmO1xuXG4gICAgLS1jb2wtc2VjLWhzbDogMTc3ZGVnLCA1NyUsIDQyJTtcbiAgICAtLWNvbC1zZWM6IGhzbCh2YXIoLS1jb2wtc2VjLWhzbCkpO1xuICAgIC0tY29sLXNlYy1oZXg6ICMyZWFhYTM7XG5cbiAgICAtLWNvbC10ZXJ0LWhzbDogMzU1ZGVnLCA5OCUsIDc0JTtcbiAgICAtLWNvbC10ZXJ0OiBoc2wodmFyKC0tY29sLXRlcnQtaHNsKSk7XG4gICAgLS1jb2wtdGVydC1oZXg6ICNmZTdjODc7XG5cbiAgICAtLWNvbC1xdWF0LWhzbDogMjAwZGVnLCAxNSUsIDE1JTtcbiAgICAtLWNvbC1xdWF0OiBoc2wodmFyKC0tY29sLXF1YXQtaHNsKSk7XG4gICAgLS1jb2wtcXVhdC1oZXg6ICMyMTI4MmM7XG5cbiAgICAtLWNvbC10ZXh0LWhzbDogMjAwZGVnLCAxNSUsIDE1JTtcbiAgICAtLWNvbC10ZXh0OiBoc2wodmFyKC0tY29sLXRleHQtaHNsKSk7XG4gICAgLS1jb2wtdGV4dC1kYXJrOiBoc2woMjAwZGVnLCAxNSUsIDcuNSUpO1xuICAgIC0tY29sLXRleHQteC1kYXJrOiAjMDAwO1xuICAgIC0tY29sLXRleHQtbGlnaHQ6IGhzbCgyMDBkZWcsIDEwJSwgNDAlKTtcbiAgICAtLWNvbC10ZXh0LXgtbGlnaHQ6IGhzbCgyMDBkZWcsIDUlLCA2MCUpO1xuXG4gICAgLS1jb2wtZ3JleTogaHNsKDIwMGRlZywgNSUsIDg1JSk7XG4gICAgLS1jb2wtZ3JleS1kYXJrOiBoc2woMjAwZGVnLCA1JSwgODAlKTtcbiAgICAtLWNvbC1ncmV5LXgtZGFyazogaHNsKDIwMGRlZywgNSUsIDc1JSk7XG4gICAgLS1jb2wtZ3JleS1saWdodDogaHNsKDIwMGRlZywgNSUsIDkwJSk7XG4gICAgLS1jb2wtZ3JleS14LWxpZ2h0OiBoc2woMjAwZGVnLCA1JSwgOTUlKTtcblxuICAgIC0tY29sLWJvZHktYmctaHNsOiAwZGVnLCAwJSwgMTAwJTtcbiAgICAtLWNvbC1ib2R5LWJnOiBoc2wodmFyKC0tY29sLWJvZHktYmctaHNsKSk7XG4gICAgLS1jb2wtbWVudS1iYXItYmc6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcblxuICAgIC0tY29sLWVycm9yOiBUb21hdG87XG4gICAgLS1jb2wtd2FybmluZzogT3JhbmdlO1xuICAgIC0tY29sLXN1Y2Nlc3M6ICMwMGI5MDA7XG5cbiAgICAtLWNvbC10d2l0dGVyOiAjMDAwOyAvLyAjMWRhMWYyO1xuICAgIC0tY29sLWZhY2Vib29rOiAjMjE3MmYwO1xuICAgIC0tY29sLWxpbmtlZGluOiAjMDA3N2I1O1xuICAgIC0tY29sLWdvb2dsZTogI2RkNGIzOTtcbiAgICAtLWNvbC15b3V0dWJlOiAjZmYwMDAwO1xuICAgIC0tY29sLXZpbWVvOiAjMGZhZWYxO1xuICAgIC0tY29sLWluc3RhZ3JhbTogIzQwNWRlNjtcbiAgICAtLWNvbC13aGF0c2FwcDogIzI1ZDM2NjtcbiAgICAtLWNvbC1waW50ZXJlc3Q6ICNiZDA4MWM7XG4gICAgLS1jb2wtZHJvcGJveDogIzAwN2VlNTtcbiAgICAtLWNvbC1wYXlwYWw6ICMwMDcwYmE7XG4gICAgLS1jb2wtdHJpcGFkdmlzb3I6ICMzNGUwYTE7XG4gICAgLS1jb2wtdHJ1c3RwaWxvdDogIzAwYWE2YztcbiAgICAtLWNvbC10aWt0b2s6ICNmZTJjNTU7XG59XG5cbjpyb290IHtcbiAgICAtLWZvbnQtcHJpbTogJ0VwaWxvZ3VlJywgc3lzdGVtLXVpLCBzYW5zLXNlcmlmO1xuICAgIC0tZm9udC1zZWM6IHZhcigtLWZvbnQtcHJpbSk7XG5cbiAgICAtLWZvbnQtcGF0aDogJy4uL2ZvbnRzJztcbiAgICAtLWZvbnQtc2l6ZTogbWF4KDE2cHgsIDF2dyk7XG5cbiAgICAtLWNvbnRhaW5lci1zaWRlLXNwYWNpbmc6IE1heCgxMHZ3LCAxZW0pO1xuXG4gICAgLS14LXNtYWxsLXNwYWNpbmc6IE1heCgzdncsIDJlbSk7XG4gICAgLS1zbWFsbC1zcGFjaW5nOiBNYXgoNHZ3LCAyLjVlbSk7XG4gICAgLS1tZWRpdW0tc3BhY2luZzogTWF4KDZ2dywgM2VtKTtcbiAgICAtLWRlZmF1bHQtc3BhY2luZzogTWF4KDh2dywgNGVtKTtcbiAgICAtLWxhcmdlLXNwYWNpbmc6IE1heCgxMHZ3LCA1ZW0pO1xuICAgIC0teC1sYXJnZS1zcGFjaW5nOiBNYXgoMTJ2dywgNmVtKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNTgwcHgpIHtcblxuICAgIDpyb290IHtcbiAgICAgICAgLS1mb250LXNpemU6IDE0cHg7XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQwMHB4KSB7XG5cbiAgICA6cm9vdCB7XG4gICAgICAgIC0tZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxufVxuIiwiLyoqXG4gKiBTd2lwZXIgMTEuMS4wXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDI0IFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IE1hcmNoIDI4LCAyMDI0XG4gKi9cblxuQGZvbnQtZmFjZXtmb250LWZhbWlseTpzd2lwZXItaWNvbnM7c3JjOnVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKTtmb250LXdlaWdodDo0MDA7Zm9udC1zdHlsZTpub3JtYWx9OnJvb3R7LS1zd2lwZXItdGhlbWUtY29sb3I6IzAwN2FmZn06aG9zdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmJsb2NrO21hcmdpbi1sZWZ0OmF1dG87bWFyZ2luLXJpZ2h0OmF1dG87ei1pbmRleDoxfS5zd2lwZXJ7bWFyZ2luLWxlZnQ6YXV0bzttYXJnaW4tcmlnaHQ6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MDt6LWluZGV4OjE7ZGlzcGxheTpibG9ja30uc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlcntmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnN3aXBlci13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ei1pbmRleDoxO2Rpc3BsYXk6ZmxleDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybTt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjp2YXIoLS1zd2lwZXItd3JhcHBlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbixpbml0aWFsKTtib3gtc2l6aW5nOmNvbnRlbnQtYm94fS5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLC5zd2lwZXItaW9zIC5zd2lwZXItc2xpZGUsLnN3aXBlci13cmFwcGVye3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwcHgsMCwwKX0uc3dpcGVyLWhvcml6b250YWx7dG91Y2gtYWN0aW9uOnBhbi15fS5zd2lwZXItdmVydGljYWx7dG91Y2gtYWN0aW9uOnBhbi14fS5zd2lwZXItc2xpZGV7ZmxleC1zaHJpbms6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtO2Rpc3BsYXk6YmxvY2t9LnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmt7dmlzaWJpbGl0eTpoaWRkZW59LnN3aXBlci1hdXRvaGVpZ2h0LC5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXNsaWRle2hlaWdodDphdXRvfS5zd2lwZXItYXV0b2hlaWdodCAuc3dpcGVyLXdyYXBwZXJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDt0cmFuc2l0aW9uLXByb3BlcnR5OnRyYW5zZm9ybSxoZWlnaHR9LnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZXt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVufS5zd2lwZXItM2Quc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlcntwZXJzcGVjdGl2ZToxMjAwcHh9LnN3aXBlci0zZCAuc3dpcGVyLXdyYXBwZXJ7dHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkfS5zd2lwZXItM2R7cGVyc3BlY3RpdmU6MTIwMHB4fS5zd2lwZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdywuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGV7dHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkfS5zd2lwZXItY3NzLW1vZGU+LnN3aXBlci13cmFwcGVye292ZXJmbG93OmF1dG87c2Nyb2xsYmFyLXdpZHRoOm5vbmU7LW1zLW92ZXJmbG93LXN0eWxlOm5vbmV9LnN3aXBlci1jc3MtbW9kZT4uc3dpcGVyLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uc3dpcGVyLWNzcy1tb2RlPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOnN0YXJ0IHN0YXJ0fS5zd2lwZXItY3NzLW1vZGUuc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci13cmFwcGVye3Njcm9sbC1zbmFwLXR5cGU6eCBtYW5kYXRvcnl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItdmVydGljYWw+LnN3aXBlci13cmFwcGVye3Njcm9sbC1zbmFwLXR5cGU6eSBtYW5kYXRvcnl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlcntzY3JvbGwtc25hcC10eXBlOm5vbmV9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlcj4uc3dpcGVyLXNsaWRle3Njcm9sbC1zbmFwLWFsaWduOm5vbmV9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQ+LnN3aXBlci13cmFwcGVyOjpiZWZvcmV7Y29udGVudDonJztmbGV4LXNocmluazowO29yZGVyOjk5OTl9LnN3aXBlci1jc3MtbW9kZS5zd2lwZXItY2VudGVyZWQ+LnN3aXBlci13cmFwcGVyPi5zd2lwZXItc2xpZGV7c2Nyb2xsLXNuYXAtYWxpZ246Y2VudGVyIGNlbnRlcjtzY3JvbGwtc25hcC1zdG9wOmFsd2F5c30uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXdyYXBwZXI+LnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZHttYXJnaW4taW5saW5lLXN0YXJ0OnZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKX0uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXdyYXBwZXI6OmJlZm9yZXtoZWlnaHQ6MTAwJTttaW4taGVpZ2h0OjFweDt3aWR0aDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKX0uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWw+LnN3aXBlci13cmFwcGVyPi5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGR7bWFyZ2luLWJsb2NrLXN0YXJ0OnZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKX0uc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWw+LnN3aXBlci13cmFwcGVyOjpiZWZvcmV7d2lkdGg6MTAwJTttaW4td2lkdGg6MXB4O2hlaWdodDp2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKX0uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCwuc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LC5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9we3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO3BvaW50ZXItZXZlbnRzOm5vbmU7ei1pbmRleDoxMH0uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93e2JhY2tncm91bmQ6cmdiYSgwLDAsMCwuMTUpfS5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdHtiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudCh0byBsZWZ0LHJnYmEoMCwwLDAsLjUpLHJnYmEoMCwwLDAsMCkpfS5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHR7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQscmdiYSgwLDAsMCwuNSkscmdiYSgwLDAsMCwwKSl9LnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3B7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMCwwLDAsLjUpLHJnYmEoMCwwLDAsMCkpfS5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9te2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSxyZ2JhKDAsMCwwLC41KSxyZ2JhKDAsMCwwLDApKX0uc3dpcGVyLWxhenktcHJlbG9hZGVye3dpZHRoOjQycHg7aGVpZ2h0OjQycHg7cG9zaXRpb246YWJzb2x1dGU7bGVmdDo1MCU7dG9wOjUwJTttYXJnaW4tbGVmdDotMjFweDttYXJnaW4tdG9wOi0yMXB4O3otaW5kZXg6MTA7dHJhbnNmb3JtLW9yaWdpbjo1MCU7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjo0cHggc29saWQgdmFyKC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtib3JkZXItcmFkaXVzOjUwJTtib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50fS5zd2lwZXItd2F0Y2gtcHJvZ3Jlc3MgLnN3aXBlci1zbGlkZS12aXNpYmxlIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIsLnN3aXBlcjpub3QoLnN3aXBlci13YXRjaC1wcm9ncmVzcykgLnN3aXBlci1sYXp5LXByZWxvYWRlcnthbmltYXRpb246c3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcn0uc3dpcGVyLWxhenktcHJlbG9hZGVyLXdoaXRley0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjojZmZmfS5zd2lwZXItbGF6eS1wcmVsb2FkZXItYmxhY2t7LS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiMwMDB9QGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW57MCV7dHJhbnNmb3JtOnJvdGF0ZSgwZGVnKX0xMDAle3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19LnN3aXBlci12aXJ0dWFsIC5zd2lwZXItc2xpZGV7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2Zvcm06dHJhbnNsYXRlWigwKX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlcjo6YWZ0ZXJ7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7cG9pbnRlci1ldmVudHM6bm9uZX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci1ob3Jpem9udGFsIC5zd2lwZXItd3JhcHBlcjo6YWZ0ZXJ7aGVpZ2h0OjFweDt3aWR0aDp2YXIoLS1zd2lwZXItdmlydHVhbC1zaXplKX0uc3dpcGVyLXZpcnR1YWwuc3dpcGVyLWNzcy1tb2RlLnN3aXBlci12ZXJ0aWNhbCAuc3dpcGVyLXdyYXBwZXI6OmFmdGVye3dpZHRoOjFweDtoZWlnaHQ6dmFyKC0tc3dpcGVyLXZpcnR1YWwtc2l6ZSl9OnJvb3R7LS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOjQ0cHh9LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLWJ1dHRvbi1wcmV2e3Bvc2l0aW9uOmFic29sdXRlO3RvcDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LDUwJSk7d2lkdGg6Y2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKS8gNDQgKiAyNyk7aGVpZ2h0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO21hcmdpbi10b3A6Y2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkvIDIpKTt6LWluZGV4OjEwO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKX0uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQsLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVke29wYWNpdHk6LjM1O2N1cnNvcjphdXRvO3BvaW50ZXItZXZlbnRzOm5vbmV9LnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWhpZGRlbiwuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVue29wYWNpdHk6MDtjdXJzb3I6YXV0bztwb2ludGVyLWV2ZW50czpub25lfS5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1uZXh0LC5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1wcmV2e2Rpc3BsYXk6bm9uZSFpbXBvcnRhbnR9LnN3aXBlci1idXR0b24tbmV4dCBzdmcsLnN3aXBlci1idXR0b24tcHJldiBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvbnRhaW47dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXJ9LnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCBzdmcsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldiBzdmd7dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5zd2lwZXItYnV0dG9uLXByZXYsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dHtsZWZ0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwxMHB4KTtyaWdodDphdXRvfS5zd2lwZXItYnV0dG9uLW5leHQsLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldntyaWdodDp2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsMTBweCk7bGVmdDphdXRvfS5zd2lwZXItYnV0dG9uLWxvY2t7ZGlzcGxheTpub25lfS5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsLnN3aXBlci1idXR0b24tcHJldjphZnRlcntmb250LWZhbWlseTpzd2lwZXItaWNvbnM7Zm9udC1zaXplOnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO3RleHQtdHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O2xldHRlci1zcGFjaW5nOjA7Zm9udC12YXJpYW50OmluaXRpYWw7bGluZS1oZWlnaHQ6MX0uc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyLC5zd2lwZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXJ7Y29udGVudDoncHJldid9LnN3aXBlci1idXR0b24tbmV4dCwuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2e3JpZ2h0OnZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwxMHB4KTtsZWZ0OmF1dG99LnN3aXBlci1idXR0b24tbmV4dDphZnRlciwuc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVye2NvbnRlbnQ6J25leHQnfS5zd2lwZXItcGFnaW5hdGlvbntwb3NpdGlvbjphYnNvbHV0ZTt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOi4zcyBvcGFjaXR5O3RyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7ei1pbmRleDoxMH0uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVue29wYWNpdHk6MH0uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQ+LnN3aXBlci1wYWdpbmF0aW9uLC5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZHtkaXNwbGF5Om5vbmUhaW1wb3J0YW50fS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9ue2JvdHRvbTp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b20sOHB4KTt0b3A6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tdG9wLGF1dG8pO2xlZnQ6MDt3aWR0aDoxMDAlfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7b3ZlcmZsb3c6aGlkZGVuO2ZvbnQtc2l6ZTowfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHt0cmFuc2Zvcm06c2NhbGUoLjMzKTtwb3NpdGlvbjpyZWxhdGl2ZX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZle3RyYW5zZm9ybTpzY2FsZSgxKX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW57dHJhbnNmb3JtOnNjYWxlKDEpfS5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldnt0cmFuc2Zvcm06c2NhbGUoLjY2KX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYtcHJldnt0cmFuc2Zvcm06c2NhbGUoLjMzKX0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHR7dHJhbnNmb3JtOnNjYWxlKC42Nil9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHR7dHJhbnNmb3JtOnNjYWxlKC4zMyl9LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHt3aWR0aDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGgsdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsOHB4KSk7aGVpZ2h0OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQsdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsOHB4KSk7ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXJhZGl1czp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYm9yZGVyLXJhZGl1cyw1MCUpO2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCMwMDApO29wYWNpdHk6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksIC4yKX1idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e2JvcmRlcjpub25lO21hcmdpbjowO3BhZGRpbmc6MDtib3gtc2hhZG93Om5vbmU7LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmU7YXBwZWFyYW5jZTpub25lfS5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHtjdXJzb3I6cG9pbnRlcn0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0Om9ubHktY2hpbGR7ZGlzcGxheTpub25lIWltcG9ydGFudH0uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZXtvcGFjaXR5OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5LCAxKTtiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpfS5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHN7cmlnaHQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQsOHB4KTtsZWZ0OnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQsYXV0byk7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMHB4LC01MCUsMCl9LnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7bWFyZ2luOnZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC12ZXJ0aWNhbC1nYXAsNnB4KSAwO2Rpc3BsYXk6YmxvY2t9LnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWlje3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7d2lkdGg6OHB4fS5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7ZGlzcGxheTppbmxpbmUtYmxvY2s7dHJhbnNpdGlvbjouMnMgdHJhbnNmb3JtLC4ycyB0b3B9LnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e21hcmdpbjowIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ob3Jpem9udGFsLWdhcCw0cHgpfS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWN7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7d2hpdGUtc3BhY2U6bm93cmFwfS5zd2lwZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCwuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0e3RyYW5zaXRpb246LjJzIHRyYW5zZm9ybSwuMnMgbGVmdH0uc3dpcGVyLWhvcml6b250YWwuc3dpcGVyLXJ0bD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXR7dHJhbnNpdGlvbjouMnMgdHJhbnNmb3JtLC4ycyByaWdodH0uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb257Y29sb3I6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24tY29sb3IsaW5oZXJpdCl9LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFye2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3IscmdiYSgwLDAsMCwuMjUpKTtwb3NpdGlvbjphYnNvbHV0ZX0uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGx7YmFja2dyb3VuZDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcix2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06c2NhbGUoMCk7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0IHRvcH0uc3dpcGVyLXJ0bCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGx7dHJhbnNmb3JtLW9yaWdpbjpyaWdodCB0b3B9LnN3aXBlci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhciwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsLnN3aXBlci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGV7d2lkdGg6MTAwJTtoZWlnaHQ6dmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZSw0cHgpO2xlZnQ6MDt0b3A6MH0uc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbCwuc3dpcGVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcnt3aWR0aDp2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLDRweCk7aGVpZ2h0OjEwMCU7bGVmdDowO3RvcDowfS5zd2lwZXItcGFnaW5hdGlvbi1sb2Nre2Rpc3BsYXk6bm9uZX0uc3dpcGVyLXNjcm9sbGJhcntib3JkZXItcmFkaXVzOnZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywxMHB4KTtwb3NpdGlvbjpyZWxhdGl2ZTt0b3VjaC1hY3Rpb246bm9uZTtiYWNrZ3JvdW5kOnZhcigtLXN3aXBlci1zY3JvbGxiYXItYmctY29sb3IscmdiYSgwLDAsMCwuMSkpfS5zd2lwZXItc2Nyb2xsYmFyLWRpc2FibGVkPi5zd2lwZXItc2Nyb2xsYmFyLC5zd2lwZXItc2Nyb2xsYmFyLnN3aXBlci1zY3JvbGxiYXItZGlzYWJsZWR7ZGlzcGxheTpub25lIWltcG9ydGFudH0uc3dpcGVyLWhvcml6b250YWw+LnN3aXBlci1zY3JvbGxiYXIsLnN3aXBlci1zY3JvbGxiYXIuc3dpcGVyLXNjcm9sbGJhci1ob3Jpem9udGFse3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsMSUpO2JvdHRvbTp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWJvdHRvbSw0cHgpO3RvcDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXRvcCxhdXRvKTt6LWluZGV4OjUwO2hlaWdodDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpemUsNHB4KTt3aWR0aDpjYWxjKDEwMCUgLSAyICogdmFyKC0tc3dpcGVyLXNjcm9sbGJhci1zaWRlcy1vZmZzZXQsMSUpKX0uc3dpcGVyLXNjcm9sbGJhci5zd2lwZXItc2Nyb2xsYmFyLXZlcnRpY2FsLC5zd2lwZXItdmVydGljYWw+LnN3aXBlci1zY3JvbGxiYXJ7cG9zaXRpb246YWJzb2x1dGU7bGVmdDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLWxlZnQsYXV0byk7cmlnaHQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1yaWdodCw0cHgpO3RvcDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpZGVzLW9mZnNldCwxJSk7ei1pbmRleDo1MDt3aWR0aDp2YXIoLS1zd2lwZXItc2Nyb2xsYmFyLXNpemUsNHB4KTtoZWlnaHQ6Y2FsYygxMDAlIC0gMiAqIHZhcigtLXN3aXBlci1zY3JvbGxiYXItc2lkZXMtb2Zmc2V0LDElKSl9LnN3aXBlci1zY3JvbGxiYXItZHJhZ3toZWlnaHQ6MTAwJTt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO2JhY2tncm91bmQ6dmFyKC0tc3dpcGVyLXNjcm9sbGJhci1kcmFnLWJnLWNvbG9yLHJnYmEoMCwwLDAsLjUpKTtib3JkZXItcmFkaXVzOnZhcigtLXN3aXBlci1zY3JvbGxiYXItYm9yZGVyLXJhZGl1cywxMHB4KTtsZWZ0OjA7dG9wOjB9LnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWd7Y3Vyc29yOm1vdmV9LnN3aXBlci1zY3JvbGxiYXItbG9ja3tkaXNwbGF5Om5vbmV9LnN3aXBlci16b29tLWNvbnRhaW5lcnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjt0ZXh0LWFsaWduOmNlbnRlcn0uc3dpcGVyLXpvb20tY29udGFpbmVyPmNhbnZhcywuc3dpcGVyLXpvb20tY29udGFpbmVyPmltZywuc3dpcGVyLXpvb20tY29udGFpbmVyPnN2Z3ttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb250YWlufS5zd2lwZXItc2xpZGUtem9vbWVke2N1cnNvcjptb3ZlO3RvdWNoLWFjdGlvbjpub25lfS5zd2lwZXIgLnN3aXBlci1ub3RpZmljYXRpb257cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDowO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowO3otaW5kZXg6LTEwMDB9LnN3aXBlci1mcmVlLW1vZGU+LnN3aXBlci13cmFwcGVye3RyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOmVhc2Utb3V0O21hcmdpbjowIGF1dG99LnN3aXBlci1ncmlkPi5zd2lwZXItd3JhcHBlcntmbGV4LXdyYXA6d3JhcH0uc3dpcGVyLWdyaWQtY29sdW1uPi5zd2lwZXItd3JhcHBlcntmbGV4LXdyYXA6d3JhcDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnN3aXBlci1mYWRlLnN3aXBlci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZXt0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjplYXNlLW91dH0uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb24tcHJvcGVydHk6b3BhY2l0eX0uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRle3BvaW50ZXItZXZlbnRzOm5vbmV9LnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG99LnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG99LnN3aXBlci1jdWJle292ZXJmbG93OnZpc2libGV9LnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGV7cG9pbnRlci1ldmVudHM6bm9uZTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO2JhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3otaW5kZXg6MTt2aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2Zvcm0tb3JpZ2luOjAgMDt3aWR0aDoxMDAlO2hlaWdodDoxMDAlfS5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGV7cG9pbnRlci1ldmVudHM6bm9uZX0uc3dpcGVyLWN1YmUuc3dpcGVyLXJ0bCAuc3dpcGVyLXNsaWRle3RyYW5zZm9ybS1vcmlnaW46MTAwJSAwfS5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSwuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmV7cG9pbnRlci1ldmVudHM6YXV0b30uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCwuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2e3BvaW50ZXItZXZlbnRzOmF1dG87dmlzaWJpbGl0eTp2aXNpYmxlfS5zd2lwZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93e3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtib3R0b206MHB4O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b3BhY2l0eTouNjt6LWluZGV4OjB9LnN3aXBlci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3c6YmVmb3Jle2NvbnRlbnQ6Jyc7YmFja2dyb3VuZDojMDAwO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtib3R0b206MDtyaWdodDowO2ZpbHRlcjpibHVyKDUwcHgpfS5zd2lwZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQrLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czphdXRvO3Zpc2liaWxpdHk6dmlzaWJsZX0uc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSwuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsLnN3aXBlci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWN1YmUuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCwuc3dpcGVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctY3ViZS5zd2lwZXItc2xpZGUtc2hhZG93LXRvcHt6LWluZGV4OjA7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjtiYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0uc3dpcGVyLWZsaXB7b3ZlcmZsb3c6dmlzaWJsZX0uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZXtwb2ludGVyLWV2ZW50czpub25lOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47ei1pbmRleDoxfS5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlIC5zd2lwZXItc2xpZGV7cG9pbnRlci1ldmVudHM6bm9uZX0uc3dpcGVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG99LnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LC5zd2lwZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1mbGlwLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsLnN3aXBlci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWZsaXAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3B7ei1pbmRleDowOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59LnN3aXBlci1jcmVhdGl2ZSAuc3dpcGVyLXNsaWRley13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb24tcHJvcGVydHk6dHJhbnNmb3JtLG9wYWNpdHksaGVpZ2h0fS5zd2lwZXItY2FyZHN7b3ZlcmZsb3c6dmlzaWJsZX0uc3dpcGVyLWNhcmRzIC5zd2lwZXItc2xpZGV7dHJhbnNmb3JtLW9yaWdpbjpjZW50ZXIgYm90dG9tOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47YmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47b3ZlcmZsb3c6aGlkZGVufSIsIi8qIHJlcXVpcmVkIHN0eWxlcyAqL1xuXG4ubGVhZmxldC1wYW5lLFxuLmxlYWZsZXQtdGlsZSxcbi5sZWFmbGV0LW1hcmtlci1pY29uLFxuLmxlYWZsZXQtbWFya2VyLXNoYWRvdyxcbi5sZWFmbGV0LXRpbGUtY29udGFpbmVyLFxuLmxlYWZsZXQtcGFuZSA+IHN2Zyxcbi5sZWFmbGV0LXBhbmUgPiBjYW52YXMsXG4ubGVhZmxldC16b29tLWJveCxcbi5sZWFmbGV0LWltYWdlLWxheWVyLFxuLmxlYWZsZXQtbGF5ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbn1cbi5sZWFmbGV0LWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5sZWFmbGV0LXRpbGUsXG4ubGVhZmxldC1tYXJrZXItaWNvbixcbi5sZWFmbGV0LW1hcmtlci1zaGFkb3cge1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItZHJhZzogbm9uZTtcbn1cbi8qIFNhZmFyaSByZW5kZXJzIG5vbi1yZXRpbmEgdGlsZSBvbiByZXRpbmEgYmV0dGVyIHdpdGggdGhpcywgYnV0IENocm9tZSBpcyB3b3JzZSAqL1xuLmxlYWZsZXQtc2FmYXJpIC5sZWFmbGV0LXRpbGUge1xuICAgIGltYWdlLXJlbmRlcmluZzogLXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdDtcbn1cbi8qIGhhY2sgdGhhdCBwcmV2ZW50cyBodyBsYXllcnMgXCJzdHJldGNoaW5nXCIgd2hlbiBsb2FkaW5nIG5ldyB0aWxlcyAqL1xuLmxlYWZsZXQtc2FmYXJpIC5sZWFmbGV0LXRpbGUtY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTYwMHB4O1xuICAgIGhlaWdodDogMTYwMHB4O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xufVxuLmxlYWZsZXQtbWFya2VyLWljb24sXG4ubGVhZmxldC1tYXJrZXItc2hhZG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi8qIC5sZWFmbGV0LWNvbnRhaW5lciBzdmc6IHJlc2V0IHN2ZyBtYXgtd2lkdGggZGVjbGVyYXRpb24gc2hpcHBlZCBpbiBKb29tbGEhIChqb29tbGEub3JnKSAzLnggKi9cbi8qIC5sZWFmbGV0LWNvbnRhaW5lciBpbWc6IG1hcCBpcyBicm9rZW4gaW4gRkYgaWYgeW91IGhhdmUgbWF4LXdpZHRoOiAxMDAlIG9uIHRpbGVzICovXG4ubGVhZmxldC1jb250YWluZXIgLmxlYWZsZXQtb3ZlcmxheS1wYW5lIHN2Zyxcbi5sZWFmbGV0LWNvbnRhaW5lciAubGVhZmxldC1tYXJrZXItcGFuZSBpbWcsXG4ubGVhZmxldC1jb250YWluZXIgLmxlYWZsZXQtc2hhZG93LXBhbmUgaW1nLFxuLmxlYWZsZXQtY29udGFpbmVyIC5sZWFmbGV0LXRpbGUtcGFuZSBpbWcsXG4ubGVhZmxldC1jb250YWluZXIgaW1nLmxlYWZsZXQtaW1hZ2UtbGF5ZXIge1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmxlYWZsZXQtY29udGFpbmVyLmxlYWZsZXQtdG91Y2gtem9vbSB7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXggcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teCBwYW4teTtcbn1cbi5sZWFmbGV0LWNvbnRhaW5lci5sZWFmbGV0LXRvdWNoLWRyYWcge1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBpbmNoLXpvb207XG4gICAgLyogRmFsbGJhY2sgZm9yIEZGIHdoaWNoIGRvZXNuJ3Qgc3VwcG9ydCBwaW5jaC16b29tICovXG4gICAgdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogcGluY2gtem9vbTtcbn1cbi5sZWFmbGV0LWNvbnRhaW5lci5sZWFmbGV0LXRvdWNoLWRyYWcubGVhZmxldC10b3VjaC16b29tIHtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cbi5sZWFmbGV0LWNvbnRhaW5lciB7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5sZWFmbGV0LWNvbnRhaW5lciBhIHtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoNTEsIDE4MSwgMjI5LCAwLjQpO1xufVxuLmxlYWZsZXQtdGlsZSB7XG4gICAgZmlsdGVyOiBpbmhlcml0O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5sZWFmbGV0LXRpbGUtbG9hZGVkIHtcbiAgICB2aXNpYmlsaXR5OiBpbmhlcml0O1xufVxuLmxlYWZsZXQtem9vbS1ib3gge1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB6LWluZGV4OiA4MDA7XG59XG4vKiB3b3JrYXJvdW5kIGZvciBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD04ODgzMTkgKi9cbi5sZWFmbGV0LW92ZXJsYXktcGFuZSBzdmcge1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5sZWFmbGV0LXBhbmUgICAgICAgICB7IHotaW5kZXg6IDQwMDsgfVxuXG4ubGVhZmxldC10aWxlLXBhbmUgICAgeyB6LWluZGV4OiAyMDA7IH1cbi5sZWFmbGV0LW92ZXJsYXktcGFuZSB7IHotaW5kZXg6IDQwMDsgfVxuLmxlYWZsZXQtc2hhZG93LXBhbmUgIHsgei1pbmRleDogNTAwOyB9XG4ubGVhZmxldC1tYXJrZXItcGFuZSAgeyB6LWluZGV4OiA2MDA7IH1cbi5sZWFmbGV0LXRvb2x0aXAtcGFuZSAgIHsgei1pbmRleDogNjUwOyB9XG4ubGVhZmxldC1wb3B1cC1wYW5lICAgeyB6LWluZGV4OiA3MDA7IH1cblxuLmxlYWZsZXQtbWFwLXBhbmUgY2FudmFzIHsgei1pbmRleDogMTAwOyB9XG4ubGVhZmxldC1tYXAtcGFuZSBzdmcgICAgeyB6LWluZGV4OiAyMDA7IH1cblxuLmxlYWZsZXQtdm1sLXNoYXBlIHtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogMXB4O1xufVxuLmx2bWwge1xuICAgIGJlaGF2aW9yOiB1cmwoI2RlZmF1bHQjVk1MKTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG5cbi8qIGNvbnRyb2wgcG9zaXRpb25pbmcgKi9cblxuLmxlYWZsZXQtY29udHJvbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDgwMDtcbiAgICBwb2ludGVyLWV2ZW50czogdmlzaWJsZVBhaW50ZWQ7IC8qIElFIDktMTAgZG9lc24ndCBoYXZlIGF1dG8gKi9cbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5sZWFmbGV0LXRvcCxcbi5sZWFmbGV0LWJvdHRvbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwMDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ubGVhZmxldC10b3Age1xuICAgIHRvcDogMDtcbn1cbi5sZWFmbGV0LXJpZ2h0IHtcbiAgICByaWdodDogMDtcbn1cbi5sZWFmbGV0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xufVxuLmxlYWZsZXQtbGVmdCB7XG4gICAgbGVmdDogMDtcbn1cbi5sZWFmbGV0LWNvbnRyb2wge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBib3RoO1xufVxuLmxlYWZsZXQtcmlnaHQgLmxlYWZsZXQtY29udHJvbCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuLmxlYWZsZXQtdG9wIC5sZWFmbGV0LWNvbnRyb2wge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG59XG4ubGVhZmxldC1ib3R0b20gLmxlYWZsZXQtY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5sZWFmbGV0LWxlZnQgLmxlYWZsZXQtY29udHJvbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG4ubGVhZmxldC1yaWdodCAubGVhZmxldC1jb250cm9sIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cblxuLyogem9vbSBhbmQgZmFkZSBhbmltYXRpb25zICovXG5cbi5sZWFmbGV0LWZhZGUtYW5pbSAubGVhZmxldC10aWxlIHtcbiAgICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cbi5sZWFmbGV0LWZhZGUtYW5pbSAubGVhZmxldC1wb3B1cCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhcjtcbn1cbi5sZWFmbGV0LWZhZGUtYW5pbSAubGVhZmxldC1tYXAtcGFuZSAubGVhZmxldC1wb3B1cCB7XG4gICAgb3BhY2l0eTogMTtcbn1cbi5sZWFmbGV0LXpvb20tYW5pbWF0ZWQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xufVxuLmxlYWZsZXQtem9vbS1hbmltIC5sZWFmbGV0LXpvb20tYW5pbWF0ZWQge1xuICAgIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59XG4ubGVhZmxldC16b29tLWFuaW0gLmxlYWZsZXQtem9vbS1hbmltYXRlZCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XG4gICAgLW1vei10cmFuc2l0aW9uOiAgICAtbW96LXRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMCwwLDAuMjUsMSk7XG4gICAgLW8tdHJhbnNpdGlvbjogICAgICAtby10cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAsMCwwLjI1LDEpO1xuICAgIHRyYW5zaXRpb246ICAgICAgICAgdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLDAsMC4yNSwxKTtcbn1cbi5sZWFmbGV0LXpvb20tYW5pbSAubGVhZmxldC10aWxlLFxuLmxlYWZsZXQtcGFuLWFuaW0gLmxlYWZsZXQtdGlsZSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xuICAgIC1tb3otdHJhbnNpdGlvbjogbm9uZTtcbiAgICAtby10cmFuc2l0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5sZWFmbGV0LXpvb20tYW5pbSAubGVhZmxldC16b29tLWhpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuXG4vKiBjdXJzb3JzICovXG5cbi5sZWFmbGV0LWludGVyYWN0aXZlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubGVhZmxldC1ncmFiIHtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICBjdXJzb3I6ICAgIC1tb3otZ3JhYjtcbn1cbi5sZWFmbGV0LWNyb3NzaGFpcixcbi5sZWFmbGV0LWNyb3NzaGFpciAubGVhZmxldC1pbnRlcmFjdGl2ZSB7XG4gICAgY3Vyc29yOiBjcm9zc2hhaXI7XG59XG4ubGVhZmxldC1wb3B1cC1wYW5lLFxuLmxlYWZsZXQtY29udHJvbCB7XG4gICAgY3Vyc29yOiBhdXRvO1xufVxuLmxlYWZsZXQtZHJhZ2dpbmcgLmxlYWZsZXQtZ3JhYixcbi5sZWFmbGV0LWRyYWdnaW5nIC5sZWFmbGV0LWdyYWIgLmxlYWZsZXQtaW50ZXJhY3RpdmUsXG4ubGVhZmxldC1kcmFnZ2luZyAubGVhZmxldC1tYXJrZXItZHJhZ2dhYmxlIHtcbiAgICBjdXJzb3I6IG1vdmU7XG4gICAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICAgIGN1cnNvcjogICAgLW1vei1ncmFiYmluZztcbn1cblxuLyogbWFya2VyICYgb3ZlcmxheXMgaW50ZXJhY3Rpdml0eSAqL1xuLmxlYWZsZXQtbWFya2VyLWljb24sXG4ubGVhZmxldC1tYXJrZXItc2hhZG93LFxuLmxlYWZsZXQtaW1hZ2UtbGF5ZXIsXG4ubGVhZmxldC1wYW5lID4gc3ZnIHBhdGgsXG4ubGVhZmxldC10aWxlLWNvbnRhaW5lciB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5sZWFmbGV0LW1hcmtlci1pY29uLmxlYWZsZXQtaW50ZXJhY3RpdmUsXG4ubGVhZmxldC1pbWFnZS1sYXllci5sZWFmbGV0LWludGVyYWN0aXZlLFxuLmxlYWZsZXQtcGFuZSA+IHN2ZyBwYXRoLmxlYWZsZXQtaW50ZXJhY3RpdmUge1xuICAgIHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlUGFpbnRlZDsgLyogSUUgOS0xMCBkb2Vzbid0IGhhdmUgYXV0byAqL1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4vKiB2aXN1YWwgdHdlYWtzICovXG5cbi5sZWFmbGV0LWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogI2RkZDtcbiAgICBvdXRsaW5lOiAwO1xufVxuLmxlYWZsZXQtY29udGFpbmVyIGEge1xuICAgIGNvbG9yOiAjMDA3OEE4O1xufVxuLmxlYWZsZXQtY29udGFpbmVyIGEubGVhZmxldC1hY3RpdmUge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBvcmFuZ2U7XG59XG4ubGVhZmxldC16b29tLWJveCB7XG4gICAgYm9yZGVyOiAycHggZG90dGVkICMzOGY7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjUpO1xufVxuXG5cbi8qIGdlbmVyYWwgdHlwb2dyYXBoeSAqL1xuLmxlYWZsZXQtY29udGFpbmVyIHtcbiAgICBmb250OiAxMnB4LzEuNSBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG59XG5cblxuLyogZ2VuZXJhbCB0b29sYmFyIHN0eWxlcyAqL1xuXG4ubGVhZmxldC1iYXIge1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDVweCByZ2JhKDAsMCwwLDAuNjUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cbi5sZWFmbGV0LWJhciBhLFxuLmxlYWZsZXQtYmFyIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgaGVpZ2h0OiAyNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6IGJsYWNrO1xufVxuLmxlYWZsZXQtYmFyIGEsXG4ubGVhZmxldC1jb250cm9sLWxheWVycy10b2dnbGUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5sZWFmbGV0LWJhciBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xufVxuLmxlYWZsZXQtYmFyIGE6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xufVxuLmxlYWZsZXQtYmFyIGE6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5sZWFmbGV0LWJhciBhLmxlYWZsZXQtZGlzYWJsZWQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgIGNvbG9yOiAjYmJiO1xufVxuXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1iYXIgYSB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtYmFyIGE6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4O1xufVxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtYmFyIGE6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMnB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG59XG5cbi8qIHpvb20gY29udHJvbCAqL1xuXG4ubGVhZmxldC1jb250cm9sLXpvb20taW4sXG4ubGVhZmxldC1jb250cm9sLXpvb20tb3V0IHtcbiAgICBmb250OiBib2xkIDE4cHggJ0x1Y2lkYSBDb25zb2xlJywgTW9uYWNvLCBtb25vc3BhY2U7XG4gICAgdGV4dC1pbmRlbnQ6IDFweDtcbn1cblxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtY29udHJvbC16b29tLWluLCAubGVhZmxldC10b3VjaCAubGVhZmxldC1jb250cm9sLXpvb20tb3V0ICB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xufVxuXG5cbi8qIGxheWVycyBjb250cm9sICovXG5cbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzIHtcbiAgICBib3gtc2hhZG93OiAwIDFweCA1cHggcmdiYSgwLDAsMCwwLjQpO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1hZ2VzL2xheWVycy5wbmcpO1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbn1cbi5sZWFmbGV0LXJldGluYSAubGVhZmxldC1jb250cm9sLWxheWVycy10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpbWFnZXMvbGF5ZXJzLTJ4LnBuZyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyNnB4IDI2cHg7XG59XG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1jb250cm9sLWxheWVycy10b2dnbGUge1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIGhlaWdodDogNDRweDtcbn1cbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLWxpc3QsXG4ubGVhZmxldC1jb250cm9sLWxheWVycy1leHBhbmRlZCAubGVhZmxldC1jb250cm9sLWxheWVycy10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4ubGVhZmxldC1jb250cm9sLWxheWVycy1leHBhbmRlZCAubGVhZmxldC1jb250cm9sLWxheWVycy1saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubGVhZmxldC1jb250cm9sLWxheWVycy1leHBhbmRlZCB7XG4gICAgcGFkZGluZzogNnB4IDEwcHggNnB4IDZweDtcbiAgICBjb2xvcjogIzMzMztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtc2Nyb2xsYmFyIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbi5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLXNlbGVjdG9yIHtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xufVxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLmxlYWZsZXQtY29udHJvbC1sYXllcnMtc2VwYXJhdG9yIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gICAgbWFyZ2luOiA1cHggLTEwcHggNXB4IC02cHg7XG59XG5cbi8qIERlZmF1bHQgaWNvbiBVUkxzICovXG4ubGVhZmxldC1kZWZhdWx0LWljb24tcGF0aCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy9tYXJrZXItaWNvbi5wbmcpO1xufVxuXG5cbi8qIGF0dHJpYnV0aW9uIGFuZCBzY2FsZSBjb250cm9scyAqL1xuXG4ubGVhZmxldC1jb250YWluZXIgLmxlYWZsZXQtY29udHJvbC1hdHRyaWJ1dGlvbiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgbWFyZ2luOiAwO1xufVxuLmxlYWZsZXQtY29udHJvbC1hdHRyaWJ1dGlvbixcbi5sZWFmbGV0LWNvbnRyb2wtc2NhbGUtbGluZSB7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgY29sb3I6ICMzMzM7XG59XG4ubGVhZmxldC1jb250cm9sLWF0dHJpYnV0aW9uIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5sZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24gYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4ubGVhZmxldC1jb250YWluZXIgLmxlYWZsZXQtY29udHJvbC1hdHRyaWJ1dGlvbixcbi5sZWFmbGV0LWNvbnRhaW5lciAubGVhZmxldC1jb250cm9sLXNjYWxlIHtcbiAgICBmb250LXNpemU6IDExcHg7XG59XG4ubGVhZmxldC1sZWZ0IC5sZWFmbGV0LWNvbnRyb2wtc2NhbGUge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG4ubGVhZmxldC1ib3R0b20gLmxlYWZsZXQtY29udHJvbC1zY2FsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLmxlYWZsZXQtY29udHJvbC1zY2FsZS1saW5lIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAjNzc3O1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBwYWRkaW5nOiAycHggNXB4IDFweDtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4ubGVhZmxldC1jb250cm9sLXNjYWxlLWxpbmU6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjNzc3O1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbn1cbi5sZWFmbGV0LWNvbnRyb2wtc2NhbGUtbGluZTpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzc3Nztcbn1cblxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtY29udHJvbC1hdHRyaWJ1dGlvbixcbi5sZWFmbGV0LXRvdWNoIC5sZWFmbGV0LWNvbnRyb2wtbGF5ZXJzLFxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtYmFyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuLmxlYWZsZXQtdG91Y2ggLmxlYWZsZXQtY29udHJvbC1sYXllcnMsXG4ubGVhZmxldC10b3VjaCAubGVhZmxldC1iYXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMCwwLDAsMC4yKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xufVxuXG5cbi8qIHBvcHVwICovXG5cbi5sZWFmbGV0LXBvcHVwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4ubGVhZmxldC1wb3B1cC1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDFweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG59XG4ubGVhZmxldC1wb3B1cC1jb250ZW50IHtcbiAgICBtYXJnaW46IDEzcHggMTlweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xufVxuLmxlYWZsZXQtcG9wdXAtY29udGVudCBwIHtcbiAgICBtYXJnaW46IDE4cHggMDtcbn1cbi5sZWFmbGV0LXBvcHVwLXRpcC1jb250YWluZXIge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmxlYWZsZXQtcG9wdXAtdGlwIHtcbiAgICB3aWR0aDogMTdweDtcbiAgICBoZWlnaHQ6IDE3cHg7XG4gICAgcGFkZGluZzogMXB4O1xuXG4gICAgbWFyZ2luOiAtMTBweCBhdXRvIDA7XG5cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4ubGVhZmxldC1wb3B1cC1jb250ZW50LXdyYXBwZXIsXG4ubGVhZmxldC1wb3B1cC10aXAge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGNvbG9yOiAjMzMzO1xuICAgIGJveC1zaGFkb3c6IDAgM3B4IDE0cHggcmdiYSgwLDAsMCwwLjQpO1xufVxuLmxlYWZsZXQtY29udGFpbmVyIGEubGVhZmxldC1wb3B1cC1jbG9zZS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogNHB4IDRweCAwIDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMThweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgZm9udDogMTZweC8xNHB4IFRhaG9tYSwgVmVyZGFuYSwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogI2MzYzNjMztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ubGVhZmxldC1jb250YWluZXIgYS5sZWFmbGV0LXBvcHVwLWNsb3NlLWJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6ICM5OTk7XG59XG4ubGVhZmxldC1wb3B1cC1zY3JvbGxlZCB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG59XG5cbi5sZWFmbGV0LW9sZGllIC5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgem9vbTogMTtcbn1cbi5sZWFmbGV0LW9sZGllIC5sZWFmbGV0LXBvcHVwLXRpcCB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5NYXRyaXgoTTExPTAuNzA3MTA2NzgsIE0xMj0wLjcwNzEwNjc4LCBNMjE9LTAuNzA3MTA2NzgsIE0yMj0wLjcwNzEwNjc4KVwiO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0Lk1hdHJpeChNMTE9MC43MDcxMDY3OCwgTTEyPTAuNzA3MTA2NzgsIE0yMT0tMC43MDcxMDY3OCwgTTIyPTAuNzA3MTA2NzgpO1xufVxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtcG9wdXAtdGlwLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtY29udHJvbC16b29tLFxuLmxlYWZsZXQtb2xkaWUgLmxlYWZsZXQtY29udHJvbC1sYXllcnMsXG4ubGVhZmxldC1vbGRpZSAubGVhZmxldC1wb3B1cC1jb250ZW50LXdyYXBwZXIsXG4ubGVhZmxldC1vbGRpZSAubGVhZmxldC1wb3B1cC10aXAge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG59XG5cblxuLyogZGl2IGljb24gKi9cblxuLmxlYWZsZXQtZGl2LWljb24ge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzY2Njtcbn1cblxuXG4vKiBUb29sdGlwICovXG4vKiBCYXNlIHN0eWxlcyBmb3IgdGhlIGVsZW1lbnQgdGhhdCBoYXMgYSB0b29sdGlwICovXG4ubGVhZmxldC10b29sdGlwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcGFkZGluZzogNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgY29sb3I6ICMyMjI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsMCwwLDAuNCk7XG59XG4ubGVhZmxldC10b29sdGlwLmxlYWZsZXQtY2xpY2thYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG4ubGVhZmxldC10b29sdGlwLXRvcDpiZWZvcmUsXG4ubGVhZmxldC10b29sdGlwLWJvdHRvbTpiZWZvcmUsXG4ubGVhZmxldC10b29sdGlwLWxlZnQ6YmVmb3JlLFxuLmxlYWZsZXQtdG9vbHRpcC1yaWdodDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiBcIlwiO1xufVxuXG4vKiBEaXJlY3Rpb25zICovXG5cbi5sZWFmbGV0LXRvb2x0aXAtYm90dG9tIHtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG59XG4ubGVhZmxldC10b29sdGlwLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbn1cbi5sZWFmbGV0LXRvb2x0aXAtYm90dG9tOmJlZm9yZSxcbi5sZWFmbGV0LXRvb2x0aXAtdG9wOmJlZm9yZSB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xufVxuLmxlYWZsZXQtdG9vbHRpcC10b3A6YmVmb3JlIHtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogLTEycHg7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcbn1cbi5sZWFmbGV0LXRvb2x0aXAtYm90dG9tOmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XG59XG4ubGVhZmxldC10b29sdGlwLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xufVxuLmxlYWZsZXQtdG9vbHRpcC1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IDZweDtcbn1cbi5sZWFmbGV0LXRvb2x0aXAtbGVmdDpiZWZvcmUsXG4ubGVhZmxldC10b29sdGlwLXJpZ2h0OmJlZm9yZSB7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbn1cbi5sZWFmbGV0LXRvb2x0aXAtbGVmdDpiZWZvcmUge1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogLTEycHg7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICNmZmY7XG59XG4ubGVhZmxldC10b29sdGlwLXJpZ2h0OmJlZm9yZSB7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjZmZmO1xufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQmFzZSBzdHlsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4qIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG59XG5cbio6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuaHRtbCB7XG4gICAgcGFkZGluZzogZW52KHNhZmUtYXJlYS1pbnNldCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUpO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gcHJldmVudCBpT1MgZnJvbSBhZGp1c3RpbmcgZm9udC1zaXplcyB3aGVuIGNoYW5naW5nIG9yaWVudGF0aW9uXG59XG5cbmJvZHkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbC1ib2R5LWJnKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltKTtcbiAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIC8vaHlwaGVuczogYXV0bztcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4xNXMgZWFzZS1vdXQsIGNvbG9yIC4xNXMgZWFzZS1vdXQ7XG5cbiAgICAmLmZsaXBwZWQge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgfVxuXG4gICAgJi5yb3RhdGVkIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICB9XG59XG5cbjpyb290IHtcbiAgICBhY2NlbnQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbn1cblxuYSxcbmltZyxcbmEgaW1nIHtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbmEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IC4zZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQsIHRvcCAwcztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAuMmVtO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHRvcDogMXB4O1xuICAgIH1cbn1cblxuYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2Utb3V0LCB0b3AgMHM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgICB0b3A6IDFweDtcbiAgICB9XG59XG5cbmEsXG5idXR0b24ge1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyAvLyBwcmV2ZW50cyBkb3VibGUtdGFwIHpvb20gb24gbW9iaWxlXG5cbiAgICAuZmEtYW5nbGUtbGVmdCxcbiAgICAuZmEtYW5nbGUtcmlnaHQsXG4gICAgLmZhLWFuZ2xlLXVwLFxuICAgIC5mYS1hbmdsZS1kb3duLFxuICAgIC5mYS1jaGV2cm9uLWxlZnQsXG4gICAgLmZhLWNoZXZyb24tcmlnaHQsXG4gICAgLmZhLWNoZXZyb24tdXAsXG4gICAgLmZhLWNoZXZyb24tZG93bixcbiAgICAuZmEtY2FyZXQtbGVmdCxcbiAgICAuZmEtY2FyZXQtcmlnaHQsXG4gICAgLmZhLWNhcmV0LXVwLFxuICAgIC5mYS1jYXJldC1kb3duLFxuICAgIC5mYS1hcnJvdy1sZWZ0LFxuICAgIC5mYS1hcnJvdy1yaWdodCxcbiAgICAuZmEtYXJyb3ctdXAsXG4gICAgLmZhLWFycm93LWRvd24sXG4gICAgLmZhLWxvbmctYXJyb3ctbGVmdCxcbiAgICAuZmEtbG9uZy1hcnJvdy1yaWdodCxcbiAgICAuZmEtbG9uZy1hcnJvdy11cCxcbiAgICAuZmEtbG9uZy1hcnJvdy1kb3duIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjE1cyBlYXNlLW91dDtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICB9XG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbY2xhc3MqPVwiZGlzYWJsZWRcIl0pIHtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgLmZhLWFuZ2xlLWxlZnQsXG4gICAgICAgICAgICAuZmEtY2hldnJvbi1sZWZ0LFxuICAgICAgICAgICAgLmZhLWNhcmV0LWxlZnQsXG4gICAgICAgICAgICAuZmEtYXJyb3ctbGVmdCxcbiAgICAgICAgICAgIC5mYS1sb25nLWFycm93LWxlZnQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLS4yNWVtLCAwLCAwKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmZhLWFuZ2xlLXJpZ2h0LFxuICAgICAgICAgICAgLmZhLWNoZXZyb24tcmlnaHQsXG4gICAgICAgICAgICAuZmEtY2FyZXQtcmlnaHQsXG4gICAgICAgICAgICAuZmEtYXJyb3ctcmlnaHQsXG4gICAgICAgICAgICAuZmEtbG9uZy1hcnJvdy1yaWdodCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCguMjVlbSwgMCwgMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYS1hbmdsZS11cCxcbiAgICAgICAgICAgIC5mYS1jaGV2cm9uLXVwLFxuICAgICAgICAgICAgLmZhLWNhcmV0LXVwLFxuICAgICAgICAgICAgLmZhLWFycm93LXVwLFxuICAgICAgICAgICAgLmZhLWxvbmctYXJyb3ctdXAge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLS4xMjVlbSwgMCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mYS1hbmdsZS1kb3duLFxuICAgICAgICAgICAgLmZhLWNoZXZyb24tZG93bixcbiAgICAgICAgICAgIC5mYS1jYXJldC1kb3duLFxuICAgICAgICAgICAgLmZhLWFycm93LWRvd24sXG4gICAgICAgICAgICAuZmEtbG9uZy1hcnJvdy1kb3duIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC4xMjVlbSwgMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnAge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBsZWF2ZSB0aGlzIGZvciBpbmxpbmUgZWxlbWVudHMgKGxpa2Ugc3BhbikgZXh0ZW5kaW5nIHBcbiAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjYxOGVtOyAvLyB0aGUgZ29sZGVuIHJhdGlvXG5cbiAgICAmLmNhcHRpb24ge1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgfVxufVxuXG5ociB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAxLjVlbSBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItdG9wOiAuMWVtIHNvbGlkIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuXG5pbWcge1xuICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC1saWdodCk7XG59XG5cbi5jbGVhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgaGVpZ2h0OiAwO1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG4udGV4dC1ub3dyYXAge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmltZy1yZXNwb25zaXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uaW1nLXdpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmljb24tbGVmdCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xufVxuXG4uaWNvbi1yaWdodCB7XG4gICAgbWFyZ2luLWxlZnQ6IC41ZW07XG59XG5cbi5pY29uLWNlbnRlciB7XG4gICAgbWFyZ2luOiAwIC41ZW07XG59XG5cbi5pY29uLWxpZ2h0IHtcbiAgICBvcGFjaXR5OiAuNTtcbn1cblxuLnNwYWNlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLnNwYWNlcjEwIHtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgICYuc3BhY2VyMjAge1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgJi5zcGFjZXIzMCB7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICB9XG5cbiAgICAmLnNwYWNlcjQwIHtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgIH1cblxuICAgICYuc3BhY2VyNTAge1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgfVxuXG4gICAgJi5zcGFjZXIxMDAge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIH1cblxuICAgICYuc3BhY2VyMjUwIHtcbiAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICB9XG5cbiAgICAmLnNwYWNlcjUwMCB7XG4gICAgICAgIGhlaWdodDogNTAwcHg7XG4gICAgfVxuXG4gICAgJi5zcGFjZXIxMDAwIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAwcHg7XG4gICAgfVxufVxuXG4ubWFyZ2luIHtcbiAgICBtYXJnaW46IDJlbSAwO1xuICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAmLXRvcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICB9XG5cbiAgICAmLWJvdHRvbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJlbTtcbiAgICB9XG5cbiAgICAmLm1hcmdpbi0tc21hbGwge1xuICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgICAgICYtdG9wIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYm90dG9tIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubWFyZ2luLS1sYXJnZSB7XG4gICAgICAgIG1hcmdpbjogM2VtIDA7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAgICAgJi10b3Age1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogM2VtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubm9tYXJnaW4ge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gICAgJi10b3Age1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi1ib3R0b20ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ubm9wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbiAgICAmLXRvcCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi1ib3R0b20ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmNvbC1zdWNjZXNzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sLXN1Y2Nlc3MpO1xufVxuXG4uY29sLXdhcm5pbmcge1xuICAgIGNvbG9yOiB2YXIoLS1jb2wtd2FybmluZyk7XG59XG5cbi5jb2wtZXJyb3Ige1xuICAgIGNvbG9yOiB2YXIoLS1jb2wtZXJyb3IpO1xufVxuXG4uZGlzcGxheS1mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZGlzcGxheS1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kaXNwbGF5LWlubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uZGlzcGxheS1pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4uZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLmNsZWFyLWJlZm9yZSB7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4uY2xlYXItYWZ0ZXIge1xuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG5tYXJrIHtcbiAgICBwYWRkaW5nOiAuMjVlbSAuNGVtO1xuICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG59XG5cbi5pbnB1dC1zdHlsZS1yZXNldCB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4ucG9zaXRpb24tcmVsYXRpdmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBvc2l0aW9uLWFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5mbGV4LXNwYWNlcixcbi5mbGV4LWdyb3cge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLmZsZXgtc2hyaW5rIHtcbiAgICBmbGV4LXNocmluazogMTtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gIGNvbG9yOiB2YXIoLS1jb2wtYm9keS1iZyk7XG59XG5cbi5oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm5hcnJvdyB7XG4gICAgbWF4LXdpZHRoOiA1MGVtICFpbXBvcnRhbnQ7XG59XG5cbi54LW5hcnJvdyB7XG4gICAgbWF4LXdpZHRoOiAzNWVtICFpbXBvcnRhbnQ7XG59XG5cbi5uYXJyb3ctcm9vdCB7XG4gICAgbWF4LXdpZHRoOiA1MHJlbSAhaW1wb3J0YW50O1xufVxuXG4uY2VudGVyZWQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5jb2wtcHJpbSB7XG4gICAgY29sb3I6IHZhcigtLWNvbC1wcmltKSAhaW1wb3J0YW50O1xufVxuXG4uY29sLXNlYyB7XG4gICAgY29sb3I6IHZhcigtLWNvbC1zZWMpICFpbXBvcnRhbnQ7XG59XG5cbi5jb2wtdGVydCB7XG4gICAgY29sb3I6IHZhcigtLWNvbC10ZXJ0KSAhaW1wb3J0YW50O1xufVxuXG4vKiBGb250YXdlc29tZSBTVkcgZmxpY2tlciBmaXggLSByZW1vdmUgdGhpcyB3aGVuIHVzaW5nIEZBIGZvbnQtZmlsZSAqL1xuXG5pW2NsYXNzKj1cImZhLVwiXSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMWVtO1xuICAgIHdpZHRoOiAxZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogLjE1ZW0gc29saWQgY3VycmVudENvbG9yO1xuICAgIG9wYWNpdHk6IC4yNTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogLS4xMjVlbTtcbn1cbiIsIkBtaXhpbiBmbGV4bWFyZ2luKCRkaXJlY3Rpb246IHZlcnRpY2FsKSB7XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSB2ZXJ0aWNhbCB7XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRpcmVjdGlvbiA9PSBob3Jpem9udGFsIHtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBGb250IEZhY2Vcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdFcGlsb2d1ZSc7XG4gICAgc3JjOiB1cmwoJy4uL3dlYmZvbnRzL0VwaWxvZ3VlLVZhcmlhYmxlRm9udF93Z2h0LnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqL1xuICAgICAgICAgdXJsKCcuLi93ZWJmb250cy9FcGlsb2d1ZS1SZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTsgLyogQ2hyb21lIDQrLCBGaXJlZm94IDMuNSwgT3BlcmEgMTArLCBTYWZhcmkgM+KAlDUgKi9cbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59IFxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdEFuaW1hdGlvbnNcbiAgICBHcmVhdCBDU1MgYW5pbWF0aW9uIHJlc291cmNlOiBodHRwOi8vYW5pbWlzdGEubmV0XG5cbiAgICBBbmltYXRlIElOXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuQGtleWZyYW1lcyBmYWRlLWluIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLXVwIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTB2aCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLWRvd24ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTB2aCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLWxlZnQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHZ3LCAwLCAwKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtaW4tcmlnaHQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTB2dywgMCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLWluLXNjYWxlLWRvd24ge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1pbi1zY2FsZS11cCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4vKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBBbmltYXRlIE9VVFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0LXVwIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHZoLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQtZG93biB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHZoLCAwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQtbGVmdCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTB2dywgMCwgMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtb3V0LXJpZ2h0IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwdncsIDAsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLW91dC1zY2FsZS1kb3duIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQtc2NhbGUtdXAge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB9XG59XG5cbi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFJvdGF0aW9uXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuQGtleWZyYW1lcyByb3RhdGUtOTAtY2xvY2t3aXNlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtOTAtY291bnRlci1jbG9ja3dpc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtMTgwLWNsb2Nrd2lzZSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZS0xODAtY291bnRlci1jbG9ja3dpc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlLTM2MC1jbG9ja3dpc2Uge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGUtMzYwLWNvdW50ZXItY2xvY2t3aXNlIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gICAgfVxufVxuXG4vKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBab29tXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuQGtleWZyYW1lcyBpbWFnZS16b29tLWluIHtcbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgaW1hZ2Utem9vbS1vdXQge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgfVxuICAgIHRvIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEN1c3RvbVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbkBrZXlmcmFtZXMgYmFja2dyb3VuZC1zaGlmdCB7XG4gICAgMCUsXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuICAgIDI1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwdncsIDAsIDApO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MHZ3LCAtNTB2dywgMCk7XG4gICAgfVxuICAgIDc1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTUwdncsIDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBseW5rY28tc2hpZnQge1xuICAgIDAlLFxuICAgIDMwJSB7XG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtIHZhcigtLWx5bmtjby13aWR0aCkpO1xuICAgIH1cbiAgICA3MCUsXG4gICAgMTAwJSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIGx5bmtjby13aGVlbHMge1xuICAgIDAlLFxuICAgIDMwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIH1cbiAgICA3MCUsXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKHZhcigtLWx5bmtjby13aGVlbC1yb3RhdGlvbikpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBsb2FkLXByb2dyZXNzLWNpcmNsZSB7XG4gICAgZnJvbSB7XG4gICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDAsIDMyOTtcbiAgICB9XG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ3VzdG9tIGdyaWQgc3lzdGVtXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tY29udGFpbmVyLXNpZGUtc3BhY2luZyk7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1jb250YWluZXItc2lkZS1zcGFjaW5nKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIDpyb290IHtcbiAgICAgICAgLS1jb250YWluZXItc2lkZS1zcGFjaW5nOiBNYXgoNXZ3LCAxZW0pO1xuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRIaWRkZW4gY2xhc3Nlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcblxuICAgIC5oaWRkZW4tbGcge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuXG4gICAgLmhpZGRlbi1tZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcblxuICAgIC5oaWRkZW4tc20ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0ODFweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG5cbiAgICAuaGlkZGVuLXhzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcblxuICAgIC5oaWRkZW4teHhzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLmNvbnRlbnQtd3JhcHBlciBzdHlsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uY29udGVudCB7XG4gICAgY29udGFpbmVyLW5hbWU6IGNvbnRlbnQ7XG4gICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuXG4gICAgJi5jb250ZW50LS1pbnZlcnRlZCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICoge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmNvbnRlbnQtLWNvbHVtbnMge1xuICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIGNvbHVtbi1nYXA6IDMuNWVtO1xuICAgIH1cblxuICAgICYuY29udGVudC0tbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgfVxuXG4gICAgJi5jb250ZW50LS1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgIH1cblxuICAgICYuY29udGVudC0tbGlnaHQge1xuICAgICAgICBvcGFjaXR5OiAuNTtcblxuICAgICAgICAqIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC1kYXJrKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY29udGVudC0tbWFyZ2luIHtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIH1cblxuICAgIC53cC1jYXB0aW9uICB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAyZW0gYXV0bztcblxuICAgICAgICAmLmFsaWdubGVmdCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIDIuNWVtIDJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hbGlnbnJpZ2h0IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIDAgMmVtIDIuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hbGlnbmNlbnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgICAgIC53cC1jYXB0aW9uLXRleHQge1xuICAgICAgICAgICAgbWFyZ2luOiAxZW0gMCAwO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LWxpZ2h0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAuMjVlbTtcblxuICAgICAgICAmLmFsaWdubm9uZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLmFsaWdubGVmdCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIDIuNWVtIDJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hbGlnbnJpZ2h0IHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIDAgMmVtIDIuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hbGlnbmNlbnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMmVtIGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBtYXJnaW46IDEuNWVtIDAgLjc1ZW07XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAgICAgJiArIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDEsXG4gICAgaDIge1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgIH1cblxuICAgIGgzLFxuICAgIGg0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDNlbTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44ZW07XG5cbiAgICAgICAgYSB7XG5cbiAgICAgICAgICAgICY6bm90KFtjbGFzc10pLFxuICAgICAgICAgICAgJjpub3QoW2NsYXNzPVwiXCJdKSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDVweCAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbihob3Jpem9udGFsKTtcblxuICAgICAgICAgICAgJi5idG4tZnVsbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pbnRybyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5taWNybyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBociB7fVxuXG4gICAgdWwsXG4gICAgb2wge1xuICAgICAgICBtYXJnaW46IDEuNWVtIDAgMS41ZW0gMWVtO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgICAgICYuaWNvbi1saXN0IHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBbY2xhc3MqPVwiIGZhLVwiXSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLjE1ZW07XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYxOGVtO1xuXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAuNzVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsLFxuICAgICAgICBvbCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuNzVlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIG1hcmdpbjogMmVtIDUlO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjYxOGVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW46IDJlbSAtMTVweDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgICY6YWZ0ZXIgeyAvLyBzaW11bGF0aW5nIHJpZ2h0IHBhZGRpbmdcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcblxuICAgICAgICB0aCxcbiAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZzogLjc1ZW07XG4gICAgICAgIH1cblxuICAgICAgICB0ciB7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcblxuICAgICAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbC1ncmV5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGVhZCB7fVxuXG4gICAgICAgIHRib2R5IHt9XG4gICAgfVxuXG4gICAgaWZyYW1lIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDNlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBwYWRkaW5nOiAxZW0gMS41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZTtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuXG4gICAgZGwge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLWdhcDogLjVlbSAxZW07XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTBlbSBhdXRvO1xuICAgICAgICBtYXJnaW46IDEuNWVtIDA7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgZHQge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudC1oaWdobGlnaHQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAzZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgcGFkZGluZzogMS4yNWVtIDEuNWVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICB9XG5cbiAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBtYXJnaW4tbGVmdDogLS42ZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG5cbiAgICAuY29udGVudC5jb250ZW50LS1jb2x1bW5zIHtcbiAgICAgICAgY29sdW1uLWNvdW50OiAxO1xuICAgICAgICBjb2x1bW4tZ2FwOiAwO1xuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA1ODBweCkge1xuXG4gICAgLmNvbnRlbnQge1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIH1cblxuICAgICAgICBibG9ja3F1b3RlIHtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC5jb250ZW50IHtcblxuICAgICAgICAuYWxpZ25sZWZ0LFxuICAgICAgICAuYWxpZ25yaWdodCxcbiAgICAgICAgLmFsaWduY2VudGVyIHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIGRpdi5hbGlnbmxlZnQsXG4gICAgICAgIGRpdi5hbGlnbnJpZ2h0LFxuICAgICAgICBkaXYuYWxpZ25jZW50ZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AY29udGFpbmVyIGNvbnRlbnQgKG1heC13aWR0aDogMjBlbSkge1xuXG4gICAgLmNvbnRlbnQge1xuXG4gICAgICAgIGRsIHtcbiAgICAgICAgICAgIGdyaWQtZ2FwOiAuMjVlbTtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcblxuICAgICAgICAgICAgZGQgKyBkdCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENvbXBvbmVudHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4vLyBtYWluIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFzZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NlY3Rpb25zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnRucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvcm1zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmlsdGVycyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbHVtbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tYXN0aGVhZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvb3Rlcic7XG5cbi8vIGRlZmF1bHQgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbW9kYWxzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9wb3ZlcnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3dpZGdldHMnO1xuXG4vLyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL3NlY3Rpb24tdGl0bGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zb2NpYWwtbGlua3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zaWRlYmFyLWxheW91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2hhbWJ1cmdlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3F1YW50aXR5LW9yYic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Njcm9sbC1wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreS1tYXN0aGVhZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2hlcm8nO1xuQGltcG9ydCAnY29tcG9uZW50cy9mdWxsLXdpZHRoLWltYWdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZnVsbC13aWR0aC12aWRlbyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Z1bGwtd2lkdGgtbWFwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FzZS1zaW5nbGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jb250ZW50LWltYWdlLWJsb2Nrcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjdGlvbi1ibG9jayc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZhbmN5LXZpZGVvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWFwLWNvbXBvbmVudHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9leHBhbmRhYmxlLWl0ZW1zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zaXRlLWxvYWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Njcm9sbC1hbmltYXRpb25zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd2l6YXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY3VzdG9tLXJhZGlvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdHJ1ZWRhcmsnO1xuQGltcG9ydCAnY29tcG9uZW50cy9seW5rY28nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wb3N0LWNvbXBvbmVudHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlkZW8tcGxheWVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFja2dyb3VuZC1pY29ucyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWNpcmNsZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2Nlc3MnO1xuQGltcG9ydCAnY29tcG9uZW50cy9rZXktdmlzdWFsJztcblxuLy8gdGlsZS9ncmlkIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29sb3ItYmxvY2tzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RhdHMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9sb2dvcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BvcnRhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmRzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FzZS1kZXRhaWxzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGVzdGltb25pYWxzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWFzdGVycyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3ZhY2FuY2llcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3VzcHMnO1xuIiwiLm5pdm8tbGlnaHRib3gtdGhlbWUtZGVmYXVsdCB7XG5cbiAgICAubml2by1saWdodGJveC1jbG9zZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG59XG5cbi5yZXNwb25zaXZlLWVtYmVkLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLy8gMTY6OSBhc3BlY3QgcmF0aW9cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IDFlbTtcblxuICAgICYucmVzcG9uc2l2ZS1lbWJlZC1jb250YWluZXItLW1hcCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICAgIH1cblxuICAgICYucmVzcG9uc2l2ZS1lbWJlZC1jb250YWluZXItLW92ZXJmbG93LXZpc2libGUge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICBpZnJhbWUsXG4gICAgb2JqZWN0LFxuICAgIGVtYmVkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxufVxuXG4uY29udGFpbmVyID4gLnJlc3BvbnNpdmUtZW1iZWQtY29udGFpbmVyLFxuLmNvbnRhaW5lciA+IC5jb250ZW50ID4gLnJlc3BvbnNpdmUtZW1iZWQtY29udGFpbmVyIHtcbiAgICBib3gtc2hhZG93OiAwIC4xZW0gLjM1ZW0gdmFyKC0tY29sLWdyZXkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5KTtcblxuICAgIGlmcmFtZSxcbiAgICBvYmplY3QsXG4gICAgZW1iZWQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICAgIH1cbn1cblxuLyogaGlkZSBzbGljayBzbGlkZXJzIG9uIHBhZ2UgbG9hZCwgc2hvdyB3aGVuIGluaXRpYWxpemVkICovXG4uc2xpY2stc2xpZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLnBhZ2Utd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgb3ZlcmZsb3c6IGNsaXA7XG4gICAgLy8gb3ZlcmZsb3cgY2xpcCBpcyB0aGUgc2FtZSBhcyBoaWRkZW4sIGJ1dCBkb2VzbnQgY3JlYXRlIGEgc2Nyb2xsIGNvbnRhaW5lciwgc28gdGhpbmdzIGxpa2UgcG9zaXRpb24gc3RpY2t5IHN0aWxsIHdvcmtcbiAgICAvLyBodHRwczovL3d3dy5icmFtLnVzLzIwMjQvMDIvMTQvc2Nyb2xsLWRyaXZlbi1hbmltYXRpb25zLXlvdS13YW50LW92ZXJmbG93LWNsaXAtbm90LW92ZXJmbG93LWhpZGRlblxuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7IC8vIGZpeGluZyBpc3N1ZSB3aXRoIC5wYWdlLXdyYXBwZXIgYmVpbmcgcHVzaGVkIGRvd24gaWYgZmlyc3Qgc2VjdGlvbiBoYXMgdG9wLW1hcmdpblxuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbn1cblxuI2VlX2NvbWljIHtcbiAgICBAaW5jbHVkZSBpbnB1dC1zdHlsZS1yZXNldDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTAwMDtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAuNWVtO1xuICAgIGhlaWdodDogLjVlbTtcbn0iLCJAbWl4aW4gaW5wdXQtc3R5bGUtcmVzZXQge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgZm9udC1zaXplOiAxcmVtO1xufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFNlY3Rpb25zXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnNlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogdmFyKC0tZGVmYXVsdC1zcGFjaW5nKSAwO1xuXG4gICAgJjpoYXMoLnNlY3Rpb25fX2JhY2tncm91bmQtLWJvdHRvbS1mYWRlKSB7XG5cbiAgICAgICAgJiArIC5zZWN0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS1tZWRpdW0tc3BhY2luZykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS14LXNtYWxsLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbjogdmFyKC0teC1zbWFsbC1zcGFjaW5nKSAwO1xuXG4gICAgICAgICYtdG9wIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXgtc21hbGwtc3BhY2luZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS14LXNtYWxsLXNwYWNpbmcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS1zbWFsbC1tYXJnaW4ge1xuICAgICAgICBtYXJnaW46IHZhcigtLXNtYWxsLXNwYWNpbmcpIDA7XG5cbiAgICAgICAgJi10b3Age1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc21hbGwtc3BhY2luZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zbWFsbC1zcGFjaW5nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2VjdGlvbi0tbWVkaXVtLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbjogdmFyKC0tbWVkaXVtLXNwYWNpbmcpIDA7XG5cbiAgICAgICAgJi10b3Age1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tbWVkaXVtLXNwYWNpbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tbWVkaXVtLXNwYWNpbmcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS1sYXJnZS1tYXJnaW4ge1xuICAgICAgICBtYXJnaW46IHZhcigtLWxhcmdlLXNwYWNpbmcpIDA7XG5cbiAgICAgICAgJi10b3Age1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tbGFyZ2Utc3BhY2luZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1sYXJnZS1zcGFjaW5nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2VjdGlvbi0teC1sYXJnZS1tYXJnaW4ge1xuICAgICAgICBtYXJnaW46IHZhcigtLXgtbGFyZ2Utc3BhY2luZykgMDtcblxuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS14LWxhcmdlLXNwYWNpbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0teC1sYXJnZS1zcGFjaW5nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2VjdGlvbi0tcGFkZGluZyB7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmICsgaHIge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbi0teC1zbWFsbC1wYWRkaW5nIHtcblxuICAgICAgICAgICAgJi10b3AgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0teC1zbWFsbC1zcGFjaW5nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1ib3R0b20gLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0teC1zbWFsbC1zcGFjaW5nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS14LXNtYWxsLXNwYWNpbmcpIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb24tLXNtYWxsLXBhZGRpbmcge1xuXG4gICAgICAgICAgICAmLXRvcCAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zbWFsbC1zcGFjaW5nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1ib3R0b20gLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc21hbGwtc3BhY2luZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tc21hbGwtc3BhY2luZykgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbi0tbWVkaXVtLXBhZGRpbmcge1xuXG4gICAgICAgICAgICAmLXRvcCAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tZWRpdW0tc3BhY2luZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtYm90dG9tIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLW1lZGl1bS1zcGFjaW5nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1tZWRpdW0tc3BhY2luZykgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbi0tbGFyZ2UtcGFkZGluZyB7XG5cbiAgICAgICAgICAgICYtdG9wIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWxhcmdlLXNwYWNpbmcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWJvdHRvbSAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1sYXJnZS1zcGFjaW5nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY3Rpb25fX2lubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1sYXJnZS1zcGFjaW5nKSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uLS14LWxhcmdlLXBhZGRpbmcge1xuXG4gICAgICAgICAgICAmLXRvcCAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS14LWxhcmdlLXNwYWNpbmcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWJvdHRvbSAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS14LWxhcmdlLXNwYWNpbmcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHZhcigtLXgtbGFyZ2Utc3BhY2luZykgMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1kZWZhdWx0LXNwYWNpbmcpIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tLWJvcmRlci10b3Age1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sLWdyZXkpO1xuICAgIH1cblxuICAgICYuc2VjdGlvbi0tYm9yZGVyLWJvdHRvbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2wtZ3JleSk7XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS1oaWdoZXItemluZGV4IHtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tLWZ1bGwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG5cbiAgICAgICAgICAgICYuc2VjdGlvbl9faW5uZXItLWFsaWduLXRvcCB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2VjdGlvbl9faW5uZXItLWFsaWduLWJvdHRvbSB7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWN0aW9uLS10aXRsZSArIC5zZWN0aW9uOm5vdCguc2VjdGlvbi0tcGFkZGluZyk6bm90KC5zZWN0aW9uLS1zbWFsbC1tYXJnaW4pOm5vdCgubm9tYXJnaW4pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogdmFyKC0tc21hbGwtc3BhY2luZykgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tLWltYWdlOmhhcyguY29udGFpbmVyKSxcbiAgICAmLnNlY3Rpb24tLXZpZGVvOmhhcyguY29udGFpbmVyKSB7XG5cbiAgICAgICAgJiArIC5zZWN0aW9uOm5vdCguc2VjdGlvbi0tcGFkZGluZyk6bm90KC5zZWN0aW9uLS1zbWFsbC1tYXJnaW4pOm5vdCgubm9tYXJnaW4pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNtYWxsLXNwYWNpbmcpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tLW92ZXJmbG93LWhpZGRlbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgJl9fYmFja2dyb3VuZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLWdyZXkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IGhzbGEodmFyKC0tY29sLXRleHQtaHNsKSwgLjA1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC0tZGFyay1ncmV5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC0tcHJpbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLXNlYyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtc2VjKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC0tdGVydCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtdGVydCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLW92ZXJmbG93IHtcbiAgICAgICAgICAgIHRvcDogLTE1JTtcbiAgICAgICAgICAgIGhlaWdodDogMTUwJTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC0tYm90dG9tLWZhZGUge1xuICAgICAgICAgICAgLXdlYmtpdC1tYXNrLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2IoMCwgMCwgMCkgNTAlLCB0cmFuc3BhcmVudCk7XG5cbiAgICAgICAgICAgICYgfiAuc2VjdGlvbl9faW5uZXIgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLXNtYWxsLXNwYWNpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1oYWxmIHtcbiAgICAgICAgICAgIGxlZnQ6IDQ1JTtcbiAgICAgICAgICAgIHdpZHRoOiA1NSU7XG5cbiAgICAgICAgICAgICY6aGFzKC5rZXktdmlzdWFsKSB7XG5cbiAgICAgICAgICAgICAgICAuc2VjdGlvbl9fYmFja2dyb3VuZC1mYWRlLWxheWVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tY29sLWJvZHktYmcpLCB0cmFuc3BhcmVudCA0MCUpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VjdGlvbl9fYmFja2dyb3VuZC1mYWRlLWxheWVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGluc2V0OiAtMXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1jb2wtYm9keS1iZyksIHRyYW5zcGFyZW50IDYwJSksIGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHZhcigtLWNvbC1ib2R5LWJnKSwgdHJhbnNwYXJlbnQgdmFyKC0tbWFzdGhlYWQtaGVpZ2h0KSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlLCB0cmFuc3BhcmVudCA1MCUsIHZhcigtLWNvbC1ib2R5LWJnKSk7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtZ3JhZGllbnQsXG4gICAgICAgICYtaW1hZ2UsXG4gICAgICAgICYtc2xpZGVyLFxuICAgICAgICAmLWtleS12aXN1YWwsXG4gICAgICAgICYtdmlkZW8sXG4gICAgICAgICYtZmFkZS1sYXllciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAmLWdyYWRpZW50IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNTB2dyk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA1MHZ3KTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LCB2YXIoLS1jb2wtcHJpbSksIHRyYW5zcGFyZW50IDcwJSkgdG9wIGxlZnQgLyAxNTB2dyAxNTB2dyxcbiAgICAgICAgICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCB0b3AgcmlnaHQsIHZhcigtLWNvbC10ZXJ0KSwgdHJhbnNwYXJlbnQgNzAlKSB0b3AgcmlnaHQgLyAxMDB2dyAxMDB2dyxcbiAgICAgICAgICAgICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBib3R0b20gcmlnaHQsIHZhcigtLWNvbC1zZWMpLCB0cmFuc3BhcmVudCA3MCUpIGJvdHRvbSByaWdodCAvIDEyNXZ3IDEyNXZ3O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBiYWNrZ3JvdW5kLXNoaWZ0IDE1cyBlYXNlIGluZmluaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi1pbWFnZSB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLWltYWdlLS1hbGlnbi10b3Age1xuICAgICAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogdG9wO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtaW1hZ2UtLWFsaWduLWJvdHRvbSB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBib3R0b207XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC1pbWFnZS0tem9vbSB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBpbWFnZS16b29tLWluIDZzIGVhc2UtaW4tb3V0IDBzIGJvdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLXNsaWRlciB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICAgICAgICAgLnN3aXBlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWN0aW9uX19iYWNrZ3JvdW5kLWltYWdlLS16b29tIHtcbiAgICAgICAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWtleS12aXN1YWwge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdmlkZW8ge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLXZpZGVvLS1hbGlnbi10b3AgLnBsYXllciB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC12aWRlby0tYWxpZ24tYm90dG9tIC5wbGF5ZXIge1xuICAgICAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogYm90dG9tO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBkaXNhYmxlIGNvbnRyb2xzIG9uIHZpZGVvIHdpdGggb3ZlcmxheVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBsYXllciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtZmFkZS1sYXllciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBoc2xhKHZhcigtLWNvbC1ib2R5LWJnLWhzbCksIC43NSksIGhzbGEodmFyKC0tY29sLWJvZHktYmctaHNsKSwgLjY1KSAyNSUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1tYXNrIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDYyLjUlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG5cbiAgICAgICAgICAgICYtaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgY2xpcC1wYXRoOiB1cmwoI2ltYWdlLWNsaXApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJl9fZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luOiB2YXIoc21hbGwtc3BhY2luZykgMCAwO1xuXG4gICAgICAgICYuc2VjdGlvbl9fZm9vdGVyLS1zbWFsbC1tYXJnaW4ge1xuICAgICAgICAgICAgbWFyZ2luOiB2YXIoeC1zbWFsbC1zcGFjaW5nKSAwIDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDE0MDBweCkge1xuXG4gICAgLnNlY3Rpb24ge1xuXG4gICAgICAgICZfX2JhY2tncm91bmQge1xuXG4gICAgICAgICAgICAmLW1hc2sge1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWNvbC1ib2R5LWJnKSwgdHJhbnNwYXJlbnQgNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogOTkxcHgpIHtcblxuICAgIC5zZWN0aW9uIHtcblxuICAgICAgICAmLnNlY3Rpb24tLWZ1bGwge1xuXG4gICAgICAgICAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogODYwcHgpIHtcblxuICAgIC5zZWN0aW9uIHtcblxuICAgICAgICAmX19iYWNrZ3JvdW5kIHtcblxuICAgICAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1oYWxmIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjdweCkge1xuXG4gICAgLnNlY3Rpb24ge1xuXG4gICAgICAgICZfX2JhY2tncm91bmQge1xuXG4gICAgICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLW92ZXJmbG93IHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnNlY3Rpb25fX2JhY2tncm91bmQtLWhhbGYge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDMvMjtcblxuICAgICAgICAgICAgICAgICY6aGFzKC5rZXktdmlzdWFsKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLW1hc3RoZWFkLWhlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xZW07XG5cbiAgICAgICAgICAgICAgICAgICAgLnNlY3Rpb25fX2JhY2tncm91bmQtZmFkZS1sYXllciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiB+IC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zbWFsbC1zcGFjaW5nKSAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgICAgICYgPiAuY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2VjdGlvbl9fYmFja2dyb3VuZC1mYWRlLWxheWVyIHtcblxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB2YXIoLS1jb2wtYm9keS1iZyksIHRyYW5zcGFyZW50IGNhbGMoMiAqIHZhcigtLW1hc3RoZWFkLWhlaWdodCkpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1tYXNrIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3NSU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC5zZWN0aW9uIHtcblxuICAgICAgICAmX19iYWNrZ3JvdW5kIHtcblxuICAgICAgICAgICAgJi5zZWN0aW9uX19iYWNrZ3JvdW5kLS1oYWxmOm5vdCg6aGFzKC5rZXktdmlzdWFsKSkge1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBCdXR0b25zXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmJ0bnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAxZW07XG4gICAgbWFyZ2luOiAyZW0gMDtcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgJi5idG5zLS1sYXJnZS1tYXJnaW4ge1xuICAgICAgICBtYXJnaW46IDNlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgICAgICYtdG9wIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYm90dG9tIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRucy0tbWVkaXVtLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYm90dG9tIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG5zLS1zbWFsbC1tYXJnaW4ge1xuICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgICAgICYtdG9wIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYm90dG9tIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRucy0tY2VudGVyZWQge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuYnRuc19fbWljcm8ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG5zLS1kb250LXdyYXAge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAmX19taWNybyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IE1heCguNzVyZW0sIDEycHgpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG5cbiAgICAgICAgJi5idG5zX19taWNyby0taW52ZXJ0ZWQge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4ge1xuICAgIEBpbmNsdWRlIGlucHV0LXN0eWxlLXJlc2V0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogLjhlbSAxLjc1ZW0gLjdlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjVlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZS1vdXQsIHRvcCAwcztcblxuICAgICY6ZGlzYWJsZWQsXG4gICAgJi5idG4tLWRpc2FibGVkIHtcbiAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IC4yNTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguYnRuLS1kaXNhYmxlZCkge31cblxuICAgICYuYnRuLS1kZWZhdWx0LFxuICAgICYuYnRuLS1wcmltYXJ5LFxuICAgICYuYnRuLS1zZWNvbmRhcnksXG4gICAgJi5idG4tLXRlcnRpYXJ5IHtcblxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguYnRuLS1kaXNhYmxlZCkge1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWJvZHktYmcpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi0tZGVmYXVsdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpLCAwIDAgMCAwIHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuXG4gICAgICAgICY6bm90KDpkaXNhYmxlZCk6bm90KC5idG4tLWRpc2FibGVkKSB7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAtLjI1ZW0gLS4yNWVtIDAgMCB2YXIoLS1jb2wtZ3JleS1saWdodCksIC4yNWVtIC4yNWVtIDAgMCB2YXIoLS1jb2wtZ3JleS1saWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi0tcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgdmFyKC0tY29sLXByaW0pLCAwIDAgMCAwIHZhcigtLWNvbC1wcmltKTtcblxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguYnRuLS1kaXNhYmxlZCkge1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogLS4yNWVtIC0uMjVlbSAwIDAgdmFyKC0tY29sLXByaW0pLCAuMjVlbSAuMjVlbSAwIDAgdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tLXNlY29uZGFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1zZWMpO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCB2YXIoLS1jb2wtc2VjKSwgMCAwIDAgMCB2YXIoLS1jb2wtc2VjKTtcblxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguYnRuLS1kaXNhYmxlZCkge1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogLS4yNWVtIC0uMjVlbSAwIDAgdmFyKC0tY29sLXNlYyksIC4yNWVtIC4yNWVtIDAgMCB2YXIoLS1jb2wtc2VjKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLS10ZXJ0aWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC10ZXJ0KTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAgdmFyKC0tY29sLXRlcnQpLCAwIDAgMCAwIHZhcigtLWNvbC10ZXJ0KTtcblxuICAgICAgICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguYnRuLS1kaXNhYmxlZCkge1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogLS4yNWVtIC0uMjVlbSAwIDAgdmFyKC0tY29sLXRlcnQpLCAuMjVlbSAuMjVlbSAwIDAgdmFyKC0tY29sLXRlcnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tLXgtc21hbGwge1xuICAgICAgICBmb250LXNpemU6IE1heCguNzVyZW0sIDEycHgpO1xuICAgIH1cblxuICAgICYuYnRuLS1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogTWF4KC44NzVyZW0sIDEycHgpO1xuICAgIH1cblxuICAgICYuYnRuLS1sYXJnZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgfVxuXG4gICAgJi5idG4tLXgtbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgfVxuXG4gICAgJi5idG4tLXNtYWxsLXBhZGRpbmcge1xuICAgICAgICBwYWRkaW5nOiAuNmVtIDEuMTI1ZW0gLjVlbTtcbiAgICB9XG5cbiAgICAmLmJ0bi0tZmxleCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxZW07XG4gICAgfVxuXG4gICAgJi5idG4tLXdpZGUsXG4gICAgJi5idG4tLWZ1bGwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcbiAgICB9XG5cbiAgICAmLmJ0bi0tZ3JvdyB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG59XG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIDQ4MHB4IG9yIHNtYWxsZXIgPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICAuYnRucyB7XG5cbiAgICAgICAgJi5idG5zLS1sYXJnZS1tYXJnaW4ge1xuICAgICAgICAgICAgbWFyZ2luOiAyZW0gMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG4ge1xuXG4gICAgICAgICY6bm90KC5idG4tLWRvbnQtZXhwYW5kKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAuNzVlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogLjc1ZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYnRuLS1sYXJnZSxcbiAgICAgICAgJi5idG4tLXgtbGFyZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRm9ybXMgLSBCYXNlIGVsZW1lbnQgc3R5bGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5jb250ZW50IGZvcm0sXG4uZmllbGRzIHtcblxuICAgIGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSk6bm90KFt0eXBlPVwiYnV0dG9uXCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cInJlc2V0XCJdKTpub3QoW3R5cGU9XCJyYW5nZVwiXSksXG4gICAgdGV4dGFyZWEsXG4gICAgc2VsZWN0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5wdXQtc3R5bGUtcmVzZXQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDMuNWVtO1xuICAgICAgICBwYWRkaW5nOiAuMTI1ZW0gMS4yNWVtIDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0KTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQsIGJveC1zaGFkb3cgMHM7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAuMTVlbSB2YXIoLS1jb2wtYm9keS1iZyksXG4gICAgICAgICAgICAgICAgMCAwIDAgLjE1ZW0gdmFyKC0tY29sLXByaW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC14LWxpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE5KyAqL1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LXgtbGlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJRSAxMCsgKi9cbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC14LWxpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQteC1saWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmRpc2FibGVkIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LWxpZ2h0KTtcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKTpub3QoW3R5cGU9XCJidXR0b25cIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSk6bm90KFt0eXBlPVwicmVzZXRcIl0pOm5vdChbdHlwZT1cInJhbmdlXCJdKSxcbiAgICB0ZXh0YXJlYSB7XG5cbiAgICAgICAgJjpyZWFkLW9ubHkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSB7XG5cbiAgICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICAgJjo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDEuMjVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cblxuICAgIHNlbGVjdCB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy90aGVtZS9nZi1pY29uLXNvcnQuc3ZnJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAuNzVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDFlbTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gICAgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBAZXh0ZW5kIC5idG47XG5cbiAgICAgICAgJjpub3QoLmdmb3JtLXRoZW1lLWJ1dHRvbi0tc2Vjb25kYXJ5KSB7XG4gICAgICAgICAgICBAZXh0ZW5kIC5idG4tLXByaW1hcnk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmdmb3JtLXRoZW1lLWJ1dHRvbi0tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIEBleHRlbmQgLmJ0bi0tZGVmYXVsdDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRm9ybXMgLSBjdXN0b20gbWFya3VwXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmZpZWxkcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMmVtO1xuXG4gICAgLmZpZWxkLXJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogMWVtO1xuXG4gICAgICAgIC5maWVsZCB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjUwcHg7XG5cbiAgICAgICAgICAgICYuZmllbGQtLXNtYWxsIHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IC41O1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZmllbGQtLWxhcmdlIHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDI7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAzNTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5maWVsZCB7XG5cbiAgICAgICAgJi5maWVsZC0tZXJyb3Ige1xuXG4gICAgICAgICAgICAuZmllbGRfX2lucHV0IHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbC1lcnJvcikgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLWVycm9yKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmllbGRfX2Rlc2NyaXB0aW9uLmZpZWxkX19kZXNjcmlwdGlvbi0tZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1lcnJvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmZpZWxkLS1zdWNjZXNzIHtcblxuICAgICAgICAgICAgLmZpZWxkX19pbnB1dCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2wtc3VjY2VzcykgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXN1Y2Nlc3MpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5maWVsZF9fZGVzY3JpcHRpb24uZmllbGRfX2Rlc2NyaXB0aW9uLS1lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXN1Y2Nlc3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5maWVsZC0tc3VibWl0IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IC41ZW0gMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICZbZm9yXSB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmVxdWlyZWQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLWVycm9yKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2lucHV0LWNvbnRhaW5lciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmX19pbnB1dC1ncmlkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDEuNWVtO1xuICAgICAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAgICAgICAgICYuZmllbGRfX2lucHV0LWdyaWQtLXNtYWxsLWdhcCB7XG4gICAgICAgICAgICAgICAgZ2FwOiAuNzVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5maWVsZF9faW5wdXQtZ3JpZC0tdmVydGljYWwge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgZ2FwOiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19vcHRpb25zIHtcbiAgICAgICAgICAgIG1hcmdpbjogMWVtIDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEuNWVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IC4xMjVlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC14LWxpZ2h0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgICAgICAmLmZpZWxkX19pY29uLS1sZWZ0IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAxZW07XG5cbiAgICAgICAgICAgICAgICAmIH4gLmZpZWxkX19pbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogM2VtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZpZWxkX19pY29uLS1yaWdodCB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDFlbTtcblxuICAgICAgICAgICAgICAgICYgfiAuZmllbGRfX2lucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogM2VtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9faW5wdXQge31cblxuICAgICAgICAmX19kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW46IC43NWVtIDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuXG4gICAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZpZWxkX19kZXNjcmlwdGlvbi0tZXJyb3ItbWVzc2FnZSB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEZvcm1zIC0gR3Jhdml0eSBGb3JtcyBtYXJrdXBcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXIge1xuXG4gICAgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbC1zdWNjZXNzKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG4uZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvcnMge1xuICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xufVxuXG4uZ2Zvcm1fc3VibWlzc2lvbl9lcnJvciB7XG4gICAgY29sb3I6IHZhcigtLWNvbC1lcnJvcik7XG4gICAgZm9udC1zaXplOiAxZW0gIWltcG9ydGFudDtcbn1cblxuc2NyaXB0ICsgLmdmb3JtX3dyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLmNvbnRhaW5lciA+IC5jb250ZW50ID4gLmdmb3JtX3dyYXBwZXIsXG4uY29udGFpbmVyID4gLmNvbHVtbnMgLmNvbnRlbnQgLmdmb3JtX3dyYXBwZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBib3JkZXI6IC4xZW0gc29saWQgdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ib2R5LWJnKTtcbn1cblxuLmNvbnRhaW5lciA+IC5jb250ZW50ID4gLmdmb3JtX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IE1heCgyZW0sIDZ2dyk7XG59XG5cbi5jb250YWluZXIgPiAuY29sdW1ucyAuY29udGVudCAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgcGFkZGluZzogY2xhbXAoMmVtLCA3LjUlLCA2dncpO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIC52YWxpZGF0aW9uX2Vycm9yIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbC1lcnJvcik7XG4gICAgfVxuXG4gICAgLmdmb3JtX2hpZGRlbixcbiAgICAuZ2ZpZWxkX3Zpc2liaWxpdHlfaGlkZGVuLFxuICAgIC5hZG1pbi1oaWRkZW4tbWFya3VwLFxuICAgIC5zY3JlZW4tcmVhZGVyLXRleHQge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmdmb3JtX2hlYWRpbmcsXG4gICAgLmdmb3JtX2JvZHkge1xuICAgICAgICBtYXJnaW46IDAgMCAyZW07XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgfVxuXG4gICAgLmdmb3JtX2Zvb3RlciB7fVxuXG4gICAgLmdmb3JtX2hlYWRpbmcge1xuXG4gICAgICAgIC5nZm9ybV90aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nZm9ybV9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMWVtIDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5nZm9ybV9maWVsZHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMmVtIDFlbTtcblxuICAgICAgICAmLnRvcF9sYWJlbCB7fVxuXG4gICAgICAgICYubGVmdF9sYWJlbCB7fVxuXG4gICAgICAgICYucmlnaHRfbGFiZWwge31cblxuICAgICAgICAmLmZvcm1fc3VibGFiZWxfYWJvdmUge31cblxuICAgICAgICAmLmZvcm1fc3VibGFiZWxfYmVsb3cge31cblxuICAgICAgICAmLmRlc2NyaXB0aW9uX2Fib3ZlIHt9XG5cbiAgICAgICAgJi5kZXNjcmlwdGlvbl9iZWxvdyB7fVxuXG4gICAgICAgIC5nZmllbGQge1xuICAgICAgICAgICAgZmxleDogMSAxIDEwMCU7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHt9XG5cbiAgICAgICAgICAgICYuZ2ZpZWxkLS13aWR0aC1oYWxmIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIDFlbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZ2ZpZWxkLS13aWR0aC10aGlyZCB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygzMy4zMyUgLSAxZW0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmdmaWVsZC0td2lkdGgtcXVhcnRlciB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygyNSUgLSAxZW0pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm5vX2xhYmVsIHtcblxuICAgICAgICAgICAgICAgIC5nZmllbGRfbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5nZmllbGRfZXJyb3Ige1xuXG4gICAgICAgICAgICAgICAgLmdpbnB1dF9jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbXBsZXgge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZXJyb3JfaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoIDEwMCUgKyAuNWVtICk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpub3QoLmdpbnB1dF9jb250YWluZXJfY2hlY2tib3gpOm5vdCguZ2lucHV0X2NvbnRhaW5lcl9yYWRpbyk6bm90KC5naW5wdXRfY29udGFpbmVyX3NlbGVjdCl7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0Om5vdChbdHlwZT1cInJhZGlvXCJdKTpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSk6bm90KFt0eXBlPVwiYnV0dG9uXCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cInJlc2V0XCJdKTpub3QoW3R5cGU9XCJyYW5nZVwiXSksXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAuMWVtIHNvbGlkIHZhcigtLWNvbC1lcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1lcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5lcnJvcl9pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIC41ZW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG5cbiAgICAgICAgICAgICAgICAgICAgJi52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1lcnJvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5nZmllbGRfaHRtbCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMWVtIDEuMzVlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAuNzVlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjhlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5nc2VjdGlvbiB7XG5cbiAgICAgICAgICAgICAgICAuZ3NlY3Rpb25fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5nc2VjdGlvbl9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIEBleHRlbmQgcDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAuNzVlbSAwO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZ2ZpZWxkLS10eXBlLXRpbWUge1xuXG4gICAgICAgICAgICAgICAgLmdpbnB1dF9jb21wbGV4IHtcblxuICAgICAgICAgICAgICAgICAgICAuZ2lucHV0X2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogTWF4KDVlbSwgMTUlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5maWVsZF9zdWJsYWJlbF9hYm92ZSB7fVxuXG4gICAgICAgICAgICAmLmZpZWxkX3N1YmxhYmVsX2JlbG93IHt9XG5cbiAgICAgICAgICAgICYuZmllbGRfZGVzY3JpcHRpb25fYWJvdmUge31cblxuICAgICAgICAgICAgJi5maWVsZF9kZXNjcmlwdGlvbl9iZWxvdyB7fVxuXG4gICAgICAgICAgICAuZ2ZpZWxkX2xhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLjVlbSAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgIC5nZmllbGRfcmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLjI1ZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IE1heCguNzVyZW0sIDEycHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNsZWFyLW11bHRpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLTEwcHggLTVweDtcblxuICAgICAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW4oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdpbnB1dF9jb250YWluZXIge1xuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX2NoZWNrYm94LFxuICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbnRhaW5lcl9jb25zZW50IHtcblxuICAgICAgICAgICAgICAgICAgICAuZ2ZpZWxkX2NoZWNrYm94IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBsaSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC5nY2hvaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC41ZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjM1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpjaGVja2VkIH4gbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX3JhZGlvIHtcblxuICAgICAgICAgICAgICAgICAgICAuZ2ZpZWxkX3JhZGlvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYgPiBsaSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC5nY2hvaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC41ZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLjM1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpjaGVja2VkIH4gbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX3NlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICBzZWxlY3Qge31cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmdpbnB1dF9jb250YWluZXJfbXVsdGlzZWxlY3Qge1xuXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc2l6ZTogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuMjVlbSAuNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX2RhdGUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgaW5wdXQuZGF0ZXBpY2tlcjpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPVwic3VibWl0XCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKTpub3QoW3R5cGU9XCJyZXNldFwiXSk6bm90KFt0eXBlPVwicmFuZ2VcIl0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMi41ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy90aGVtZS9nZi1pY29uLWNhbGVuZGFyLnN2ZycpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGxlZnQgLjc1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbnRhaW5lcl9maWxldXBsb2FkIHtcblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6aGFzKC5nZm9ybV9kcm9wX2FyZWEpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogLjI1ZW0gMWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiZmlsZVwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZXg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZ2Zvcm1fZHJvcF9hcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sLWdyZXkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuNSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5nZm9ybV9kcm9wX2luc3RydWN0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHggMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZXh0ZW5kIC5idG4tLXNtYWxsLXBhZGRpbmc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGV4dGVuZCAuYnRuLS1zbWFsbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAuNWVtIDFlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5zY3JlZW4tcmVhZGVyLXRleHQge31cblxuICAgICAgICAgICAgICAgICAgICAuZ2lucHV0X3ByZXZpZXdfbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5naW5wdXRfcHJldmlldyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdhcDogLjI1ZW0gMWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZ2ZpZWxkX2ZpbGV1cGxvYWRfZmlsZW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbnRhaW5lcl9saXN0IHtcblxuICAgICAgICAgICAgICAgICAgICB0YWJsZS5nZmllbGRfbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoZWFkIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB0Ym9keSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ci5nZmllbGRfbGlzdF9ncm91cCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IC43NWVtIC43NWVtIDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmdmaWVsZF9saXN0X2ljb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMWVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5naW5wdXRfY29tcGxleCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAxZW07XG5cbiAgICAgICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX25hbWUge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuLm5hbWVfbWlkZGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IC41O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5naW5wdXRfY29udGFpbmVyX2FkZHJlc3Mge31cblxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5naW5wdXRfZnVsbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuZ2lucHV0X2xlZnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmdpbnB1dF9yaWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIGNhbGMoNTAlIC0gLjc1ZW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC41ZW0gMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZ2ZfY2xlYXJfY29tcGxleCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmhvdXJfbWludXRlX2NvbG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAuNzVlbSAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LWxpZ2h0KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgZmllbGRzZXQge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgLmdmX3Byb2dyZXNzYmFyX3dyYXBwZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAuNWVtIDEuNWVtO1xuXG4gICAgICAgIC5nZl9wcm9ncmVzc2JhciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjI1ZW07XG4gICAgICAgICAgICBtaW4td2lkdGg6IE1pbigxMGVtLCAxMDAlKTtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC4zNWVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAmX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX3BlcmNlbnRhZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuMTI1ZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXNlYyk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGNsaXA7XG5cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5nZm9ybV9wYWdlIHtcblxuICAgICAgICAmX2ZpZWxkcyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX2Zvb3RlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogLjc1ZW0gMWVtO1xuXG4gICAgICAgICAgICBpbnB1dDpub3QoOmZpcnN0LWNoaWxkKTpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IHVsLmdmb3JtX2ZpZWxkcyBsaS5nZmllbGQuZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIsXG5ib2R5IC5nZm9ybV93cmFwcGVyIGxpLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyLFxuYm9keSAuZ2Zvcm1fd3JhcHBlciB1bC5nZm9ybV9maWVsZHMgbGkuZ2ZpZWxkLmdmb3JtX3ZhbGlkYXRpb25fY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAtOTAwMHB4O1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5sYWJlbFtmb3JdOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi51aS1kYXRlcGlja2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBib3JkZXItcmFkaXVzOiAuNWVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgjMDAwLCAuMSksIDAgMCAwIDFweCByZ2JhKCMwMDAsIC4wNSk7XG5cbiAgICAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcblxuICAgICAgICAudWktZGF0ZXBpY2tlci1wcmV2LFxuICAgICAgICAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDRweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sLWdyZXktZGFyayk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWJvZHktYmcpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2wtZ3JleS1kYXJrKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWJvZHktYmcpO1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcblxuICAgICAgICB0ciB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sLWdyZXkpO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sLWdyZXkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoLFxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICYudWktc3RhdGUtZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleS1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLnVpLXN0YXRlLWRlZmF1bHQge31cblxuICAgICAgICAgICAgICAgICAgICAmLnVpLXN0YXRlLWhpZ2hsaWdodCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYudWktc3RhdGUtYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1zZWMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG5cbiAgICAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ2ZpZWxkX2Vycm9yIC5naW5wdXRfY29udGFpbmVyOm5vdCguZ2lucHV0X2NvbnRhaW5lcl9jaGVja2JveCk6bm90KC5naW5wdXRfY29udGFpbmVyX3JhZGlvKTpub3QoLmdpbnB1dF9jb250YWluZXJfc2VsZWN0KSAuZXJyb3JfaWNvbiB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgd2lkdGg6IDEuNWVtO1xuICAgICAgICBtYXJnaW46IC0uNzVlbSAwIDAgLS43NWVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1lcnJvcik7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXNpemU6IE1heCguNzVyZW0sIDEycHgpO1xuICAgIH1cblxufVxuXG4vL0BtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5AY29udGFpbmVyIGNvbnRlbnQgKG1heC13aWR0aDogMjhlbSkge1xuXG4gICAgLmNvbnRhaW5lciA+IC5jb250ZW50ID4gLmdmb3JtX3dyYXBwZXIge1xuICAgICAgICBwYWRkaW5nOiBNYXgoMS41ZW0sIE1pbig3LjUlLCA2dncpKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5jb250ZW50IHtcblxuICAgICAgICBmb3JtIHtcblxuICAgICAgICAgICAgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJmaWxlXCJdKTpub3QoW3R5cGU9XCJidXR0b25cIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSk6bm90KFt0eXBlPVwicmVzZXRcIl0pOm5vdChbdHlwZT1cInJhbmdlXCJdKSxcbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2Zvcm1fd3JhcHBlciB7XG5cbiAgICAgICAgLmdmb3JtX2hlYWRpbmcge1xuXG4gICAgICAgICAgICAuZ2Zvcm1fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmdmb3JtX2JvZHkge1xuXG4gICAgICAgICAgICAuZ2Zvcm1fZmllbGRzIHtcblxuICAgICAgICAgICAgICAgIC5nZmllbGQge1xuXG4gICAgICAgICAgICAgICAgICAgICYuZ2ZpZWxkLS13aWR0aC1oYWxmLFxuICAgICAgICAgICAgICAgICAgICAmLmdmaWVsZC0td2lkdGgtdGhpcmQsXG4gICAgICAgICAgICAgICAgICAgICYuZ2ZpZWxkLS13aWR0aC1xdWFydGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZ2lucHV0X2NvbnRhaW5lciB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuZ2lucHV0X2NvbXBsZXgge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5uYW1lX2xhc3QsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuZ2lucHV0X2xlZnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuZ2lucHV0X3JpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmdpbnB1dF9jb250YWluZXJfZmlsZXVwbG9hZCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2Zvcm1fZHJvcF9hcmVhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1JTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2Zvcm1fZHJvcF9pbnN0cnVjdGlvbnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAuNzVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdEZpbHRlcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uZmlsdGVycy13cmFwcGVyIHtcblxuICAgIC5maWx0ZXIge1xuXG4gICAgICAgICZfX3RpdGxlIHt9XG4gICAgfVxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENvbHVtbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uY29sdW1ucyB7XG4gICAgLS1yb3ctZ2FwOiAzZW07XG4gICAgLS1jb2x1bW4tZ2FwOiAzZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogdmFyKC0tcm93LWdhcCkgdmFyKC0tY29sdW1uLWdhcCk7XG4gICAgbWFyZ2luOiAzZW0gMDtcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgJi5jb2x1bW5zLS1hbGlnbi1jZW50ZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICYuY29sdW1ucy0tYWxpZ24tZW5kIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgICYuY29sdW1ucy0tYWxpZ24tc3RyZXRjaCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgICYuY29sdW1ucy0tanVzdGlmeS1jZW50ZXIge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmNvbHVtbnMtLWp1c3RpZnktZW5kIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAmLmNvbHVtbnMtLW9yZGVyLXJldmVyc2Uge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xuICAgIH1cblxuICAgICYuY29sdW1ucy0tbGFyZ2UtZ2FwIHtcbiAgICAgICAgLS1jb2x1bW4tZ2FwOiA2ZW07XG4gICAgfVxuXG4gICAgLmNvbHVtbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgbWluLXdpZHRoOiAxMmVtO1xuXG4gICAgICAgICYuY29sdW1uLS1zbWFsbCxcbiAgICAgICAgJi5jb2x1bW4tLXF1YXJ0ZXIsXG4gICAgICAgICYuY29sdW1uLS10aGlyZCxcbiAgICAgICAgJi5jb2x1bW4tLWhhbGYge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2x1bW4tLXNtYWxsIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbHVtbi0tcXVhcnRlciB7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDI1JSAtIHZhcigtLWNvbHVtbi1nYXApKjMvNCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvbHVtbi0tdGhpcmQge1xuICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygzMy4zMyUgLSB2YXIoLS1jb2x1bW4tZ2FwKSoyLzMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jb2x1bW4tLWhhbGYge1xuICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSB2YXIoLS1jb2x1bW4tZ2FwKS8yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY29sdW1uLS1hbGlnbi1zdGFydCB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiA4ZW07XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDEyMDBweCkge1xuXG4gICAgLmNvbHVtbnMge1xuXG4gICAgICAgIC5jb2x1bW4ge1xuXG4gICAgICAgICAgICAmLmNvbHVtbi0tcXVhcnRlciB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYygzMy4zMyUgLSB2YXIoLS1jb2x1bW4tZ2FwKSoyLzMpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDk5MXB4KSB7XG5cbiAgICAuY29sdW1ucyB7XG5cbiAgICAgICAgJi5jb2x1bW5zLS1zbWFsbC1nYXAtbW9iaWxlIHtcbiAgICAgICAgICAgIC0tcm93LWdhcDogMmVtO1xuICAgICAgICAgICAgLS1jb2x1bW4tZ2FwOiAyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY29sdW1uIHtcblxuICAgICAgICAgICAgJi5jb2x1bW4tLXRoaXJkIHtcbiAgICAgICAgICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDUwJSAtIHZhcigtLWNvbHVtbi1nYXApLzIpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmNvbHVtbi0taGFsZiAge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi0taGVybyAuY29sdW1ucyAuY29sdW1uLS10aGlyZCxcbiAgICAuc2VjdGlvbi0taGVybyAuY29sdW1ucyAuY29sdW1uLS1xdWFydGVyIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjdweCkge1xuXG4gICAgLmNvbHVtbnMge1xuXG4gICAgICAgIC5jb2x1bW4ge1xuXG4gICAgICAgICAgICAmLmNvbHVtbi0tcXVhcnRlciB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogY2FsYyg1MCUgLSB2YXIoLS1jb2x1bW4tZ2FwKS8yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA1ODBweCkge1xuXG4gICAgLmNvbHVtbnMge1xuXG4gICAgICAgIC5jb2x1bW4ge1xuXG4gICAgICAgICAgICAmLmNvbHVtbi0tdGhpcmQge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC5jb2x1bW5zIHtcblxuICAgICAgICAuY29sdW1uIHtcblxuICAgICAgICAgICAgJi5jb2x1bW4tLXF1YXJ0ZXIge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBNYXN0aGVhZFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi8vIGZvciB0aGluZ3MgcmVsYXRlZCB0byBzdGlja3kgbWFzdGhlYWQsIHNlZSBfc3RpY2t5LW1hc3RoZWFkLnNjc3NcblxuOnJvb3Qge1xuICAgIC0tbWFzdGhlYWQtaGVpZ2h0OiA4ZW07XG59XG5cbi5tYXN0aGVhZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDUwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IHZhcigtLW1hc3RoZWFkLWhlaWdodCk7XG5cbiAgICAmLm1hc3RoZWFkLS1mbG9hdCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJiArIC5zZWN0aW9uIHtcblxuICAgICAgICAgICAgLnNlY3Rpb25fX2lubmVyIC5jb250YWluZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1tYXN0aGVhZC1oZWlnaHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLm1hc3RoZWFkLS1mbG9hdCkgKyAuc2VjdGlvbjpub3QoLnNlY3Rpb24tLWhlcm8pIHtcblxuICAgICAgICAmOm5vdCguc2VjdGlvbi0tcGFkZGluZyk6bm90KDpoYXMoLnNlY3Rpb25fX2JhY2tncm91bmQtbWFzaykpOm5vdCgubm9tYXJnaW4pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLXNtYWxsLXNwYWNpbmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zZWN0aW9uLS1wYWRkaW5nIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tc21hbGwtc3BhY2luZyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19sb2dvIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2Utb3V0O1xuXG4gICAgICAgICYubWFzdGhlYWRfX2xvZ28tLWZ1bGwge1xuICAgICAgICAgICAgd2lkdGg6IDE4ZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLm1hc3RoZWFkX19sb2dvLS1jb21wYWN0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogN2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tYXN0aGVhZF9fbG9nby0ta2luZ3NkYXksXG4gICAgICAgICYubWFzdGhlYWRfX2xvZ28tLW1lbW9yaWFsLFxuICAgICAgICAmLm1hc3RoZWFkX19sb2dvLS1zaW50ZXJrbGFhcyxcbiAgICAgICAgJi5tYXN0aGVhZF9fbG9nby0tY2hyaXN0bWFzLFxuICAgICAgICAmLm1hc3RoZWFkX19sb2dvLS1uZXd5ZWFyIHtcblxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogY2VudGVyIC8gY29udGFpbiBuby1yZXBlYXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLm1hc3RoZWFkX19sb2dvLS1raW5nc2RheTpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvdGhlbWUvZGJrLWtpbmdzZGF5LnBuZycpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNDUlLCAtNTMlLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWFzdGhlYWRfX2xvZ28tLW1lbW9yaWFsOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy90aGVtZS9kYmstbWVtb3JpYWwtZGF5LnBuZycpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNjAlLCAtNDAlLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWFzdGhlYWRfX2xvZ28tLXNpbnRlcmtsYWFzOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy90aGVtZS9kYmstc2ludGVya2xhYXMucG5nJyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC0zNSUsIDApO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5tYXN0aGVhZF9fbG9nby0tY2hyaXN0bWFzOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy90aGVtZS9kYmstY2hyaXN0bWFzLnBuZycpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzUlLCAtMjUlLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYubWFzdGhlYWRfX2xvZ28tLW5ld3llYXI6YmVmb3JlIHtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMjUlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvdGhlbWUvZGJrLW5ld3llYXIucG5nJyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC03MCUsIDQlLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuXG4gICAgICAgICAgICAuc3QwIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdDEge1xuICAgICAgICAgICAgICAgIGZpbGw6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpbmssXG4gICAgJl9fY3RhIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxuXG4gICAgJl9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogLjg3NWVtO1xuICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICAgICYubWFzdGhlYWRfX2xpbmstLXBob25lIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICYubWFzdGhlYWRfX2xpbmstLW1lbnUge31cblxuICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYtdGV4dCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LXgtbGlnaHQpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogTWF4KC42NWVtLCAxMHB4KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyB0aGVzZSBzZXJ2ZSBhcyBzcGFjZXJzIGZvciBzdGlja3kgbWFzdGhlYWQgYnV0dG9uc1xuICAgICZfX2xpbmsubWFzdGhlYWRfX2xpbmstLW1lbnUsXG4gICAgJl9fY3RhIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAyZW07XG5cbiAgICAgICAgLmJ0biArIC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDEyMDBweCkge1xuXG4gICAgLm1hc3RoZWFkIHtcblxuICAgICAgICAmX19sb2dvIHtcblxuICAgICAgICAgICAgJi5tYXN0aGVhZF9fbG9nby0tZnVsbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5tYXN0aGVhZF9fbG9nby0tY29tcGFjdCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogOTkxcHgpIHtcblxuICAgIC5tYXN0aGVhZCB7XG5cbiAgICAgICAgJl9fbGluayB7XG5cbiAgICAgICAgICAgICYubWFzdGhlYWRfX2xpbmstLXRoZW1lIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm1hc3RoZWFkX19saW5rLS1tZW51IC5tYXN0aGVhZF9fbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG5cbiAgICAubWFzdGhlYWQge1xuXG4gICAgICAgICZfX2xpbmsge1xuXG4gICAgICAgICAgICAmLm1hc3RoZWFkX19saW5rLS1waG9uZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICAgICAgLm1hc3RoZWFkX19saW5rLXRleHQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA2NDBweCkge1xuXG4gICAgLm1hc3RoZWFkIHtcblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4yNWVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNWVtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICA6cm9vdCB7XG4gICAgICAgIC0tbWFzdGhlYWQtaGVpZ2h0OiA2ZW07XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQwMHB4KSB7XG5cbiAgICAubWFzdGhlYWQge1xuXG4gICAgICAgIC5jb250YWluZXIge1xuICAgICAgICAgICAgZ2FwOiAxLjVlbTtcbiAgICAgICAgfVxuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXHRGb290ZXJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uc2VjdGlvbi5zZWN0aW9uLS1wYWRkaW5nOmhhcyguc2VjdGlvbl9fYmFja2dyb3VuZCkgKyAuc2l0ZS1mb290ZXIsXG4uc2VjdGlvbjpub3QoOmhhcyguY29udGFpbmVyKSk6aGFzKC5mdWxsLXdpZHRoLW1hcCkgKyAuc2l0ZS1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG59XG5cbi5zaXRlLWZvb3RlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbnRhaW5lci1uYW1lOiBzaXRlLWZvb3RlcjtcbiAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG4gICAgYm9yZGVyLXRvcDogLjFlbSBzb2xpZCB2YXIoLS1jb2wtZ3JleS1saWdodCk7XG5cbiAgICAmX19hY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1tZWRpdW0tc3BhY2luZykgMCAwO1xuICAgIH1cblxuICAgICZfX21haW4ge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1kZWZhdWx0LXNwYWNpbmcpIDAgdmFyKC0tbWVkaXVtLXNwYWNpbmcpO1xuICAgIH1cblxuICAgICZfX2JvdHRvbSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCB2YXIoLS1zbWFsbC1zcGFjaW5nKTtcblxuICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgZ2FwOiAxLjVlbSAyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIG1hcmdpbjogNGVtIDAgMmVtO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cblxuICAgICZfX2xvZ28ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEyZW07XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAyZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAgICAgICBpbWcsXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcblxuICAgICAgICAgICAgLnN0MCB7XG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3QxIHtcbiAgICAgICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19uYXYge1xuXG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiAuMjVlbTtcblxuICAgICAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC1saWdodCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjE4ZW07XG5cbiAgICAgICAgICAgICAgICAmLmN1cnJlbnQtbWVudS1pdGVtLFxuICAgICAgICAgICAgICAgICYuY3VycmVudC1tZW51LXBhcmVudCB7XG5cbiAgICAgICAgICAgICAgICAgICAgJiA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAuNzVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IC4zNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogLjM1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGdhcDogLjI1ZW0gLjVlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuMjVlbSAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbWFsbC1uYXYge1xuXG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogLjc1ZW0gMmVtO1xuXG4gICAgICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGlucHV0LXN0eWxlLXJlc2V0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IC4zZW07XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQsIHRvcCAwcztcblxuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IC4yZW07XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvcHlyaWdodCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC14LWxpZ2h0KTtcbiAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgfVxuXG4gICAgJl9fc2lnbmF0dXJlIHt9XG5cbiAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNjc1cHgpIHtcblxuICAgIC5zaXRlLWZvb3RlciB7XG5cbiAgICAgICAgJl9fY29weXJpZ2h0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBjb250YWluZXIgc2l0ZS1mb290ZXIgKG1heC13aWR0aDogMzBlbSkge1xuXG4gICAgLnNpdGUtZm9vdGVyIHtcblxuICAgICAgICAmX19tYWluIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2JvdHRvbSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmX19sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbmF2IC5tZW51IHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmX19zbWFsbC1uYXYgLm1lbnUge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFNsaWRlcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uY2FyZHNfX3NsaWRlciB7XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiAxLjVlbTtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXRvcC1vZmZzZXQ6IGNhbGMoMTAwJSAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpKTtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldDogMDtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG5cbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi10b3A6IGF1dG87XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IDA7XG5cbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplOiAuNWVtO1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiB2YXIoLS1jb2wtZ3JleSk7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtb3BhY2l0eTogMTtcbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5OiAxO1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiAuMjVlbTtcblxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgICAgIHotaW5kZXg6IDE1O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuXG4gICAgICAgICYuc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50LWltYWdlLWJsb2NrcyAuYmxvY2tfX3NsaWRlciB7XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiAzZW07XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0OiA1MCU7XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQ6IC41ZW07XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogdmFyKC0tY29sLXRleHQpO1xuXG4gICAgLnN3aXBlci1idXR0b24tcHJldixcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICAgICAgd2lkdGg6IDFlbTtcbiAgICAgICAgaGVpZ2h0OiAxZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWJvZHktYmcpO1xuICAgICAgICBtYXJnaW4tdG9wOiAtLjVlbTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQ7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgW2NsYXNzKj1cImZhLVwiXSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRlc3RpbW9uaWFsc19fc2xpZGVyIHtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDEuNWVtO1xuICAgIC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldDogNTAlO1xuICAgIC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0OiAuMjVlbTtcbiAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG5cbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi10b3A6IGF1dG87XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IC41ZW07XG5cbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplOiAuNWVtO1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiB2YXIoLS1jb2wtZ3JleSk7XG4gICAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtb3BhY2l0eTogMTtcbiAgICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5OiAxO1xuICAgIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiAuMjVlbTtcblxuICAgIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgICAgIHdpZHRoOiAxLjVlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgcGFkZGluZzogLjM1ZW07XG4gICAgICAgIG1hcmdpbi10b3A6IC0uNWVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2Utb3V0O1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zd2lwZXItcGFnaW5hdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICAgICAgICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuXG4gICAgICAgICYuc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICAuY29udGVudC1pbWFnZS1ibG9ja3MgLmJsb2NrX19zbGlkZXIge1xuICAgICAgICAtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDIuNWVtO1xuICAgIH1cblxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgTW9kYWxzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLm1vZGFscy13cmFwcGVyIHtcblxuICAgIC5tb2RhbCB7XG5cbiAgICAgICAgJl9fdGl0bGUge31cbiAgICB9XG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgUG9wb3ZlcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgVG9vbHRpcHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cdFdpZGdldHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ud2lkZ2V0cyB7XG5cbiAgICAud2lkZ2V0IHtcblxuICAgICAgICAmX190aXRsZSB7XG5cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTZWN0aW9uLXRpdGxlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbjogNGVtIDAgMmVtO1xuICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAmLnRleHQtY2VudGVyIC50aXRsZS50aXRsZS0tZmxleCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICYuc2VjdGlvbi10aXRsZS0taW52ZXJ0ZWQge1xuXG4gICAgICAgIC5wcmV0aXRsZSxcbiAgICAgICAgLnRpdGxlLFxuICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlY3Rpb24tdGl0bGUtLXNtYWxsLW1hcmdpbiB7XG4gICAgICAgIG1hcmdpbjogMmVtIDAgMWVtO1xuICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIH1cblxuICAgIC5wcmV0aXRsZSB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cblxuICAgIC50aXRsZSB7XG4gICAgICAgIG1hcmdpbjogLjI1ZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG5cbiAgICAgICAgJi50aXRsZS0teC1zbWFsbCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICAgICAgICAgJiArIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLjVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudGl0bGUtLXNtYWxsIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgJiArIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLjVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYudGl0bGUtLWxhcmdlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi50aXRsZS0tZmxleCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogLjc1ZW0gMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICB9XG5cbiAgICAudGl0bGUsXG4gICAgLnN1YnRpdGxlIHtcblxuICAgICAgICBlbSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA5OTFweCkge1xuXG4gICAgLnNlY3Rpb24tdGl0bGUge1xuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNWVtO1xuXG4gICAgICAgICAgICAmLnRpdGxlLS14LXNtYWxsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50aXRsZS0tc21hbGwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnRpdGxlLS1sYXJnZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjdweCkge1xuXG4gICAgLnNlY3Rpb24tdGl0bGUge1xuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcblxuICAgICAgICAgICAgJi50aXRsZS0tc21hbGwge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYudGl0bGUtLWxhcmdlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNTgwcHgpIHtcblxuICAgIC5zZWN0aW9uLXRpdGxlIHtcblxuICAgICAgICAudGl0bGUge1xuXG4gICAgICAgICAgICAmLnRpdGxlLS1sYXJnZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTb2NpYWwgbGlua3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uc29jaWFsLWxpbmtzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWxlZnQ6IC0uNjVlbTtcblxuICAgIC5pdGVtIHtcblxuICAgICAgICAmLml0ZW0tLWZhY2Vib29rIHtcblxuICAgICAgICAgICAgLml0ZW1fX2xpbms6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZmFjZWJvb2spO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pdGVtLS10d2l0dGVyIHtcblxuICAgICAgICAgICAgLml0ZW1fX2xpbms6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtdHdpdHRlcik7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgLjA1ZW0gdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pdGVtLS1pbnN0YWdyYW0ge1xuXG4gICAgICAgICAgICAuaXRlbV9fbGluazpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMzAlIDEwNyUsICNmZGY0OTcgMCUsICNmY2IwNDUgMjAlLCAjZmQxZDFkIDQ1JSwjZDYyNDlmIDYwJSwjODMzYWI0IDkwJSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWluc3RhZ3JhbSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFtjbGFzcyo9XCJmYS1cIl0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXRlbS0tbGlua2VkaW4ge1xuXG4gICAgICAgICAgICAuaXRlbV9fbGluazpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1saW5rZWRpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLml0ZW0tLXBpbnRlcmVzdCB7XG5cbiAgICAgICAgICAgIC5pdGVtX19saW5rOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXBpbnRlcmVzdCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLml0ZW0tLWdvb2dsZSB7XG5cbiAgICAgICAgICAgIC5pdGVtX19saW5rOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdvb2dsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLml0ZW0tLXlvdXR1YmUge1xuXG4gICAgICAgICAgICAuaXRlbV9fbGluazpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC15b3V0dWJlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXRlbS0tdmltZW8ge1xuXG4gICAgICAgICAgICAuaXRlbV9fbGluazpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC12aW1lbyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLml0ZW0tLXdoYXRzYXBwIHtcblxuICAgICAgICAgICAgLml0ZW1fX2xpbms6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtd2hhdHNhcHApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pdGVtLS10cmlwYWR2aXNvciB7XG5cbiAgICAgICAgICAgIC5pdGVtX19saW5rOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXRyaXBhZHZpc29yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaXRlbS0tdHJ1c3RwaWxvdCB7XG5cbiAgICAgICAgICAgIC5pdGVtX19saW5rOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXRydXN0cGlsb3QpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pdGVtLS10aWt0b2sge1xuXG4gICAgICAgICAgICAuaXRlbV9fbGluazpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC10aWt0b2spO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjI1ZW07XG4gICAgICAgICAgICB3aWR0aDogMi4yNWVtO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMDc1cyBlYXNlLW91dDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgU2lkZWJhciBsYXlvdXRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uc2lkZWJhci1sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luOiAzZW0gMDtcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIGdhcDogM2VtO1xuXG4gICAgJl9fc2lkZWJhciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIHdpZHRoOiBNaW4oMzAlLCAyNmVtKTtcbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cblxuICAgICZfX3N0aWNreSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogN2VtO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAxMjAwcHgpIHtcblxuICAgIC5zaWRlYmFyLWxheW91dDpub3QoLnNpZGViYXItbGF5b3V0LS1icmVhay1sYXRlcikge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgICAmLnNpZGViYXItbGF5b3V0LS1yZXZlcnNlLWFmdGVyLWJyZWFrIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaWRlYmFyLWxheW91dCB7XG5cbiAgICAgICAgICAgICZfX3NpZGViYXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgJjplbXB0eSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19zdGlja3kge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA5OTFweCkge1xuXG4gICAgLnNpZGViYXItbGF5b3V0LnNpZGViYXItbGF5b3V0LS1icmVhay1sYXRlciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgICAgICYuc2lkZWJhci1sYXlvdXQtLXJldmVyc2UtYWZ0ZXItYnJlYWsge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpZGViYXItbGF5b3V0IHtcblxuICAgICAgICAgICAgJl9fc2lkZWJhciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3N0aWNreSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgSGFtYnVyZ2VyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuYm9keS5zaG93LW1lbnUge1xuXG4gICAgLmhhbWJ1cmdlciB7XG5cbiAgICAgICAgc3BhbiB7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC4yZW0sIDAsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC4yZW0sIC41ZW0sIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC41ZW0sIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGFtYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGhlaWdodDogMWVtO1xuICAgIHdpZHRoOiAxLjNlbTtcblxuICAgIHNwYW4ge1xuICAgICAgICBoZWlnaHQ6IC4xMjVlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHt9XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge31cblxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA0MDBweCkge1xuXG4gICAgLmhhbWJ1cmdlciB7fVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgUXVhbnRpdHkgb3JiXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnF1YW50aXR5LW9yYiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1pbi13aWR0aDogMS41ZW07XG4gICAgaGVpZ2h0OiAxLjVlbTtcbiAgICBwYWRkaW5nOiAuMmVtIC41ZW0gMDtcbiAgICBib3JkZXItcmFkaXVzOiAyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC8vIGJveC1zaGFkb3c6IDAgMCAwIC4yNWVtIHZhcigtLWNvbC1ib2R5LWJnKTsgLy8gdmlzaWJsZSBpbiBlbGVtZW50cyB0aGF0IGFyZSBub3QgYm9keS1iZyBjb2xvclxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgU2Nyb2xsIHByb2dyZXNzIGJhclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5zY3JvbGwtcHJvZ3Jlc3MtYmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAuMjVlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgJl9fZmlsbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA5OTFweCkge1xuXG4gICAgLnNjcm9sbC1wcm9ncmVzcy1iYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIE1lbnUgYmFyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuOnJvb3Qge1xuICAgIC0tbWVudS13aWR0aDogTWF4KDI1dncsIDIwZW0pO1xufVxuXG5ib2R5LnNob3ctbWVudSB7XG5cbiAgICAubWVudS1iYXItc2hhZG93IHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cblxuICAgIC5tZW51LWJhcixcbiAgICAubWVudS1iYXItc2hhZG93LFxuICAgIC5zY3JvbGwtcHJvZ3Jlc3MtYmFyLFxuICAgIC5zdGlja3ktbWFzdGhlYWQsXG4gICAgLnBhZ2Utd3JhcHBlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoY2FsYygtMSAqIHZhcigtLW1lbnUtd2lkdGgpKSwgMCwgMCk7XG4gICAgfVxufVxuXG4ubWVudS1iYXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGdhcDogMS41ZW07XG4gICAgd2lkdGg6IHZhcigtLW1lbnUtd2lkdGgpO1xuICAgIHBhZGRpbmc6IDIuNWVtIDNlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtbWVudS1iYXItYmcpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogaGlkZSBzY3JvbGxiYXIgZm9yIEludGVybmV0IEV4cGxvcmVyLCBFZGdlICovXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBoaWRlIHNjcm9sbGJhciBmb3IgRmlyZWZveCAqL1xuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyAvKiBoaWRlIHNjcm9sbGJhciBmb3IgQ2hyb21lLCBTYWZhcmksIGFuZCBPcGVyYSAqL1xuICAgIH1cblxuICAgICYgPiAuZmxleC1zcGFjZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMS41ZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmX19jbG9zZSB7XG5cbiAgICAgICAgJiArIC5tZW51LWJhcl9fbmF2IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDNlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAxLjVlbSAwIDA7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIC8vbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICAvL0BpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAgICAgJi5tZW51LWJhcl9fbmF2LS1zbWFsbCAubWVudS1pdGVtIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IC4yNWVtO1xuXG4gICAgICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LWxpZ2h0KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42MThlbTtcblxuICAgICAgICAgICAgICAgICYubWVudS1pdGVtLS1saWdodCB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4yNTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2Utb3V0O1xuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSxcbiAgICAgICAgICAgICAgICAmLmN1cnJlbnQtbWVudS1wYXJlbnQge1xuXG4gICAgICAgICAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogLjc1ZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAuMzVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IC4zNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNTAlLCAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1pY29uIHtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuMTI1ZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuNzVlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaW5wdXQtc3R5bGUtcmVzZXQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAuM2VtO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sLXByaW0pO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogLjJlbTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhLFxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGdhcDogLjI1ZW0gLjVlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAuMjVlbSAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc29jaWFsLWxpbmtzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0uNmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgfVxufVxuXG4ubWVudS1iYXItc2hhZG93IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGluc2V0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1tZW51LWJhci1iZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICAubWVudS1iYXIge1xuICAgICAgICBwYWRkaW5nOiAxLjVlbSAyZW07XG4gICAgfVxuXG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTdGlja3kgbWFzdGhlYWQgKGJ1dHRvbnMpXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnN0aWNreS1tYXN0aGVhZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDU1O1xuICAgIHRvcDogMDtcbiAgICByaWdodDogdmFyKC0tY29udGFpbmVyLXNpZGUtc3BhY2luZyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMWVtO1xuICAgIGhlaWdodDogdmFyKC0tbWFzdGhlYWQtaGVpZ2h0KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgJiA+ICoge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG5cbiAgICAmX19saW5rLFxuICAgICZfX2N0YSB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgICZfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IC44NzVlbTtcbiAgICAgICAgaGVpZ2h0OiAzZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAmLnN0aWNreS1tYXN0aGVhZF9fbGluay0tbWVudSB7fVxuXG4gICAgICAgICYtaWNvbiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDk5MXB4KSB7XG5cbiAgICAuc3RpY2t5LW1hc3RoZWFkIHtcblxuICAgICAgICAmX19saW5rIHtcblxuICAgICAgICAgICAgJi5zdGlja3ktbWFzdGhlYWRfX2xpbmstLW1lbnUgLnN0aWNreS1tYXN0aGVhZF9fbGluay10ZXh0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDY0MHB4KSB7XG5cbiAgICAuc3RpY2t5LW1hc3RoZWFkIHtcblxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4yNWVtO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNWVtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQwMHB4KSB7XG5cbiAgICAuc3RpY2t5LW1hc3RoZWFkIHtcbiAgICAgICAgZ2FwOiAuNWVtO1xuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEhlcm8gY29tcG9uZW50c1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5zZWN0aW9uLS1oZXJvIHtcblxuICAgIC5oZXJvLWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogODYwcHgpIHtcblxuICAgIC5zZWN0aW9uLS1oZXJvIHtcblxuICAgICAgICAuaGVyby1jb250ZW50IHtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxuICAgIC5zZWN0aW9uLS1oZXJvIHtcblxuICAgICAgICAmLnNlY3Rpb24tLWZ1bGwge1xuXG4gICAgICAgICAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5oZXJvLWNvbnRlbnQge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEZ1bGwgd2lkdGggaW1hZ2Vcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uZnVsbC13aWR0aC1pbWFnZSB7XG5cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG5cbi5jb250YWluZXIgLmZ1bGwtd2lkdGgtaW1hZ2UgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiAxLjVlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC5jb250YWluZXIgLmZ1bGwtd2lkdGgtaW1hZ2UgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMWVtO1xuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEZ1bGwgd2lkdGggaW1hZ2Vcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uZnVsbC13aWR0aC12aWRlbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uY29udGFpbmVyIC5mdWxsLXdpZHRoLXZpZGVvIHtcbiAgICBib3JkZXItcmFkaXVzOiAxLjVlbTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC5jb250YWluZXIgLmZ1bGwtd2lkdGgtdmlkZW8ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxZW07XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRnVsbCB3aWR0aCBtYXBcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uZnVsbC13aWR0aC1tYXAge1xuICAgIG1hcmdpbjogMmVtIDA7XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgIC5tYXAtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogTWluKDYwdmgsIDYwdncpO1xuICAgICAgICBtaW4taGVpZ2h0OiAyMGVtO1xuICAgIH1cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENhc2Ugc2luZ2xlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENvbnRlbnQgaW1hZ2UgYmxvY2tzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmNvbnRlbnQtaW1hZ2UtYmxvY2tzIHtcblxuICAgIC5ibG9jayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogTWF4KDV2dywgMS41ZW0pO1xuICAgICAgICBtYXJnaW46IHZhcigtLWRlZmF1bHQtc3BhY2luZykgMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICYuYmxvY2tfX21lZGlhLS1pbWFnZSB7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMS41ZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmJsb2NrX19tZWRpYS0tc2xpZGVyIHt9XG5cbiAgICAgICAgICAgICYuYmxvY2tfX21lZGlhLS12aWRlbyB7fVxuXG4gICAgICAgICAgICAmLmJsb2NrX19tZWRpYS0tbG9nb3Mge31cblxuICAgICAgICAgICAgJi5ibG9ja19fbWVkaWEtLW1hcCB7XG5cbiAgICAgICAgICAgICAgICAubWFwLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19zbGlkZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMS41ZW07XG5cbiAgICAgICAgICAgICYtaW1hZ2Uge1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2NvbnRlbnQge31cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDk5MnB4KSB7XG5cbiAgICAuY29udGVudC1pbWFnZS1ibG9ja3Mge1xuXG4gICAgICAgIC5ibG9jayB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgJi5ibG9jay0tcmV2ZXJzZSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19tZWRpYSB7XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNTgwcHgpIHtcblxuICAgIC5jb250ZW50LWltYWdlLWJsb2NrcyB7XG5cbiAgICAgICAgLmJsb2NrIHtcbiAgICAgICAgICAgIGdhcDogTWF4KDZ2dywgMS41ZW0pO1xuXG4gICAgICAgICAgICAmX19tZWRpYS5ibG9ja19fbWVkaWEtLWltYWdlIGltZyxcbiAgICAgICAgICAgICZfX3NsaWRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICAuY29udGVudC1pbWFnZS1ibG9ja3Mge1xuXG4gICAgICAgIC5ibG9jayB7XG5cbiAgICAgICAgICAgICZfX3NsaWRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMS41ZW0gMCAwIDEuNWVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogY2FsYygwcHggLSB2YXIoLS1jb250YWluZXItc2lkZS1zcGFjaW5nKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEFjdGlvbiBibG9ja1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5hY3Rpb24tYmxvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAyZW0gNGVtO1xuICAgIHBhZGRpbmc6IE1heCgyZW0sIDN2dykgTWF4KDEuNWVtLCA0dncpO1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBib3JkZXI6IC4xZW0gc29saWQgdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigyMHB4KTtcblxuICAgICZfX2JhY2tncm91bmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtYm9keS1iZyk7XG4gICAgICAgIG9wYWNpdHk6IC41O1xuICAgIH1cblxuICAgICZfX2lubmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYuYWN0aW9uLWJsb2NrX19pbm5lci0tZmxleCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgZ2FwOiBpbmhlcml0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5zZWN0aW9uLXRpdGxlLFxuICAgICAgICAgICAgLmJ0bnMge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0bnMge1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICAgICAgICAgICAgICAmX19taWNybyB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnRuIHt9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDEyMDBweCkge1xuXG4gICAgLmFjdGlvbi1ibG9jayB7XG5cbiAgICAgICAgJl9faW5uZXIge1xuXG4gICAgICAgICAgICAmLmFjdGlvbi1ibG9ja19faW5uZXItLWZsZXgge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAuc2VjdGlvbi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYnRucyB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxuICAgIC5hY3Rpb24tYmxvY2sge1xuXG4gICAgICAgICZfX2lubmVyIHtcblxuICAgICAgICAgICAgJi5hY3Rpb24tYmxvY2tfX2lubmVyLS1mbGV4IHtcblxuICAgICAgICAgICAgICAgIC5idG5zIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gb25seSBsZXQgYnV0dG9ucyBncm93IGl0IHRoZXJlIGFyZSAyXG5cbiAgICAgICAgICAgICAgICAgICAgJjpoYXMoLmJ0bnNfX21pY3JvKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG46Zmlyc3QtY2hpbGQ6bm90KDpudGgtbGFzdC1jaGlsZCgyKSksXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuICsgLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpub3QoOmhhcyguYnRuc19fbWljcm8pKSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG46Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG4gKyAuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBGYW5jeSB2aWRlb1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5mYW5jeS12aWRlbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFzcGVjdC1yYXRpbzogMTYvOTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjVlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleSk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuZmFuY3ktdmlkZW8tLXBsYXlpbmcge31cblxuICAgICZfX3BsYWNlaG9sZGVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyBjbGljayBvbiBwbGFjZWhvbGRlciB0cmlnZ2VycyBidXR0b24gY2xpY2tcbiAgICB9XG5cbiAgICAmX190aHVtYm5haWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuXG4gICAgJl9fdGl0bGUsXG4gICAgJl9fZHVyYXRpb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIGJvdHRvbTogMmVtO1xuICAgICAgICBwYWRkaW5nOiAuMzVlbSAuNzVlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGhzbGEodmFyKC0tY29sLXF1YXQtaHNsKSwgLjg1KTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgfVxuXG4gICAgJl9fdGl0bGUge1xuICAgICAgICBsZWZ0OiAyZW07XG4gICAgfVxuXG4gICAgJl9fZHVyYXRpb24ge1xuICAgICAgICByaWdodDogMmVtO1xuICAgIH1cblxuICAgICZfX3BsYXkge1xuICAgICAgICBAaW5jbHVkZSBpbnB1dC1zdHlsZS1yZXNldDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogM2VtO1xuICAgICAgICBoZWlnaHQ6IDNlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAuMWVtO1xuICAgICAgICBtYXJnaW46IC0xLjVlbSAwIDAgLTEuNWVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHZhcigtLWNvbC1wcmltKSwgMCAwIDAgMCB2YXIoLS1jb2wtcHJpbSk7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtYm9keS1iZyk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogLS4yNWVtIC0uMjVlbSAwIDAgdmFyKC0tY29sLXByaW0pLCAuMjVlbSAuMjVlbSAwIDAgdmFyKC0tY29sLXByaW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSArIDFweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wbGF5ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA1ODBweCkge1xuXG4gICAgLmZhbmN5LXZpZGVvIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMWVtO1xuXG4gICAgICAgICZfX3RpdGxlLFxuICAgICAgICAmX19kdXJhdGlvbiB7XG4gICAgICAgICAgICBib3R0b206IDFlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgbGVmdDogMWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fZHVyYXRpb24ge1xuICAgICAgICAgICAgcmlnaHQ6IDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIE1hcCBjb21wb25lbnRzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuYnV0dG9uLmxlYWZsZXQtcmVzZXQtdmlldyB7XG4gICAgQGluY2x1ZGUgaW5wdXQtc3R5bGUtcmVzZXQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHRvcDogODRweDtcbiAgICBsZWZ0OiAxMnB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKCMwMDAsIC4yKTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4xNXMgZWFzZS1vdXQ7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgdG9wOiA4NXB4O1xuICAgIH1cbn1cblxuLm1hcC1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90aGVtZS9tYXAtYmFja2dyb3VuZC5qcGcnKSBjZW50ZXIvY292ZXIgbm8tcmVwZWF0IHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb250YWluZXIgLm1hcC1jb250YWluZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IC41ZW0gMS41ZW07XG59XG5cbi5tYXAtY2FudmFzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBoZWlnaHQgc2V0IHZpYSBKU1xuXG4gICAgJi5sZWFmbGV0LWNvbnRhaW5lciB7XG5cbiAgICAgICAgJiArIGJ1dHRvbi5sZWFmbGV0LXJlc2V0LXZpZXcge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlcixcbiAgICAubGVhZmxldC1wb3B1cC10aXAge1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2wtYm9keS1iZyk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgLjEyNWVtIC41ZW0gaHNsYSh2YXIoLS1jb2wtdGV4dC1oc2wpLCAuMjUpO1xuICAgIH1cblxuICAgIC5sZWFmbGV0LXBvcHVwLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgfVxuXG4gICAgLmxlYWZsZXQtcG9wdXAtY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBhLmxlYWZsZXQtcG9wdXAtY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LXgtbGlnaHQpO1xuICAgIH1cblxuICAgIC5tYXAtcG9wdXAge1xuICAgICAgICBtaW4td2lkdGg6IDE1ZW07XG4gICAgICAgIHBhZGRpbmc6IDFlbSAxLjVlbSAxZW0gMS4yNWVtO1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmltKTtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idG4tLXNob3ctbWFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgKyAxcHgpICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRXhwYW5kYWJsZSBJdGVtc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5leHBhbmRhYmxlLWl0ZW1zIHtcbiAgICBtYXJnaW46IDEuNWVtIDA7XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgIC5pdGVtIHtcbiAgICAgICAgcGFkZGluZzogLjVlbSAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAuMWVtIHNvbGlkIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IC4xZW0gc29saWQgdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5pdGVtLS10b2dnbGVkIHtcblxuICAgICAgICAgICAgLml0ZW1fX3RvZ2dsZSB7XG5cbiAgICAgICAgICAgICAgICAmLXRleHQge31cblxuICAgICAgICAgICAgICAgICYtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLml0ZW1fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxZW07XG5cbiAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fdG9nZ2xlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGlucHV0LXN0eWxlLXJlc2V0O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBnYXA6IDJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMWVtIDA7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42MThlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG5cbiAgICAgICAgICAgICAgICAuaXRlbV9fdG9nZ2xlLXRleHQge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAuMmVtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbV9fdG9nZ2xlLWljb24ge31cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi10ZXh0IHtcbiAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAuM2VtO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2Utb3V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtcHJpbSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDBmcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGdyaWQtdGVtcGxhdGUtcm93cyAuM3MgZWFzZS1vdXQ7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IC4zcyBlYXNlLW91dDtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDc2N3B4KSB7XG5cbiAgICAuZXhwYW5kYWJsZS1pdGVtcyAuaXRlbSB7XG5cbiAgICAgICAgJi5pdGVtLS10b2dnbGVkIHtcblxuICAgICAgICAgICAgLml0ZW1fX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAuNzVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RvZ2dsZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuNzVlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICAuZXhwYW5kYWJsZS1pdGVtcyAuaXRlbSB7fVxuXG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBCcmVhZGNydW1ic1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5icmVhZGNydW1icyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogLjEyNWVtIC43NWVtO1xuICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuXG4gICAgJl9fcHJlZml4IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LWxpZ2h0KTtcbiAgICB9XG5cbiAgICAmX19kaXZpZGVyIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtZGFyayk7XG4gICAgfVxuXG4gICAgLmNydW1iIHtcblxuICAgICAgICAmLmNydW1iLS1jdXJyZW50IGEge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC5icmVhZGNydW1icyB7XG5cbiAgICAgICAgJl9fcHJlZml4IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTaXRlLWxvYWRlciBvdmVybGF5XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnNpdGUtbG9hZGVyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMjUwO1xuICAgIGluc2V0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtYm9keS1iZyk7XG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTY3JvbGwgZmFkZS1pbiBhbmltYXRpb25zXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmhpZGUtZm9yLWZhZGUtaW4ge1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAuc2VjdGlvbl9faW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDFlbSwgMCk7XG4gICAgfVxuXG4gICAgJi5mYWRlLWluIHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlO1xuICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBXaXphcmRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ud2l6YXJkIHtcbiAgICBjb250YWluZXItbmFtZTogd2l6YXJkO1xuICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcblxuICAgIHBhZGRpbmc6IE1heCgxLjVlbSwgNHZ3KTtcbiAgICBtYXJnaW46IDJlbSAwO1xuICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgIGJvcmRlcjogLjFlbSBzb2xpZCB2YXIoLS1jb2wtZ3JleS1saWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWJvZHktYmcpO1xuXG4gICAgJl9fY29sdW1ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBnYXA6IDRlbTtcbiAgICB9XG5cbiAgICAmX19tYWluIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cblxuICAgICZfX2FzaWRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgd2lkdGg6IE1heCgyNGVtLCBjYWxjKDMzLjMzJSAtIDJlbSkpO1xuICAgIH1cblxuICAgICZfX3N0aWNreSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogdmFyKC0tbWFzdGhlYWQtaGVpZ2h0KTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cblxuICAgICZfX3N0ZXBzIHtcblxuICAgICAgICAmID4gLnN0ZXAge1xuXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDNlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM2VtO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IC4xNWVtIHNvbGlkIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zdGVwIHtcblxuICAgICAgICAgICAgJi5zdGVwLS1oaWRkZW4ge31cblxuICAgICAgICAgICAgJl9faGVhZGVyIHtcblxuICAgICAgICAgICAgICAgICYuc3RlcF9faGVhZGVyLS1oYXMtcGVyY2VudGFnZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDEuNWVtIDJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZ2FwOiAxcmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgICAgIHRleHQtd3JhcDogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fbnVtYmVyIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjU1ZW0gLjc1ZW0gLjM1ZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNWVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1zZWMpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjZlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC43NWVtIDAgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fZmllbGRzIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19yZXN1bHQsXG4gICAgJl9fdXNwcyB7XG4gICAgICAgIHBhZGRpbmc6IE1heCg2LjUlLCAxLjVlbSkgTWF4KDcuNSUsIDEuNWVtKTtcbiAgICAgICAgbWFyZ2luOiAyZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMWVtO1xuICAgIH1cblxuICAgICZfX3Jlc3VsdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuICAgIH1cblxuICAgICZfX3VzcHMge1xuICAgICAgICBib3JkZXI6IC4xZW0gc29saWQgdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuICAgIH1cblxuICAgICZfX2RhdGEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgZ2FwOiAuNzVlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAmLWV4cGFuZCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1lbGVtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBnYXA6IC4yNWVtIDFlbTtcblxuICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoLndpemFyZF9fZGF0YS1lbGVtLS1zdWIpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogLjc1ZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogLjFlbSBzb2xpZCB2YXIoLS1jb2wtZ3JleSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYud2l6YXJkX19kYXRhLWVsZW0tLXN1YiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLS4yNWVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuXG4gICAgICAgICAgICAgICAgJiArIC53aXphcmRfX2RhdGEtZWxlbS0tc3ViIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLS41ZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5rZXkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19wZXJjZW50YWdlIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxufVxuXG5AY29udGFpbmVyIHdpemFyZCAobWF4LXdpZHRoOiA1MGVtKSB7XG5cbiAgICAud2l6YXJkIHtcblxuICAgICAgICAmX19jb2x1bW5zIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2FzaWRlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3RlcHMge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAuc3RlcCB7XG5cbiAgICAgICAgICAgICAgICAmX19oZWFkZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICYuc3RlcF9faGVhZGVyLS1oYXMtcGVyY2VudGFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19udW1iZXIge1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fZmllbGRzIHtcblxuICAgICAgICAgICAgICAgICAgICAuZmllbGQge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmX19pbnB1dC1ncmlkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA1ODBweCkge1xuXG4gICAgLndpemFyZCB7XG5cbiAgICAgICAgJl9fc3RlcHMge1xuXG4gICAgICAgICAgICAmID4gLnN0ZXAge1xuXG4gICAgICAgICAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEN1c3RvbSByYWRpb1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5jdXN0b20tcmFkaW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmLmN1c3RvbS1yYWRpby0tbGFyZ2Uge1xuXG4gICAgICAgIC5jdXN0b20tcmFkaW8ge1xuXG4gICAgICAgICAgICAmX19pbnB1dCB7XG5cbiAgICAgICAgICAgICAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLXJhZGlvX19pbm5lciB7XG5cbiAgICAgICAgICAgICAgICAgICAgLmN1c3RvbS1yYWRpb19fY2hlY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faW5uZXIge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICAgICAgZmxleDogMSAxIDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxLjVlbSAwIDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IC4zNWVtIDAgMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fY2hlY2sge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDEuNWVtO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKDUwJSAtIC43NWVtKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuNWVtO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMS41ZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmN1c3RvbS1yYWRpby0tc21hbGwge1xuXG4gICAgICAgIC5jdXN0b20tcmFkaW8ge1xuXG4gICAgICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICAgICAgZ2FwOiAxZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZzogLjg3NWVtIDEuMjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LXgtbGlnaHQpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuMTI1ZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogLjI1ZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcblxuICAgICAgICAuY3VzdG9tLXJhZGlvX19pbm5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2lucHV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAtOTk5OXB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tcmFkaW9fX2lubmVyIHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAuMTVlbSB2YXIoLS1jb2wtYm9keS1iZyksXG4gICAgICAgICAgICAgICAgMCAwIDAgLjE1ZW0gdmFyKC0tY29sLXByaW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAuNWVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleS1saWdodCk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2Utb3V0O1xuICAgIH1cbn1cblxuQGNvbnRhaW5lciAobWF4LXdpZHRoIDogMzBlbSkge1xuXG4gICAgLmN1c3RvbS1yYWRpbyB7XG5cbiAgICAgICAgJi5jdXN0b20tcmFkaW8tLWxhcmdlIHtcblxuICAgICAgICAgICAgLmN1c3RvbS1yYWRpbyB7XG5cbiAgICAgICAgICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMS4yNWVtO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAuMjVlbSAwIDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9fY2hlY2sge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgVHJ1ZSBkYXJrIG1vZGVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ubWVudS1pdGVtLS10cnVlZGFyayB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udHJ1ZWRhcmsge1xuICAgIC0tcG9zLXg6IDUwJTtcbiAgICAtLXBvcy15OiA1MCU7XG5cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTAwO1xuICAgIGluc2V0OiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBmb250LXNpemU6IDE1dnc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLXdlYmtpdC1tYXNrLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIDFlbSBhdCB2YXIoLS1wb3MteCkgdmFyKC0tcG9zLXkpLCB0cmFuc3BhcmVudCAyNSUsIGJsYWNrKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNzY4cHgpIHtcblxuICAgIC5tZW51LWl0ZW0tLXRydWVkYXJrIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGJvZHk6bm90KC5icm93c2VyLWlvcykuc2hvdy10cnVlZGFyayB7XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRydWVkYXJrIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgTHluayZDb1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbjpyb290IHtcbiAgICAtLWx5bmtjby13aWR0aDogMTZlbTtcbiAgICAtLWx5bmstaGVpZ2h0LWZhY3RvcjogLjM1O1xuICAgIC0tbHlua2NvLWFuaW1hdGlvbi1kdXJhdGlvbjogMjBzO1xufVxuXG4ubHlua2NvIHtcbiAgICAtLWx5bmtjby13aGVlbC1yb3RhdGlvbjogLTM2MDBkZWc7IC8vIG92ZXJ3cml0dGVuIHdpdGggSlMsIGJhc2VkIG9uIHZpZXdwb3J0IHdpZHRoXG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBjYWxjKHZhcigtLWx5bmtjby13aWR0aCkgKiB2YXIoLS1seW5rLWhlaWdodC1mYWN0b3IpKTtcbiAgICBvdmVyZmxvdzogY2xpcDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICZfX3RyYWNrIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMCBjYWxjKC0xICogdmFyKC0tbHlua2NvLXdpZHRoKSk7XG4gICAgfVxuXG4gICAgJl9fZWxlbSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IGNhbGModmFyKC0tbHlua2NvLXdpZHRoKSAqIHZhcigtLWx5bmstaGVpZ2h0LWZhY3RvcikpO1xuICAgICAgICB3aWR0aDogdmFyKC0tbHlua2NvLXdpZHRoKTtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvdGhlbWUvZGJrLWx5bmtjby5wbmcnKSBjZW50ZXIgLyBjb3ZlciBuby1yZXBlYXQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICBhbmltYXRpb246IGx5bmtjby1zaGlmdCB2YXIoLS1seW5rY28tYW5pbWF0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCBpbmZpbml0ZSBib3RoO1xuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDE0LjUlO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90aGVtZS9kYmstbHlua2NvLXdoZWVsLnBuZycpIGNlbnRlciAvIGNvdmVyIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogbHlua2NvLXdoZWVscyB2YXIoLS1seW5rY28tYW5pbWF0aW9uLWR1cmF0aW9uKSBlYXNlLWluLW91dCBpbmZpbml0ZSBib3RoO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogMTMuNSU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHJpZ2h0OiAxNC43NSU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBQb3N0IG1ldGFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uc2VjdGlvbjpub3QoLnNlY3Rpb24tLXBhZGRpbmcpOm5vdCgubm9tYXJnaW4pICsgLnNlY3Rpb24tLXBvc3Qtc2lnbm9mZiB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLWRlZmF1bHQtc3BhY2luZykgKyAyZW0pO1xufVxuXG4ucG9zdC1tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IDEuNWVtIDJlbTtcblxuICAgICZfX21haW4ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDFlbTtcbiAgICB9XG5cbiAgICAmX19waG90byB7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB3aWR0aDogMy41ZW07XG4gICAgICAgIGhlaWdodDogMy41ZW07XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgJl9fZGV0YWlscyB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAuMjVlbTtcbiAgICB9XG5cbiAgICAmX19kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxuXG4gICAgJl9fYXV0aG9yIHt9XG5cbiAgICAmX19yZWFkaW5nLXRpbWUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IC43NWVtO1xuICAgICAgICBwYWRkaW5nOiAuNjVlbSAxLjEyNWVtIC41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuNWVtO1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgYm9yZGVyOiAuMWVtIHNvbGlkIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcblxuICAgICAgICBbY2xhc3MqPVwiZmEtXCJdIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogLS4xZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wb3N0LWNhdGVnb3JpZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAuNWVtO1xuICAgIG1hcmdpbjogMmVtIDAgM2VtO1xuICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAuY2F0ZWdvcnkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IC42NWVtIDEuMTI1ZW0gLjVlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS41ZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KSwgMCAwIDAgMCB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ib2R5LWJnKTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAtLjI1ZW0gLS4yNWVtIDAgMCB2YXIoLS1jb2wtZ3JleS1saWdodCksIC4yNWVtIC4yNWVtIDAgMCB2YXIoLS1jb2wtZ3JleS1saWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNhdGVnb3J5LS1wcmltYXJ5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ib2R5LWJnKTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAtLjI1ZW0gLS4yNWVtIDAgMCB2YXIoLS1jb2wtZ3JleS1saWdodCksIC4yNWVtIC4yNWVtIDAgMCB2YXIoLS1jb2wtZ3JleS1saWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBQYWdpbmF0aW9uXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbjogM2VtIDA7XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIHVsLnBhZ2UtbnVtYmVycyB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogLjc1ZW07XG4gICAgfVxuXG4gICAgYS5wYWdlLW51bWJlcnMsXG4gICAgc3Bhbi5wYWdlLW51bWJlcnM6bm90KC5kb3RzKSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogLjc1ZW07XG4gICAgICAgIG1pbi13aWR0aDogMi41ZW07XG4gICAgICAgIGhlaWdodDogMi41ZW07XG4gICAgICAgIHBhZGRpbmc6IC4yNWVtIDFlbSAuMTI1ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQsIHRvcCAwcztcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KSwgMCAwIDAgMCB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcblxuICAgICAgICAmOm5vdCguY3VycmVudCkge1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWJvZHktYmcpO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IC0uMjVlbSAtLjI1ZW0gMCAwIHZhcigtLWNvbC1ncmV5LWxpZ2h0KSwgLjI1ZW0gLjI1ZW0gMCAwIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIC4xZW0gdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgW2NsYXNzKj1cImZhLVwiXSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0b3A6IC0uMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYS5wcmV2LFxuICAgIGEubmV4dCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNWVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1ZW07XG4gICAgfVxuXG4gICAgLmRvdHMge1xuICAgICAgICBwYWRkaW5nOiAwIC4yNWVtO1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxuICAgIC5wYWdpbmF0aW9uIHtcblxuICAgICAgICBhLnByZXYsXG4gICAgICAgIGEubmV4dCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBWaWRlbyBwbGF5ZXJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4udmlkZW8tcGxheWVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAyZW0gYXV0bztcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgIGJvcmRlci1yYWRpdXM6IDEuNWVtO1xuXG4gICAgJi52aWRlby1wbGF5ZXItLWxhbmRzY2FwZSB7fVxuXG4gICAgJi52aWRlby1wbGF5ZXItLXBvcnRyYWl0IHt9XG5cbiAgICAmLnZpZGVvLXBsYXllci0tcGhvbmUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTIuNSU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIuNWVtO1xuICAgICAgICBib3JkZXI6IC43NWVtIHNvbGlkICMwMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgLS4wNWVtIDAgMCByZ2JhKCNmZmYsIC4yNSk7XG5cbiAgICAgICAgLnZpZGVvLXBsYXllcl9fdmlkZW8ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDEuNzVlbSAxLjc1ZW07XG4gICAgICAgIH1cblxuICAgICAgICAudmlkZW8tcGxheWVyX19waG9uZS1lbGVtZW50cyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgICAgICAgICAuZWxlbS1zY3JlZW4tY3V0b3V0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMzUlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1JTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1ZW07XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1JTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMCU7XG4gICAgICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmVsZW0tb25vZmYtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYygxMDAlICsgLjc1ZW0gLSAxcHgpO1xuICAgICAgICAgICAgICAgIHRvcDogMTUlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1JTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwIC4xMjVlbSAuMTI1ZW0gMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLjFlbSAwIDAgcmdiYSgjZmZmLCAuNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5lbGVtLXZvbHVtZS1jb250cm9scyB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAuNzVlbSAtIDFweCk7XG4gICAgICAgICAgICAgICAgdG9wOiAxNSU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMiU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNSU7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDQlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogLjEyNWVtIDAgMCAuMTI1ZW07XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLjFlbSAwIDAgcmdiYSgjZmZmLCAuNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZWxlbS1ib3R0b20tc2hhZG93IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyAuNGVtKTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogLjVlbTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAuMjVlbSAuMjVlbSByZ2JhKCMwMDAsIC41KSxcbiAgICAgICAgICAgICAgICAgICAgMCAwIC41ZW0gLjVlbSByZ2JhKCMwMDAsIC41KSxcbiAgICAgICAgICAgICAgICAgICAgMCAwIDFlbSAxZW0gcmdiYSgjMDAwLCAuNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnZpZGVvLXBsYXllci0tZnJhbWVkIHtcbiAgICAgICAgYm9yZGVyOiAuNWVtIHNvbGlkIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuXG4gICAgICAgIC52aWRlby1wbGF5ZXJfX3ZpZGVvIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEuMTI1ZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX192aWRlbyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEuNWVtO1xuICAgIH1cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEJhY2tncm91bmQgaWNvbnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4uc2l0ZS1iYWNrZ3JvdW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogLTEwO1xuICAgIGluc2V0OiA1MHZoIC0xMHZ3O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICBvcGFjaXR5OiAuMDI1O1xuXG4gICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICBmaWxsOiB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBQcm9ncmVzcy1jaXJjbGVcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ucHJvZ3Jlc3MtY2lyY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmX192YWx1ZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNTAlLDApO1xuICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgJl9fZ2F1Z2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDRlbTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgIHN0cm9rZS1saW5lY2FwOiByb3VuZDtcblxuICAgICAgICAmLWJhc2Uge1xuICAgICAgICAgICAgZmlsbDogbm9uZTtcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuICAgICAgICAgICAgc3Ryb2tlLXdpZHRoOiAuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1hcmMge1xuICAgICAgICAgICAgZmlsbDogbm9uZTtcbiAgICAgICAgICAgIHN0cm9rZTogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luOiByb3VuZDtcbiAgICAgICAgICAgIHN0cm9rZS13aWR0aDogLjVlbTtcbiAgICAgICAgICAgIC8vYW5pbWF0aW9uOiBsb2FkLXByb2dyZXNzLWNpcmNsZSAxcyBlYXNlIGJvdGg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBzdHJva2UtZGFzaGFycmF5IC41cyBlYXNlLW91dDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFByb2Nlc3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ucHJvY2VzcyB7XG5cbiAgICAmX19zdGVwcyB7XG5cbiAgICAgICAgLnN0ZXAge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiAyZW07XG4gICAgICAgICAgICBtYXJnaW46IDNlbSAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMmVtO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAuNzVlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyAyZW0pO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IC41ZW0gc29saWQgdmFyKC0tY29sLWdyZXkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyZW07XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAuNWVtIHZhcigtLWNvbC1ncmV5KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAgICAgICAgICBnYXA6IC41ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwY2g7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDk5MnB4KSB7XG5cbiAgICAucHJvY2VzcyB7XG5cbiAgICAgICAgJl9fc3RlcHMge1xuXG4gICAgICAgICAgICAuc3RlcCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlICsgMWVtKTtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgIC5zdGVwX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEuMjVlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC43NWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0uMTVlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgZ2FwOiAuNzVlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMS4yNWVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogLjE1cmVtIHNvbGlkIHZhcigtLWNvbC1ncmV5KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEtleSB2aXN1YWwgKHVzZWQgaW4gaGVybylcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ua2V5LXZpc3VhbCB7XG4gICAgY29udGFpbmVyLW5hbWU6IGtleS12aXN1YWw7XG4gICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgICAvL2JvcmRlcjogMXB4IGRhc2hlZCByZWQ7XG4gICAgLy9iYWNrZ3JvdW5kOiB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcblxuICAgICZfX2JhY2tncm91bmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgb3BhY2l0eTogLjA1O1xuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fb3JicyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG5cbiAgICAgICAgLm9yYiB7XG4gICAgICAgICAgICAtLW9yYi1zaGlmdDogNSU7XG5cbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMS8xO1xuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgdG9wOiA3LjUlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNCU7XG5cbiAgICAgICAgICAgICAgICAub3JiX19iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiB2YXIoLS1vcmItc2hpZnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDgzJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTIlO1xuXG4gICAgICAgICAgICAgICAgLm9yYl9fYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogdmFyKC0tb3JiLXNoaWZ0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDc3JTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMiU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEzJTtcblxuICAgICAgICAgICAgICAgIC5vcmJfX2JhY2tncm91bmQge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogdmFyKC0tb3JiLXNoaWZ0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDUlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDU3LjUlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMiU7XG5cbiAgICAgICAgICAgICAgICAub3JiX19iYWNrZ3JvdW5kIHtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogdmFyKC0tb3JiLXNoaWZ0KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2JhY2tncm91bmQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19mcmFtZXMge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA0JTtcbiAgICAgICAgcGVyc3BlY3RpdmU6IDUwZW07XG5cbiAgICAgICAgLmZyYW1lIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBhc3BlY3QtcmF0aW86IDEvMjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbC1ncmV5LTYwKTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAuMzVlbSB2YXIoLS1jb2wtdGV4dC1saWdodCk7XG5cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTcuNSU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMSwgLS4xNSwgMjBkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE3LjUlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMSwgLS4xNSwgLTIwZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fYmFja2dyb3VuZCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGluc2V0OiAwO1xuXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGNvbnRhaW5lciBrZXktdmlzdWFsIChtYXgtd2lkdGg6IDQwZW0pIHtcblxuICAgIC5rZXktdmlzdWFsIHtcblxuICAgICAgICAmX19mcmFtZXMge1xuXG4gICAgICAgICAgICAuZnJhbWUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC43NWVtO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIC4yNzVlbSB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQGNvbnRhaW5lciBrZXktdmlzdWFsIChtYXgtd2lkdGg6IDMwZW0pIHtcblxuICAgIC5rZXktdmlzdWFsIHtcblxuICAgICAgICAmX19mcmFtZXMge1xuXG4gICAgICAgICAgICAuZnJhbWUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgLjJlbSB2YXIoLS1jb2wtdGV4dCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENvbG9yIGJsb2Nrc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5jb2xvci1ibG9ja3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgbWFyZ2luOiAyLjV2dztcbiAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuXG4gICAgLmJsb2NrIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDJ2dztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgJi5ibG9jay0tcHJpbSB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTsgfVxuICAgICAgICAmLmJsb2NrLS1zZWMgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtc2VjKTsgfVxuICAgICAgICAmLmJsb2NrLS10ZXJ0IHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXRlcnQpOyB9XG4gICAgICAgICYuYmxvY2stLXF1YXQgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtcXVhdCk7IH1cbiAgICAgICAgJi5ibG9jay0tcXVpbiB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1xdWluKTsgfVxuICAgICAgICAmLmJsb2NrLS1zZW4geyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtc2VuKTsgfVxuXG4gICAgICAgICZbY2xhc3MqPVwiYmxvY2stLXRleHRcIl0ge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1ib2R5LWJnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYmxvY2stLXRleHQgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtdGV4dC14LWRhcmspOyB9XG4gICAgICAgICYuYmxvY2stLXRleHQtODAgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtdGV4dC1kYXJrKTsgfVxuICAgICAgICAmLmJsb2NrLS10ZXh0LTYwIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXRleHQpOyB9XG4gICAgICAgICYuYmxvY2stLXRleHQtNDAgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtdGV4dC1saWdodCk7IH1cbiAgICAgICAgJi5ibG9jay0tdGV4dC0yMCB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC10ZXh0LXgtbGlnaHQpOyB9XG5cbiAgICAgICAgJltjbGFzcyo9XCJibG9jay0tZ3JleVwiXSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5ibG9jay0tZ3JleSB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtZGFyayk7IH1cbiAgICAgICAgJi5ibG9jay0tZ3JleS04MCB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWRhcmspOyB9XG4gICAgICAgICYuYmxvY2stLWdyZXktNjAgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleSk7IH1cbiAgICAgICAgJi5ibG9jay0tZ3JleS00MCB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LWxpZ2h0KTsgfVxuICAgICAgICAmLmJsb2NrLS1ncmV5LTIwIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7IH1cbiAgICB9XG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTdGF0c1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5zdGF0cyB7XG4gICAgY29udGFpbmVyLW5hbWU6IHN0YXRzO1xuICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgICBtYXJnaW46IDNlbSAwO1xuICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAmX19ncmlkIHtcbiAgICAgICAgLS1nYXAteTogNmVtO1xuICAgICAgICAtLWdhcC14OiA2ZW07XG4gICAgICAgIC0tY29sdW1uczogMztcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogdmFyKC0tZ2FwLXkpIHZhcigtLWdhcC14KTtcblxuICAgICAgICAuc3RhdCB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg5OS45JSAvIHZhcigtLWNvbHVtbnMpIC0gKHZhcigtLWdhcC14KSAqICh2YXIoLS1jb2x1bW5zKSAtIDEpIC8gdmFyKC0tY29sdW1ucykpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdGF0IHtcbiAgICAgICAgY29udGFpbmVyLW5hbWU6IHN0YXRzLWl0ZW07XG4gICAgICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIHRvcDogY2FsYygtMSAqICh2YXIoLS1nYXAteSkgLyAyKSk7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLWdhcC14KSAvIDIpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1ncmV5KTtcblxuICAgICAgICAgICAgW2NsYXNzKj1cImZhLVwiXSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fbnVtYmVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW46IC43NWVtIDAgLjVlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2Rlc2NyaXB0aW9uIHt9XG4gICAgfVxufVxuXG5AY29udGFpbmVyIHN0YXRzIChtYXgtd2lkdGg6IDU2ZW0pIHtcblxuICAgIC5zdGF0c19fZ3JpZCB7XG4gICAgICAgIC0tY29sdW1uczogMjtcbiAgICB9XG5cbn1cblxuQGNvbnRhaW5lciBzdGF0cy1pdGVtIChtYXgtd2lkdGg6IDE1ZW0pIHtcblxuICAgIC5zdGF0cyAuc3RhdCB7XG5cbiAgICAgICAgJl9faWNvbiB7XG5cbiAgICAgICAgICAgIFtjbGFzcyo9XCJmYS1cIl0ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOGVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fbnVtYmVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBjb250YWluZXIgc3RhdHMtaXRlbSAobWF4LXdpZHRoOiAxMmVtKSB7XG5cbiAgICAuc3RhdHMgLnN0YXQge1xuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKHZhcigtLWdhcC14KSAvIDIpO1xuXG4gICAgICAgICAgICBbY2xhc3MqPVwiZmEtXCJdIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDZlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX251bWJlciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA2NzVweCkge1xuXG4gICAgLnN0YXRzX19ncmlkIHtcbiAgICAgICAgLS1nYXAteTogNGVtO1xuICAgICAgICAtLWdhcC14OiA0ZW07XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDU4MHB4KSB7XG5cbiAgICAuc3RhdHMge1xuICAgICAgICBtYXJnaW46IDJlbSAwO1xuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA0MDBweCkge1xuXG4gICAgLnN0YXRzX19ncmlkIHtcbiAgICAgICAgLS1nYXAteTogM2VtO1xuICAgICAgICAtLWdhcC14OiAzZW07XG4gICAgfVxuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgTG9nb3Ncbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ubG9nb3Mge1xuICAgIG1hcmdpbjogM2VtIDA7XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICYubG9nb3MtLXNwYWNlZC1ldmVubHkge1xuICAgICAgICBjb250YWluZXItbmFtZTogbG9nb3M7XG4gICAgICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcblxuICAgICAgICAubG9nb3NfX2dyaWQge1xuICAgICAgICAgICAgLS1nYXAteTogMmVtO1xuICAgICAgICAgICAgLS1nYXAteDogMmVtO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTYuNjYlIC0gdmFyKC0tZ2FwLXgpKjUvNik7XG5cbiAgICAgICAgICAgICAgICAmX19saW5rIHtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJiArIC5sb2dvX19pbWFnZSBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTAlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogTWF4KC4wNWVtLCAxcHgpIHNvbGlkIGhzbGEodmFyKC0tY29sLXRleHQtaHNsKSwgLjI1KTtcblxuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAyLjUvMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19ncmlkIHtcbiAgICAgICAgLS1nYXAteTogMmVtO1xuICAgICAgICAtLWdhcC14OiA0ZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogdmFyKC0tZ2FwLXkpIHZhcigtLWdhcC14KTtcbiAgICB9XG5cbiAgICAubG9nbyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmX19saW5rIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBjb250cmFzdCgwKSBicmlnaHRuZXNzKDAuMjUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDhlbTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA0ZW07XG5cbiAgICAgICAgICAgICAgICBwYXRoIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsbDogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiBNYXgoNXZ3LCAzZW0pIDA7XG4gICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDk5MXB4KSB7XG5cbiAgICAubG9nb3Mge1xuXG4gICAgICAgICZfX2dyaWQge1xuICAgICAgICAgICAgLS1nYXAteTogMS41ZW07XG4gICAgICAgICAgICAtLWdhcC14OiAzZW07XG4gICAgICAgIH1cblxuICAgICAgICAubG9nbyB7XG5cbiAgICAgICAgICAgICZfX2ltYWdlIHtcblxuICAgICAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICAubG9nb3Mge1xuXG4gICAgICAgICZfX2dyaWQge1xuICAgICAgICAgICAgLS1nYXAteTogMWVtO1xuICAgICAgICAgICAgLS1nYXAteDogMmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28ge1xuXG4gICAgICAgICAgICAmX19pbWFnZSB7XG5cbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDVlbTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMi41ZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBjb250YWluZXIgbG9nb3MgKG1heC13aWR0aDogNjVlbSkge1xuXG4gICAgLmxvZ29zLmxvZ29zLS1zcGFjZWQtZXZlbmx5IHtcblxuICAgICAgICAubG9nb3NfX2dyaWQge1xuXG4gICAgICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMjAlIC0gdmFyKC0tZ2FwLXgpKjQvNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQGNvbnRhaW5lciBsb2dvcyAobWF4LXdpZHRoOiA1Mi41ZW0pIHtcblxuICAgIC5sb2dvcy5sb2dvcy0tc3BhY2VkLWV2ZW5seSB7XG5cbiAgICAgICAgLmxvZ29zX19ncmlkIHtcblxuICAgICAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIHZhcigtLWdhcC14KSozLzQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBjb250YWluZXIgbG9nb3MgKG1heC13aWR0aDogNDBlbSkge1xuXG4gICAgLmxvZ29zLmxvZ29zLS1zcGFjZWQtZXZlbmx5IHtcblxuICAgICAgICAubG9nb3NfX2dyaWQge1xuXG4gICAgICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMlIC0gdmFyKC0tZ2FwLXgpKjIvMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQGNvbnRhaW5lciBsb2dvcyAobWF4LXdpZHRoOiAzMGVtKSB7XG5cbiAgICAubG9nb3MubG9nb3MtLXNwYWNlZC1ldmVubHkge1xuXG4gICAgICAgIC5sb2dvc19fZ3JpZCB7XG4gICAgICAgICAgICAtLWdhcC14OiAxZW07XG4gICAgICAgICAgICAtLWdhcC15OiAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFBvcnRhbFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5wb3J0YWwge1xuICAgIGNvbnRhaW5lci1uYW1lOiBwb3J0YWw7XG4gICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuXG4gICAgJl9fZ3JpZCB7XG4gICAgICAgIC0tZ2FwLXk6IDFlbTtcbiAgICAgICAgLS1nYXAteDogMWVtO1xuICAgICAgICAtLWNvbHVtbnM6IDM7XG5cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBnYXA6IHZhcigtLWdhcC15KSB2YXIoLS1nYXAteCk7XG5cbiAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoOTkuOSUgLyB2YXIoLS1jb2x1bW5zKSAtICh2YXIoLS1nYXAteCkgKiAodmFyKC0tY29sdW1ucykgLSAxKSAvIHZhcigtLWNvbHVtbnMpKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGluayB7XG4gICAgICAgIGNvbnRhaW5lci1uYW1lOiBwb3J0YWwtaXRlbTtcbiAgICAgICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxZW07XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEuMzVlbSAxLjVlbSAxLjI1ZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtYm9keS1iZyk7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAuMWVtIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2Utb3V0O1xuXG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgLjFlbSB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ljb24ge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYXJyb3cge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0LXgtbGlnaHQpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AY29udGFpbmVyIHBvcnRhbCAobWF4LXdpZHRoOiA1NmVtKSB7XG5cbiAgICAucG9ydGFsX19ncmlkIHtcbiAgICAgICAgLS1jb2x1bW5zOiAyO1xuICAgIH1cblxufVxuXG5AY29udGFpbmVyIHBvcnRhbCAobWF4LXdpZHRoOiAzN2VtKSB7XG5cbiAgICAucG9ydGFsX19ncmlkIHtcbiAgICAgICAgLS1jb2x1bW5zOiAxO1xuICAgIH1cblxufVxuXG5AY29udGFpbmVyIHBvcnRhbC1pdGVtIChtYXgtd2lkdGg6IDIwZW0pIHtcblxuICAgIC5wb3J0YWwgLmxpbmsge1xuXG4gICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA0MDBweCkge1xuXG4gICAgLnBvcnRhbCAubGluayB7XG5cbiAgICAgICAgJl9faW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMS4xNWVtIDEuMjVlbSAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENhcmRzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLmNhcmRzIHtcbiAgICBtYXJnaW46IDJlbSAwO1xuICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAmX19zbGlkZXIge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICAmOm5vdCg6aGFzKC5zd2lwZXItcGFnaW5hdGlvbi1sb2NrKSkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zd2lwZXItd3JhcHBlciB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgICAgICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2dyaWQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogdmFyKC0tZ2FwLXkpIHZhcigtLWdhcC14KTtcblxuICAgICAgICAmLmNhcmRzX19ncmlkLS10d28tY29sdW1ucyB7XG4gICAgICAgICAgICAtLWdhcC15OiA2ZW07XG4gICAgICAgICAgICAtLWdhcC14OiA0ZW07XG4gICAgICAgICAgICAtLWNvbHVtbnM6IDI7XG5cbiAgICAgICAgICAgICY6bm90KC5jYXJkc19fZ3JpZC0tYWxpZ24tdG9wKSB7XG4gICAgICAgICAgICAgICAgLS1nYXAteTogOGVtO1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDV2dztcblxuICAgICAgICAgICAgICAgIC5jYXJkIHtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgybisyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDV2dywgMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmNhcmRzX19ncmlkLS10aHJlZS1jb2x1bW5zIHtcbiAgICAgICAgICAgIC0tZ2FwLXk6IDVlbTtcbiAgICAgICAgICAgIC0tZ2FwLXg6IDNlbTtcbiAgICAgICAgICAgIC0tY29sdW1uczogMztcblxuICAgICAgICAgICAgJjpub3QoLmNhcmRzX19ncmlkLS1hbGlnbi10b3ApIHtcbiAgICAgICAgICAgICAgICAtLWdhcC15OiA2ZW07XG5cbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTB2dztcblxuICAgICAgICAgICAgICAgIC5jYXJkIHtcblxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbisyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIuNXZ3LCAwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXZ3LCAwKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDk5LjklIC8gdmFyKC0tY29sdW1ucykgLSAodmFyKC0tZ2FwLXgpICogKHZhcigtLWNvbHVtbnMpIC0gMSkgLyB2YXIoLS1jb2x1bW5zKSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQge1xuICAgICAgICBjb250YWluZXItbmFtZTogY2FyZHMtaXRlbTtcbiAgICAgICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWJvZHktYmcpO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAuMWVtIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXMgZWFzZS1vdXQ7XG5cbiAgICAgICAgJjpoYXMoLmNhcmRfX2xpbmspOmhvdmVyLFxuICAgICAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIC4xZW0gdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhhcyguY2FyZF9fbGluayk6YWN0aXZlIHtcbiAgICAgICAgICAgIHRvcDogMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fbGluayB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgICAgaW5zZXQ6IDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcblxuICAgICAgICAgICAgICAgICYgfiAuY2FyZF9faW1hZ2Uge1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYgPiBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgfiAuY2FyZF9fY29udGVudCAuY2FyZF9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAuMmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxLjVlbSAxLjVlbSAwIDA7XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIC01ZW0gMTBlbSAjMDAwO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2Utb3V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmID4gaW1nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzLzI7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLW91dDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xvZ28ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIGJvdHRvbTogMmVtO1xuICAgICAgICAgICAgbGVmdDogMmVtO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogM2VtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMy8xO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBib3R0b20gbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2xhYmVsIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBib3R0b206IDJlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDRlbSk7XG4gICAgICAgICAgICBwYWRkaW5nOiAuMzVlbSAxZW0gLjI1ZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxLjVlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgQGluY2x1ZGUgdGV4dC1ub3dyYXA7XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICBnYXA6IDFlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IE1heCgxLjVlbSwgNiUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogLjNlbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sLXByaW0pICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX3N1YnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICZfX2Rlc2NyaXB0aW9uIHt9XG5cbiAgICAgICAgJl9fbWV0YSB7XG4gICAgICAgICAgICBtYXJnaW46IC0uNWVtIDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4bWFyZ2luO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fYXV0aG9yIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgTWF4KDEuNWVtLCA2JSkgTWF4KDEuNWVtLCA2JSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDEyMDBweCkge1xuXG4gICAgLmNhcmRzIHtcblxuICAgICAgICAmX19ncmlkIHtcblxuICAgICAgICAgICAgJi5jYXJkc19fZ3JpZC0tdHdvLWNvbHVtbnMsXG4gICAgICAgICAgICAmLmNhcmRzX19ncmlkLS10aHJlZS1jb2x1bW5zIHtcbiAgICAgICAgICAgICAgICAtLWdhcC15OiA1ZW07XG4gICAgICAgICAgICAgICAgLS1nYXAteDogM2VtO1xuXG4gICAgICAgICAgICAgICAgJjpub3QoLmNhcmRzX19ncmlkLS1hbGlnbi10b3ApIHtcbiAgICAgICAgICAgICAgICAgICAgLS1nYXAteTogNmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jYXJkc19fZ3JpZC0tdGhyZWUtY29sdW1ucyB7XG4gICAgICAgICAgICAgICAgLS1jb2x1bW5zOiAyO1xuXG4gICAgICAgICAgICAgICAgJjpub3QoLmNhcmRzX19ncmlkLS1hbGlnbi10b3ApIHtcblxuICAgICAgICAgICAgICAgICAgICAuY2FyZCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDNuKzMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDV2dywgMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogOTkxcHgpIHtcblxuICAgIC5jYXJkcyB7XG5cbiAgICAgICAgJl9fZ3JpZCB7XG5cbiAgICAgICAgICAgICYuY2FyZHNfX2dyaWQtLXR3by1jb2x1bW5zLFxuICAgICAgICAgICAgJi5jYXJkc19fZ3JpZC0tdGhyZWUtY29sdW1ucyB7XG4gICAgICAgICAgICAgICAgLS1nYXAteTogNGVtO1xuICAgICAgICAgICAgICAgIC0tZ2FwLXg6IDJlbTtcblxuICAgICAgICAgICAgICAgICY6bm90KC5jYXJkc19fZ3JpZC0tYWxpZ24tdG9wKSB7XG4gICAgICAgICAgICAgICAgICAgIC0tZ2FwLXk6IDVlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNzY3cHgpIHtcblxuICAgIC5jYXJkcyB7XG5cbiAgICAgICAgJl9fZ3JpZCB7XG5cbiAgICAgICAgICAgICYuY2FyZHNfX2dyaWQtLXR3by1jb2x1bW5zLFxuICAgICAgICAgICAgJi5jYXJkc19fZ3JpZC0tdGhyZWUtY29sdW1ucyB7XG4gICAgICAgICAgICAgICAgLS1nYXAteTogNnZ3O1xuICAgICAgICAgICAgICAgIC0tY29sdW1uczogMTtcblxuICAgICAgICAgICAgICAgICY6bm90KC5jYXJkc19fZ3JpZC0tYWxpZ24tdG9wKSB7XG4gICAgICAgICAgICAgICAgICAgIC0tZ2FwLXk6IDZ2dztcblxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AY29udGFpbmVyIGNhcmRzLWl0ZW0gKG1heC13aWR0aDogMzBlbSkge1xuXG4gICAgLmNhcmRzIHtcblxuICAgICAgICAuY2FyZCB7XG5cbiAgICAgICAgICAgICZfX2xvZ28gaW1nIHtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDIvMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fbGFiZWwge1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMS41ZW07XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gM2VtKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2Rlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44NzVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufSIsIkBtaXhpbiB0ZXh0LW5vd3JhcCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufSIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENhc2UgZGV0YWlsc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi5jYXNlLWRldGFpbHMge1xuICAgIGNvbnRhaW5lci1uYW1lOiBjYXNlLWRldGFpbHM7XG4gICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuICAgIG1hcmdpbjogM2VtIDA7XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICZfX2dyaWQge1xuICAgICAgICAtLWdhcC15OiAxLjVlbTtcbiAgICAgICAgLS1nYXAteDogM2VtO1xuICAgICAgICAtLWNvbHVtbnM6IDI7XG5cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBnYXA6IHZhcigtLWdhcC15KSB2YXIoLS1nYXAteCk7XG5cbiAgICAgICAgLmRldGFpbCB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg5OS45JSAvIHZhcigtLWNvbHVtbnMpIC0gKHZhcigtLWdhcC14KSAqICh2YXIoLS1jb2x1bW5zKSAtIDEpIC8gdmFyKC0tY29sdW1ucykpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kZXRhaWwge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41ZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IC4xZW0gc29saWQgdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuXG4gICAgICAgICZfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VidGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luOiAuNWVtIDAgMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC10ZXh0KTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sLXByaW0pICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBjb250YWluZXIgY2FzZS1kZXRhaWxzIChtYXgtd2lkdGg6IDM3ZW0pIHtcblxuICAgIC5jYXNlLWRldGFpbHNfX2dyaWQge1xuICAgICAgICAtLWNvbHVtbnM6IDE7XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDQ4MHB4KSB7XG5cbiAgICAuY2FzZS1kZXRhaWxzIHtcblxuICAgICAgICAmX19ncmlkIHtcbiAgICAgICAgICAgIC0tZ2FwLXk6IDFlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWwge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuIiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgVGVzdGltb25pYWxzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnRlc3RpbW9uaWFscyB7XG5cbiAgICAmLm5hcnJvdyB7XG5cbiAgICAgICAgLnRlc3RpbW9uaWFsc19fc2xpZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IE1heCgzdncsIDJlbSkgTWF4KDV2dywgMmVtKTtcblxuICAgICAgICAgICAgJjpub3QoOmhhcyguc3dpcGVyLXBhZ2luYXRpb24tbG9jaykpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygyZW0gKyBNYXgoM3Z3LCAyZW0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NsaWRlciB7XG4gICAgICAgIHBhZGRpbmc6IE1heCg0dncsIDJlbSkgTWF4KDh2dywgMmVtKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMmVtO1xuICAgICAgICBib3JkZXI6IC4xZW0gc29saWQgdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtYm9keS1iZyk7XG5cbiAgICAgICAgJjpub3QoOmhhcyguc3dpcGVyLXBhZ2luYXRpb24tbG9jaykpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDNlbSArIE1heCg0dncsIDJlbSkpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRlc3RpbW9uaWFsc19fc2xpZGVyIHtcblxuICAgICAgICAudGVzdGltb25pYWwge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fYXV0aG9yIHtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgICYtcGhvdG8ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMy41ZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1kZXRhaWxzIHtcblxuICAgICAgICAgICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLW5hbWUsXG4gICAgICAgICAgICAgICAgJi1wb3NpdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZXN0aW1vbmlhbCB7XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS42MThlbTsgLy8gdGhlIGdvbGRlbiByYXRpb1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcIic7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGU6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnXCInO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2F1dGhvciB7XG4gICAgICAgICAgICBtYXJnaW46IDJlbSAwIDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMS41ZW07XG5cbiAgICAgICAgICAgICYtcGhvdG8ge1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDVlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLWRldGFpbHMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi1uYW1lIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYtcG9zaXRpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogLjI1ZW0gMCAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC1saWdodCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjE4ZW07IC8vIHRoZSBnb2xkZW4gcmF0aW9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNjc1cHgpIHtcblxuICAgIC50ZXN0aW1vbmlhbHMge1xuXG4gICAgICAgIC50ZXN0aW1vbmlhbCB7XG5cbiAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2F1dGhvciB7XG5cbiAgICAgICAgICAgICAgICAmLXBob3RvIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDRlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi1wb3NpdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxuICAgIC50ZXN0aW1vbmlhbHMge1xuXG4gICAgICAgIC50ZXN0aW1vbmlhbCB7XG5cbiAgICAgICAgICAgICZfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19hdXRob3Ige1xuXG4gICAgICAgICAgICAgICAgJi1waG90byB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzLjVlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLXBvc2l0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBNYXN0ZXJzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLm1hc3RlcnMge1xuICAgIGNvbnRhaW5lci1uYW1lOiBtYXN0ZXJzO1xuICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgICBtYXJnaW46IHZhcigtLXNtYWxsLXNwYWNpbmcpIDA7XG4gICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICZfX2dyaWQge1xuICAgICAgICAtLWdhcC15OiA2ZW07XG4gICAgICAgIC0tZ2FwLXg6IDNlbTtcbiAgICAgICAgLS1jb2x1bW5zOiAzO1xuXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiB2YXIoLS1nYXAteSkgdmFyKC0tZ2FwLXgpO1xuXG4gICAgICAgIC5tYXN0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoOTkuOSUgLyB2YXIoLS1jb2x1bW5zKSAtICh2YXIoLS1nYXAteCkgKiAodmFyKC0tY29sdW1ucykgLSAxKSAvIHZhcigtLWNvbHVtbnMpKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFzdGVyIHtcbiAgICAgICAgLS1ib3JkZXItcmFkaXVzOiAxLjVlbTtcblxuICAgICAgICBjb250YWluZXItbmFtZTogbWFzdGVycy1pdGVtO1xuICAgICAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtYm9keS1iZyk7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIC4xZW0gdmFyKC0tY29sLWdyZXktbGlnaHQpO1xuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMy80O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMCAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAgICAgICBwYWRkaW5nOiBNYXgoMS4yNWVtLCA4JSk7XG4gICAgICAgIH1cblxuICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAuM2VtO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2wtcHJpbSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzIGVhc2Utb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fc3VidGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luOiAuNWVtIDAgMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQtbGlnaHQpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuODc1ZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBjb250YWluZXIgbWFzdGVycyAobWF4LXdpZHRoOiA1NWVtKSB7XG5cbiAgICAubWFzdGVycyB7XG5cbiAgICAgICAgJl9fZ3JpZCB7XG4gICAgICAgICAgICAtLWdhcC15OiA0ZW07XG4gICAgICAgICAgICAtLWdhcC14OiAyZW07XG4gICAgICAgICAgICAtLWNvbHVtbnM6IDI7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQGNvbnRhaW5lciBtYXN0ZXJzIChtYXgtd2lkdGg6IDM1ZW0pIHtcblxuICAgIC5tYXN0ZXJzIHtcblxuICAgICAgICAmX19ncmlkIHtcbiAgICAgICAgICAgIC0tZ2FwLXk6IDZ2dztcbiAgICAgICAgICAgIC0tZ2FwLXg6IDEuNWVtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBjb250YWluZXIgbWFzdGVycy1pdGVtIChtYXgtd2lkdGg6IDIwZW0pIHtcblxuICAgIC5tYXN0ZXJzIHtcblxuICAgICAgICAubWFzdGVyIHtcblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBjb250YWluZXIgbWFzdGVycy1pdGVtIChtYXgtd2lkdGg6IDE1ZW0pIHtcblxuICAgIC5tYXN0ZXJzIHtcblxuICAgICAgICAubWFzdGVyIHtcblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fc3VidGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNjc1cHgpIHtcblxuICAgIC5tYXN0ZXJzIHtcblxuICAgICAgICAubWFzdGVyIHtcbiAgICAgICAgICAgIC0tYm9yZGVyLXJhZGl1czogMWVtO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBWYWNhbmNpZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG4udmFjYW5jaWVzIHtcblxuICAgICZfX2xpc3Qge1xuXG4gICAgICAgIC52YWNhbmN5IHtcbiAgICAgICAgICAgIGNvbnRhaW5lci1uYW1lOiB2YWNhbmNpZXMtaXRlbTtcbiAgICAgICAgICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAxLjVlbSAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleG1hcmdpbjtcblxuICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgICAgIC52YWNhbmN5IHtcblxuICAgICAgICAgICAgICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2wtZ3JleS14LWxpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIC4xZW0gdmFyKC0tY29sLWdyZXkteC1saWdodCk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19pbm5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICBnYXA6IC41ZW0gMmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuMzVlbSAxLjVlbSAxLjI1ZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMWVtO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ib2R5LWJnKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sLXRleHQpO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIC4xNWVtIHZhcigtLWNvbC1ncmV5LWxpZ2h0KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cyBlYXNlLW91dDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTAwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fd3JhcC1jb250YWluZXIge1xuICAgICAgICAgICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGdhcDogLjI1ZW0gMmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19ob3VycyB7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICZfX2RhdGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC14LWxpZ2h0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fYXJyb3cge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC14LWxpZ2h0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBVU1BzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuLnVzcHMge1xuICAgIGNvbnRhaW5lci1uYW1lOiB1c3BzO1xuICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgICBtYXJnaW46IDNlbSAwO1xuICAgIEBpbmNsdWRlIGZsZXhtYXJnaW47XG5cbiAgICAmX19ncmlkIHtcbiAgICAgICAgLS1nYXAteTogNGVtO1xuICAgICAgICAtLWdhcC14OiA0ZW07XG5cbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiB2YXIoLS1nYXAteSkgdmFyKC0tZ2FwLXgpO1xuXG4gICAgICAgICYudXNwc19fZ3JpZC0tdHdvLWNvbHVtbnMgLnVzcCB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1nYXAteCkqMS8yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYudXNwc19fZ3JpZC0tdGhyZWUtY29sdW1ucyAudXNwIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIHZhcigtLWdhcC14KSoyLzMpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi51c3BzX19ncmlkLS1mb3VyLWNvbHVtbnMge1xuICAgICAgICAgICAgLS1nYXAteDogM2VtO1xuXG4gICAgICAgICAgICAudXNwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygyNSUgLSB2YXIoLS1nYXAteCkqMy80KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC51c3Age1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMS41ZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgJl9faWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDIuNWVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAyLjVlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbC1ncmV5LXgtbGlnaHQpO1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbC1wcmltKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY2hlY2sge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sLXByaW0pO1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LXNpemU6IC41cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIC41ZW0gdmFyKC0tY29sLWJvZHktYmcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGdhcDogMWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIH1cblxuICAgICAgICAmX19kZXNjcmlwdGlvbiB7fVxuXG4gICAgICAgICZfX3JlYWQtbW9yZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogMTIwMHB4KSB7XG5cbiAgICAudXNwcyB7XG5cbiAgICAgICAgJl9fZ3JpZCB7XG5cbiAgICAgICAgICAgICYudXNwc19fZ3JpZC0tZm91ci1jb2x1bW5zIHtcbiAgICAgICAgICAgICAgICAtLWdhcC14OiA0ZW07XG5cbiAgICAgICAgICAgICAgICAudXNwIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gdmFyKC0tZ2FwLXgpKjEvMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDk5MXB4KSB7XG5cbiAgICAudXNwcyB7XG5cbiAgICAgICAgJl9fZ3JpZCB7XG5cbiAgICAgICAgICAgICYudXNwc19fZ3JpZC0tdGhyZWUtY29sdW1ucyAudXNwIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSB2YXIoLS1nYXAteCkqMS8yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA1ODBweCkge1xuXG4gICAgLnVzcHMge1xuXG4gICAgICAgICZfX2dyaWQge1xuICAgICAgICAgICAgLS1nYXAteTogM2VtO1xuXG4gICAgICAgICAgICAmLnVzcHNfX2dyaWQtLXR3by1jb2x1bW5zIC51c3AsXG4gICAgICAgICAgICAmLnVzcHNfX2dyaWQtLXRocmVlLWNvbHVtbnMgLnVzcCxcbiAgICAgICAgICAgICYudXNwc19fZ3JpZC0tZm91ci1jb2x1bW5zIC51c3Age1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnVzcCB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAmX19pY29uIHtcbiAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJl9fY29udGVudCB7XG4gICAgICAgICAgICAgICAgZ2FwOiAuNWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmX19yZWFkLW1vcmUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC41ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEJvZHkgY2xhc3Nlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbmJvZHkge1xuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgSW50ZXJuZXQgRXhwbG9yZXIgZml4ZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG5ib2R5LmJyb3dzZXItaWUge1xuXG59IiwiLypcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgaU9TIGZpeGVzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cblxuYm9keS5icm93c2VyLWlvcyB7XG5cbiAgICAuc2VjdGlvbi5zZWN0aW9uLS1mdWxsIC5zZWN0aW9uX19pbm5lciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gICAgfVxuXG4gICAgLnNlY3Rpb25fX2JhY2tncm91bmQge1xuXG4gICAgICAgICYuc2VjdGlvbl9fYmFja2dyb3VuZC0taW1hZ2Uuc2VjdGlvbl9fYmFja2dyb3VuZC0tZml4ZWQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblx0TWVkaWEgcXVlcmllc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbkBpbXBvcnQgJ21lZGlhcXVlcmllcy8xNDAwJztcbkBpbXBvcnQgJ21lZGlhcXVlcmllcy8xMjAwJztcbkBpbXBvcnQgJ21lZGlhcXVlcmllcy85OTEnO1xuQGltcG9ydCAnbWVkaWFxdWVyaWVzLzc2Nyc7XG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMvNjc1JztcbkBpbXBvcnQgJ21lZGlhcXVlcmllcy81ODAnO1xuQGltcG9ydCAnbWVkaWFxdWVyaWVzLzQ4MCc7XG5AaW1wb3J0ICdtZWRpYXF1ZXJpZXMvNDAwJztcbkBpbXBvcnQgJ21lZGlhcXVlcmllcy8zMjAnOyIsIi8qKlxuKiBMYXJnZSBEZXZpY2VzLCBXaWRlIFNjcmVlbnNcbioqL1xuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyAxNDAwcHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogMTQwMHB4KSB7XG5cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgbGFyZ2VyIHRoYW4gMTQwMHB4ID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAxNDAxcHgpIHtcblxufSIsIi8qKlxuKiBMYXJnZSBEZXZpY2VzLCBXaWRlIFNjcmVlbnNcbioqL1xuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyAxMjAwcHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogMTIwMHB4KSB7XG5cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgbGFyZ2VyIHRoYW4gMTIwMHB4ID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAxMjAxcHgpIHtcblxufSIsIi8qKlxuKiBNZWRpdW0gRGV2aWNlcywgRGVza3RvcHNcbioqL1xuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyA5OTFweCBvciBzbWFsbGVyID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA5OTFweCkge1xuXG59XG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIGxhcmdlciB0aGFuIDk5MXB4ID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA5OTJweCkge1xuXG59IiwiLyoqXG4qIFNtYWxsIERldmljZXMsIFRhYmxldHNcbioqL1xuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyA3NjdweCBvciBzbWFsbGVyID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA3NjdweCkge1xuXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuXG4gICAgICAgIGJyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgbGFyZ2VyIHRoYW4gNzY3cHggPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDc2OHB4KSB7XG5cbn0iLCIvKipcbiogU21hbGwgRGV2aWNlcywgVGFibGV0c1xuKiovXG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIDY3NXB4IG9yIHNtYWxsZXIgPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDY3NXB4KSB7XG5cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgbGFyZ2VyIHRoYW4gNjc1cHggPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDY3NnB4KSB7XG5cbn0iLCIvKipcbiogU21hbGwgRGV2aWNlcywgVGFibGV0c1xuKiovXG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIDU4MHB4IG9yIHNtYWxsZXIgPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDU4MHB4KSB7XG5cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgbGFyZ2VyIHRoYW4gNTgwcHggPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDU4MXB4KSB7XG5cbn0iLCIvKipcbiogRXh0cmEgU21hbGwgRGV2aWNlcywgUGhvbmVzXG4qKi9cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgNDgwcHggb3Igc21hbGxlciA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDgwcHgpIHtcblxufVxuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyBsYXJnZXIgdGhhbiA0ODBweCA9PSAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNDgxcHgpIHtcblxufSIsIi8qKlxuKiBFeHRyYSBTbWFsbCBEZXZpY2VzLCBQaG9uZXNcbioqL1xuXG4vKiA9PSBXaGVuIHNjcmVlbiBpcyA0MDBweCBvciBzbWFsbGVyID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA0MDBweCkge1xuXG59XG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIGxhcmdlciB0aGFuIDQwMHB4ID09ICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiA0MDFweCkge1xuXG59IiwiLyoqXG4qIEV4dHJhIFNtYWxsIERldmljZXMsIFBob25lc1xuKiovXG5cbi8qID09IFdoZW4gc2NyZWVuIGlzIDMyMHB4IG9yIHNtYWxsZXIgPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDMyMHB4KSB7XG5cbn1cblxuLyogPT0gV2hlbiBzY3JlZW4gaXMgbGFyZ2VyIHRoYW4gMzIwcHggPT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDMyMXB4KSB7XG5cbn0iLCIvKlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTdHlsZXMgaWYgbG9nZ2VkIGluIGFuZCBhZG1pbi1iYXIgdmlzaWJsZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbjpyb290IHtcbiAgICAtLWFkbWluLWJhci1vZmZzZXQ6IDMycHg7XG59XG5cbmJvZHkubG9nZ2VkLWluLmFkbWluLWJhciB7XG5cbiAgICAuc3RpY2t5LW1hc3RoZWFkLFxuICAgIC5tZW51LWJhcixcbiAgICAubWVudS1iYXItc2hhZG93LFxuICAgIC5zY3JvbGwtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgdG9wOiB2YXIoLS1hZG1pbi1iYXItb2Zmc2V0KTtcbiAgICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MnB4KSB7XG5cbiAgICA6cm9vdCB7XG4gICAgICAgIC0tYWRtaW4tYmFyLW9mZnNldDogNDZweDtcbiAgICB9XG5cbn1cbiIsIi8qXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIERhcmsgbW9kZSB0aGVtZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbi8vIEF1dG9tYXRpYyBkYXJrIG1vZGVcbi8vIOKdl++4jyBrZWVwIHRoZSBydWxlcyBpbiBzeW5jIHdpdGggdGhlIG1hbnVhbCBkYXJrIG1vZGUgYmVsb3chXG5AbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG5cbiAgICA6cm9vdCB7XG4gICAgICAgIC0tY29sLXRleHQtaHNsOiAyMDBkZWcsIDE1JSwgOTAlO1xuICAgICAgICAtLWNvbC10ZXh0LWRhcms6IGhzbCgyMDBkZWcsIDE1JSwgOTUlKTtcbiAgICAgICAgLS1jb2wtdGV4dC14LWRhcms6ICNmZmY7XG4gICAgICAgIC0tY29sLXRleHQtbGlnaHQ6IGhzbCgyMDBkZWcsIDEyLjUlLCA3MCUpO1xuICAgICAgICAtLWNvbC10ZXh0LXgtbGlnaHQ6IGhzbCgyMDBkZWcsIDEwJSwgNTAlKTtcblxuICAgICAgICAtLWNvbC1ncmV5OiBoc2woMjAwLCAxNSUsIDMwJSk7XG4gICAgICAgIC0tY29sLWdyZXktZGFyazogaHNsKDIwMCwgMTUlLCAzNSUpO1xuICAgICAgICAtLWNvbC1ncmV5LXgtZGFyazogaHNsKDIwMCwgMTUlLCA0MCUpO1xuICAgICAgICAtLWNvbC1ncmV5LWxpZ2h0OiBoc2woMjAwLCAxNSUsIDI1JSk7XG4gICAgICAgIC0tY29sLWdyZXkteC1saWdodDogaHNsKDIwMCwgMTUlLCAyMCUpO1xuXG4gICAgICAgIC0tY29sLWJvZHktYmctaHNsOiAyMDBkZWcsIDE1JSwgMTUlO1xuICAgICAgICAtLWNvbC1tZW51LWJhci1iZzogaHNsKDIwMGRlZywgMTUlLCAxMiUpO1xuICAgIH1cblxufVxuXG4vLyBNYW51YWwgZGFyayBtb2RlXG4vLyDinZfvuI8ga2VlcCB0aGUgcnVsZXMgaW4gc3luYyB3aXRoIHRoZSBhdXRvbWF0aWMgZGFyayBtb2RlIGFib3ZlIVxuOnJvb3RbZGF0YS10aGVtZT1cImRhcmtcIl0ge1xuICAgIC0tY29sLXRleHQtaHNsOiAyMDBkZWcsIDE1JSwgOTAlO1xuICAgIC0tY29sLXRleHQtZGFyazogaHNsKDIwMGRlZywgMTUlLCA5NSUpO1xuICAgIC0tY29sLXRleHQteC1kYXJrOiAjZmZmO1xuICAgIC0tY29sLXRleHQtbGlnaHQ6IGhzbCgyMDBkZWcsIDEyLjUlLCA3MCUpO1xuICAgIC0tY29sLXRleHQteC1saWdodDogaHNsKDIwMGRlZywgMTAlLCA1MCUpO1xuXG4gICAgLS1jb2wtZ3JleTogaHNsKDIwMCwgMTUlLCAzMCUpO1xuICAgIC0tY29sLWdyZXktZGFyazogaHNsKDIwMCwgMTUlLCAzNSUpO1xuICAgIC0tY29sLWdyZXkteC1kYXJrOiBoc2woMjAwLCAxNSUsIDQwJSk7XG4gICAgLS1jb2wtZ3JleS1saWdodDogaHNsKDIwMCwgMTUlLCAyNSUpO1xuICAgIC0tY29sLWdyZXkteC1saWdodDogaHNsKDIwMCwgMTUlLCAyMCUpO1xuXG4gICAgLS1jb2wtYm9keS1iZy1oc2w6IDIwMGRlZywgMTUlLCAxNSU7XG4gICAgLS1jb2wtbWVudS1iYXItYmc6IGhzbCgyMDBkZWcsIDE1JSwgMTIlKTtcbn1cblxuW2RhdGEtdGhlbWU9XCJsaWdodFwiXSBbZGF0YS1oaWRlLWlmLXRoZW1lLWlzPVwibGlnaHRcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuW2RhdGEtdGhlbWU9XCJkYXJrXCJdIHtcblxuICAgIFtkYXRhLWhpZGUtaWYtdGhlbWUtaXM9XCJkYXJrXCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5sZWFmbGV0LWxheWVyIHtcbiAgICAgICAgZmlsdGVyOiBpbnZlcnQoMTAwJSkgaHVlLXJvdGF0ZSgxODBkZWcpIHNhdHVyYXRlKDI1JSkgYnJpZ2h0bmVzcygxMjUlKSBjb250cmFzdCg4MCUpO1xuICAgIH1cblxuICAgIC5sZWFmbGV0LWJhcixcbiAgICAubGVhZmxldC1yZXNldC12aWV3IHtcbiAgICAgICAgZmlsdGVyOiBpbnZlcnQoMTAwJSkgaHVlLXJvdGF0ZSgxODBkZWcpIGJyaWdodG5lc3MoOTUlKSBjb250cmFzdCg4MCUpO1xuICAgIH1cblxuICAgIC5sZWFmbGV0LWNvbnRyb2wtYXR0cmlidXRpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43KTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2wtdGV4dC1saWdodCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFwLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3RoZW1lL21hcC1iYWNrZ3JvdW5kLWRhcmsuanBnJyk7XG4gICAgfVxuXG4gICAgLmxvZ29zX19ncmlkIHtcblxuICAgICAgICAubG9nb19faW1hZ2UgaW1nIHtcbiAgICAgICAgICAgIGZpbHRlcjogY29udHJhc3QoMCkgYnJpZ2h0bmVzcygwLjI1KSBpbnZlcnQoMSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */