/*!****************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./vendor/symfony/ux-toggle-password/assets/dist/style.min.css ***!
  \****************************************************************************************************************************************************/
.toggle-password-container{position:relative}.toggle-password-icon{width:1rem;height:1rem}.toggle-password-button{background-color:#0000;border:none;flex-direction:row;place-items:center;column-gap:.25rem;height:1rem;font-size:.875rem;line-height:1.25rem;display:flex;position:absolute;top:-1.25rem;right:.5rem}
/*!***********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/swiper/swiper.css ***!
  \***********************************************************************************************************************/
/**
 * Swiper 12.1.3
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2026 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 24, 2026
 */

:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}
: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;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}
.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}
.swiper-horizontal {
  touch-action: pan-y;
}
.swiper-vertical {
  touch-action: pan-x;
}
.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}
.swiper-slide-invisible-blank {
  visibility: hidden;
}
/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}
.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}
/* 3D Effects */
.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}
.swiper-3d {
  perspective: 1200px;
  .swiper-slide,
  .swiper-cube-shadow {
    transform-style: preserve-3d;
  }
}

/* CSS Mode */
.swiper-css-mode {
  > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none; /* For Firefox */
    -ms-overflow-style: none; /* For Internet Explorer and Edge */
    &::-webkit-scrollbar {
      display: none;
    }
  }
  > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
  }
  &.swiper-horizontal {
    > .swiper-wrapper {
      scroll-snap-type: x mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-slides-offset-before);
      scroll-margin-inline-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-inline-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-vertical {
    > .swiper-wrapper {
      scroll-snap-type: y mandatory;
    }
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-slides-offset-before);
      scroll-margin-block-start: var(--swiper-slides-offset-before);
    }
    > .swiper-wrapper > .swiper-slide:last-child {
      margin-block-end: var(--swiper-slides-offset-after);
    }
  }
  &.swiper-free-mode {
    > .swiper-wrapper {
      scroll-snap-type: none;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: none;
    }
  }
  &.swiper-centered {
    > .swiper-wrapper::before {
      content: '';
      flex-shrink: 0;
      order: 9999;
    }
    > .swiper-wrapper > .swiper-slide {
      scroll-snap-align: center center;
      scroll-snap-stop: always;
    }
  }
  &.swiper-centered.swiper-horizontal {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-inline-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      height: 100%;
      min-height: 1px;
      width: var(--swiper-centered-offset-after);
    }
  }
  &.swiper-centered.swiper-vertical {
    > .swiper-wrapper > .swiper-slide:first-child {
      margin-block-start: var(--swiper-centered-offset-before);
    }
    > .swiper-wrapper::before {
      width: 100%;
      min-width: 1px;
      height: var(--swiper-centered-offset-after);
    }
  }
}

/* Slide styles start */
/* 3D Shadows */
.swiper-3d {
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom,
  .swiper-slide-shadow,
  .swiper-slide-shadow-left,
  .swiper-slide-shadow-right,
  .swiper-slide-shadow-top,
  .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
  }
  .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
  }
  .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
  .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
  }
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}
.swiper:not(.swiper-watch-progress),
.swiper-watch-progress .swiper-slide-visible {
  .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
  }
}
.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}
.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}
@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* Slide styles end */

/*!***********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/swiper/modules/navigation.css ***!
  \***********************************************************************************************************************************/
:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 4px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}
.swiper-button-prev,
.swiper-button-next {
  position: absolute;

  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);

  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  &.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
  }
  &.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
  }
  .swiper-navigation-disabled & {
    display: none !important;
  }

  ::slotted(svg),
  svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
    transform-origin: center;
    fill: currentColor;
    pointer-events: none;
  }
}

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

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
}
.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto;
  ::slotted(.swiper-navigation-icon),
  .swiper-navigation-icon {
    transform: rotate(180deg);
  }
}
.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto;
}
.swiper-horizontal {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    top: var(--swiper-navigation-top-offset, 50%);
    margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
    margin-left: 0;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 4px);
    right: auto;
  }
  .swiper-button-next,
  & ~ .swiper-button-next,
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 4px);
    left: auto;
  }
  .swiper-button-prev,
  & ~ .swiper-button-prev,
  &.swiper-rtl .swiper-button-next,
  &.swiper-rtl ~ .swiper-button-next {
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(180deg);
    }
  }
  &.swiper-rtl .swiper-button-prev,
  &.swiper-rtl ~ .swiper-button-prev {
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(0deg);
    }
  }
}
.swiper-vertical {
  .swiper-button-prev,
  .swiper-button-next,
  ~ .swiper-button-prev,
  ~ .swiper-button-next {
    left: var(--swiper-navigation-top-offset, 50%);
    right: auto;
    margin-left: calc(0px - (var(--swiper-navigation-size) / 2));
    margin-top: 0;
  }
  .swiper-button-prev,
  ~ .swiper-button-prev {
    top: var(--swiper-navigation-sides-offset, 4px);
    bottom: auto;
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(-90deg);
    }
  }
  .swiper-button-next,
  ~ .swiper-button-next {
    bottom: var(--swiper-navigation-sides-offset, 4px);
    top: auto;
    ::slotted(.swiper-navigation-icon),
    .swiper-navigation-icon {
      transform: rotate(90deg);
    }
  }
}

/*!***********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./node_modules/swiper/modules/pagination.css ***!
  \***********************************************************************************************************************************/
:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
  &.swiper-pagination-hidden {
    opacity: 0;
  }
  .swiper-pagination-disabled > &,
  &.swiper-pagination-disabled {
    display: none !important;
  }
}
/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}
/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
  .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
  }
  .swiper-pagination-bullet-active {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-main {
    transform: scale(1);
  }
  .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
  }
  .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
  }
  .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
  }
}
.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
  button& {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    appearance: none;
  }
  .swiper-pagination-clickable & {
    cursor: pointer;
  }

  &:only-child {
    display: none !important;
  }
}
.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
  .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block;
  }
  &.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    .swiper-pagination-bullet {
      display: inline-block;
      transition:
        200ms transform,
        200ms top;
    }
  }
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-horizontal.swiper-pagination-bullets {
  .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
  }
  &.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    .swiper-pagination-bullet {
      transition:
        200ms transform,
        200ms left;
    }
  }
}
.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition:
    200ms transform,
    200ms right;
}
/* Fraction */
.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}
/* Progress */
.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
  .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
  }
  .swiper-rtl & .swiper-pagination-progressbar-fill {
    transform-origin: right top;
  }
  .swiper-horizontal > &,
  &.swiper-pagination-horizontal,
  .swiper-vertical > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
  }
  .swiper-vertical > &,
  &.swiper-pagination-vertical,
  .swiper-horizontal > &.swiper-pagination-progressbar-opposite,
  &.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
  }
}
.swiper-pagination-lock {
  display: none;
}

/*!********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/app.css ***!
  \********************************************************************************************************************/
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Configuration de base */
a{
    text-decoration: none;
    color: var(--black1);
}
p{
    margin: 0;
}

/* --------------------- */


body {
    background-color: var(--white1);
}
.middle-container{
    height: 100vh;
}

/* NOTIF SWAL */

.swal2-show.notif-custom{
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
}
.notif-custom .swal2-icon{
    display: flex;
    margin: 0em;
    scale: 0.5;
}

/* ---------- */

/* Product page scoped styles */
.shop-product-page {
    --shop-accent: #34d16c;
    --shop-accent-soft: #9ce7b7;
    --shop-text: #e6e6e6;
    --shop-muted: #a3a3a3;
    --shop-card: rgba(255, 255, 255, 0.04);
    --shop-border: rgba(255, 255, 255, 0.1);
    min-height: 100vh;
    background: radial-gradient(1200px 600px at 20% 0%, #1a1a1a 0%, #0f0f0f 50%, #0b0b0b 100%);
    color: var(--shop-text);
}

.shop-product-page .shop-hero-card,
.shop-product-page .shop-info-card,
.shop-product-page .shop-panel {
    background: var(--shop-card);
    border: 1px solid var(--shop-border);
    border-radius: 18px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(6px);
}

.shop-product-page .shop-cover {
    height: 440px;
    position: relative;
    border-radius: 14px;
    background: linear-gradient(130deg, #151515 0%, #0f0f0f 55%, #121a14 100%);
    border: 1px dashed rgba(255, 255, 255, 0.2);
    overflow: hidden;
}

.shop-product-page .shop-availability-badge {
    position: absolute;
    top: .75rem;
    left: .75rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-size: .78rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #bdf2cf;
    background: rgba(52, 209, 108, 0.14);
    border: 1px solid rgba(52, 209, 108, 0.45);
    border-radius: 999px;
    padding: .3rem .72rem;
}

.shop-product-page .shop-availability-badge.is-out {
    color: #f1f1f1;
    background: rgba(207, 56, 56, 0.85);
    border-color: rgba(255, 142, 142, 0.45);
}

.shop-product-page .shop-cover img {
    width: 100%;
    height: 100%;
    object-fit: scale-down;
    display: block;
}

.shop-product-page .shop-cover i {
    font-size: 2rem;
    color: #9a9a9a;
}

.shop-product-page .shop-pill {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    font-size: .78rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--shop-accent-soft);
    border: 1px solid #2a7947;
    border-radius: 999px;
    background: rgba(52, 209, 108, 0.08);
    padding: .4rem .75rem;
}

.shop-product-page .shop-pill .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--shop-accent);
    box-shadow: 0 0 0 6px rgba(52, 209, 108, 0.14);
}

.shop-product-page .shop-tag {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    color: #d8d8d8;
    background: rgba(255, 255, 255, 0.04);
    padding: .3rem .72rem;
    font-size: .8rem;
}

.shop-product-page .shop-tag--accent {
    border-color: rgba(52, 209, 108, 0.45);
    background: rgba(52, 209, 108, 0.14);
    color: #bdf2cf;
}

.shop-product-page .shop-title {
    font-family: 'Krona One', sans-serif;
    font-size: clamp(1.45rem, 2vw, 2rem);
    line-height: 1.35;
    margin-bottom: .65rem;
}

.shop-product-page .shop-price-box {
    background: linear-gradient(120deg, rgba(52, 209, 108, 0.12) 0%, rgba(255, 255, 255, 0.03) 100%);
    border-radius: 14px;
    border: 1px solid rgba(52, 209, 108, 0.25);
    padding: .95rem 1.1rem;
}

.shop-product-page .shop-price {
    font-size: clamp(1.35rem, 2vw, 1.8rem);
    font-weight: 700;
    color: var(--shop-accent);
}

.shop-product-page .shop-paypal-box {
    margin-top: .65rem;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: .65rem;
}

.shop-product-page .shop-paypal-message {
    min-height: 92px;
}

.shop-product-page .shop-paypal-fallback {
    display: none;
    margin-top: .45rem;
    font-size: .82rem;
    color: var(--shop-muted);
}

.shop-product-page .shop-paypal-fallback.is-visible {
    display: block;
}

.shop-product-page .shop-kv {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .7rem;
}

.shop-product-page .shop-kv div {
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: .7rem .8rem;
    background: rgba(0, 0, 0, 0.2);
}

.shop-product-page .shop-kv span {
    display: block;
    font-size: .74rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--shop-muted);
    margin-bottom: .2rem;
}

.shop-product-page .shop-breadcrumb {
    font-size: .9rem;
    color: var(--shop-muted);
}

.shop-product-page .shop-breadcrumb a {
    color: var(--shop-accent-soft);
    text-decoration: none;
}

.shop-product-page .shop-breadcrumb a:hover {
    text-decoration: underline;
}

.shop-product-page .shop-description {
    color: #d0d0d0;
    line-height: 1.7;
}

.shop-product-page .shop-description h1,
.shop-product-page .shop-description h2,
.shop-product-page .shop-description h3,
.shop-product-page .shop-description h4,
.shop-product-page .shop-description h5,
.shop-product-page .shop-description h6 {
    color: #f3f3f3;
    margin-top: 1rem;
}

.shop-product-page .shop-description p:last-child {
    margin-bottom: 0;
}

.shop-product-page .shop-related-card {
    border-radius: 14px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.03);
    transition: transform .25s ease, box-shadow .25s ease;
}

.shop-product-page .shop-related-thumb {
    aspect-ratio: 4/3;
    border-radius: 10px;
    overflow: hidden;
    background: rgba(0, 0, 0, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.08);
    margin-bottom: .75rem;
}

.shop-product-page .shop-related-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.shop-product-page .shop-related-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.35);
}

.shop-product-page .btn-echo {
    border-radius: 12px;
    background: #34d16c;
    color: #0b0b0b;
    border:0px;
    font-weight: 700;
    padding: .85rem 1rem;
    box-shadow: 0 10px 24px rgba(52, 209, 108, 0.35);
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.shop-product-page .btn-echo:hover {
    background: #2fc161;
    color: #0b0b0b;
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(52, 209, 108, 0.38);
}

.shop-product-page .btn-echo:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(52, 209, 108, 0.28), 0 10px 24px rgba(52, 209, 108, 0.35);
}

.shop-product-page .btn-echo:disabled {
    opacity: .55;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.shop-product-page .btn-shop-secondary {
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: transparent;
    color: #d8d8d8;
}

.shop-product-page .btn-shop-secondary:hover {
    background: rgba(255, 255, 255, 0.06);
    color: #ffffff;
}

.shop-product-page .shop-purchase-card {
    gap: 1rem;
}

.shop-product-page .shop-buy-block {
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 14px;
    background: rgba(0, 0, 0, 0.2);
    padding: .9rem;
}

.shop-product-page .shop-qty-label {
    font-size: .76rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--shop-muted);
    margin-bottom: .35rem;
}

.shop-product-page .shop-qty-row {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.shop-product-page .shop-qty-input {
    width: 96px;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.04);
    color: #f4f4f4;
    padding: .5rem .6rem;
}

/* Checkout page scoped styles */
.shop-checkout-page .shop-checkout-title {
    font-family: 'Krona One', sans-serif;
    font-size: clamp(1.35rem, 2vw, 1.9rem);
}

.shop-checkout-page .shop-checkout-subtitle {
    color: var(--shop-muted);
}

.shop-checkout-page .shop-checkout-step {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    border: 1px solid rgba(52, 209, 108, 0.45);
    background: rgba(52, 209, 108, 0.12);
    color: #bdf2cf;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    padding: .22rem .62rem;
}

.shop-checkout-page .shop-address-card {
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.03);
}

.shop-checkout-page .shop-address-title {
    font-size: .95rem;
    color: #e8e8e8;
    margin-bottom: .65rem;
}

.shop-checkout-page .shop-address-select,
.shop-checkout-page .form-control,
.shop-checkout-page .form-select {
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(255, 255, 255, 0.04);
    color: #f0f0f0;
}

.shop-checkout-page .form-select {
    color-scheme: dark;
}

.shop-checkout-page .form-select option {
    background: #111111;
    color: #f0f0f0;
}

.shop-checkout-page .form-control:focus,
.shop-checkout-page .form-select:focus {
    border-color: rgba(52, 209, 108, 0.62);
    box-shadow: 0 0 0 3px rgba(52, 209, 108, 0.2);
    background: rgba(255, 255, 255, 0.06);
}

.shop-checkout-page .form-label,
.shop-checkout-page .form-check-label {
    color: #dcdcdc;
    font-size: .86rem;
}

.shop-checkout-page .form-check-input {
    width: 1.05rem;
    height: 1.05rem;
    margin-top: .16rem;
    border: 1px solid rgba(255, 255, 255, 0.28);
    background-color: rgba(255, 255, 255, 0.06);
    box-shadow: none;
    accent-color: #34d16c;
    cursor: pointer;
}

.shop-checkout-page .form-check-input:checked {
    border-color: rgba(52, 209, 108, 0.9);
    background-color: #34d16c;
}

.shop-checkout-page .form-check-input:focus {
    border-color: rgba(52, 209, 108, 0.62);
    box-shadow: 0 0 0 3px rgba(52, 209, 108, 0.2);
}

.shop-checkout-page .shop-address-current {
    font-size: .82rem;
    color: #cfcfcf;
    min-height: 36px;
}

.shop-checkout-page .shop-address-hint {
    font-size: .78rem;
    color: var(--shop-muted);
}

.shop-checkout-page .shop-divider {
    border-color: rgba(255, 255, 255, 0.12);
}

.shop-checkout-page .shop-checkout-feedback {
    font-size: .85rem;
    color: #cfcfcf;
}

.shop-checkout-page .shop-checkout-feedback.is-error {
    color: #ffb3b3;
}

.shop-checkout-page .shop-checkout-feedback.is-success {
    color: #bdf2cf;
}

.shop-checkout-page .shop-checkout-sticky {
    display: flex;
    flex-direction: column;
    gap: 1.5em;
}

.shop-checkout-page .shop-checkout-summary {
    width: 100%;
}

@media (min-width: 1200px) {
    .shop-checkout-page .shop-checkout-sticky {
        position: sticky;
        top: 6em;
    }
}

.shop-checkout-page .shop-shipping-option {
    display: flex;
    flex-direction: column;
    gap: .2rem;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.03);
    cursor: pointer;
    min-height: 132px;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.shop-checkout-page .shop-shipping-option input[type="radio"] {
    display:none;
    appearance: none;
    -webkit-appearance: none;
    width: 1.1rem;
    height: 1.1rem;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.35);
    background: rgba(255, 255, 255, 0.06);
    place-content: center;
    margin-bottom: .45rem;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.shop-checkout-page .shop-shipping-option input[type="radio"]::before {
    content: '';
    width: .48rem;
    height: .48rem;
    border-radius: 50%;
    background: #0b0b0b;
    transform: scale(0);
    transition: transform .16s ease;
}

.shop-checkout-page .shop-shipping-option input[type="radio"]:checked {
    border-color: rgba(52, 209, 108, 0.95);
    background: #34d16c;
}

.shop-checkout-page .shop-shipping-option input[type="radio"]:checked::before {
    transform: scale(1);
}

.shop-checkout-page .shop-shipping-option input[type="radio"]:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(52, 209, 108, 0.22);
}

.shop-checkout-page .shop-shipping-option.is-selected {
    border-color: rgba(52, 209, 108, 0.62);
    background: rgba(52, 209, 108, 0.12);
    box-shadow: inset 0 0 0 1px rgba(52, 209, 108, 0.24);
}

.shop-checkout-page .shop-shipping-option:hover {
    border-color: rgba(52, 209, 108, 0.36);
}

.shop-checkout-page .shop-shipping-name {
    color: #f0f0f0;
    font-weight: 600;
}

.shop-checkout-page .shop-shipping-delay {
    color: var(--shop-muted);
    font-size: .84rem;
}

.shop-checkout-page .shop-shipping-price {
    color: var(--shop-accent);
    margin-top: .35rem;
}

.shop-checkout-page .shop-checkout-summary .shop-summary-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    margin-bottom: .58rem;
}

.shop-checkout-page .shop-checkout-summary .shop-summary-total {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.shop-checkout-page .shop-checkout-note {
    color: var(--shop-muted);
    font-size: .82rem;
}

.shop-payment-page .shop-shipping-line {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
}

.shop-payment-page .shop-payment-option {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: .8rem;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: linear-gradient(160deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02));
    color: #efefef;
    text-align: left;
    /* min-height: 132px; */
    transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.shop-payment-page .shop-payment-option:disabled {
    opacity: .8;
    cursor: not-allowed;
}

.shop-payment-page .shop-payment-option-top {
    display: flex;
    align-items: center;
    gap: .78rem;
}

.shop-payment-page .shop-payment-copy {
    display: flex;
    flex-direction: column;
    gap: .16rem;
    flex: 1;
}

.shop-payment-page .shop-payment-icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.18);
    flex-shrink: 0;
}

.shop-payment-page .shop-payment-icon svg {
    width: 24px;
    height: 24px;
}

.shop-payment-page .shop-payment-icon--card {
    color: #9fe2b7;
    background: rgba(52, 209, 108, 0.16);
}

.shop-payment-page .shop-payment-icon--paypal {
    color: #9fd3ff;
    background: rgba(52, 130, 255, 0.18);
}

.shop-payment-page .shop-payment-arrow {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.04);
    flex-shrink: 0;
}

.shop-payment-page .shop-payment-arrow svg {
    width: 16px;
    height: 16px;
}

.shop-payment-page .shop-payment-option--active {
    border-color: rgba(52, 209, 108, 0.62);
    background: linear-gradient(160deg, rgba(52, 209, 108, 0.16), rgba(52, 209, 108, 0.06));
    box-shadow: inset 0 0 0 1px rgba(52, 209, 108, 0.24);
}

.shop-payment-page .shop-payment-option--active:hover {
    border-color: rgba(52, 209, 108, 0.92);
    background: linear-gradient(160deg, rgba(52, 209, 108, 0.24), rgba(52, 209, 108, 0.08));
    box-shadow: 0 12px 28px rgba(18, 68, 39, 0.28), inset 0 0 0 1px rgba(52, 209, 108, 0.34);
    transform: translateY(-2px);
}

.shop-payment-page .shop-payment-option:focus-visible {
    outline: 0;
    border-color: rgba(52, 209, 108, 0.95);
    box-shadow: 0 0 0 3px rgba(52, 209, 108, 0.24);
}

.shop-payment-page .shop-payment-brand {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.2;
}

.shop-payment-page .shop-payment-status {
    font-size: .82rem;
    color: rgba(236, 236, 236, 0.82);
}

.shop-payment-page .shop-payment-hint {
    font-size: .74rem;
    letter-spacing: .03em;
    text-transform: uppercase;
    color: rgba(189, 242, 207, 0.88);
}

.shop-product-page .shop-qty-input:focus-visible {
    outline: 0;
    border-color: rgba(52, 209, 108, 0.55);
    box-shadow: 0 0 0 3px rgba(52, 209, 108, 0.2);
}

.shop-product-page .shop-meta-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
}

.shop-product-page .shop-meta-item {
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: .55rem .65rem;
    background: rgba(255, 255, 255, 0.03);
}

.shop-product-page .shop-meta-item span {
    display: block;
    font-size: .7rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--shop-muted);
    margin-bottom: .15rem;
}

.shop-product-page .shop-reassurance {
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.03);
    padding: .8rem .85rem;
}

.shop-product-page .shop-reassurance ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.shop-product-page .shop-reassurance li {
    display: flex;
    align-items: center;
    gap: .55rem;
    font-size: .9rem;
    color: #d7d7d7;
}

.shop-product-page .shop-reassurance i {
    color: var(--shop-accent);
}

.shop-product-page .shop-reassurance-paypal {
    display: block;
    margin-top: .2rem;
}

.shop-product-page .shop-reassurance-paypal-label {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    color: #d7d7d7;
    font-size: .9rem;
    margin-bottom: .3rem;
}

.shop-product-page .btn-shop-link {
    border-radius: 10px;
    border: 1px solid rgba(156, 231, 183, 0.4);
    color: var(--shop-accent-soft);
    background: rgba(52, 209, 108, 0.06);
}

.shop-product-page .btn-shop-link:hover {
    color: #c7f5d8;
    background: rgba(52, 209, 108, 0.16);
}

.shop-product-page .shop-gallery {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .6rem;
}

.shop-product-page .shop-gallery-item {
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.03);
    aspect-ratio: 1 / 1;
}

.shop-product-page .shop-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Front theme system */
body[data-theme="light"] {
    --site-bg: #f3f6fb;
    --site-text: #1f2937;
    --site-muted: #526173;
    --site-surface: rgba(255, 255, 255, 0.92);
    --site-border: rgba(15, 23, 42, 0.12);
    --site-shadow: rgba(15, 23, 42, 0.12);
    --site-header-bg: linear-gradient(90deg, rgba(255, 255, 255, 0.92), rgba(243, 247, 255, 0.92));
    --site-footer-bg: radial-gradient(1200px 420px at 15% -50%, #ffffff 0%, #f4f7fc 55%, #eef3fa 100%);
    --site-landing-bg: radial-gradient(1200px 600px at 20% 0%, #ffffff 0%, #f3f7ff 50%, #e8eef8 100%);
}

body[data-theme="dark"] {
    --site-bg: #0b0b0b;
    --site-text: #e6e6e6;
    --site-muted: #a3a3a3;
    --site-surface: rgba(255, 255, 255, 0.04);
    --site-border: rgba(255, 255, 255, 0.1);
    --site-shadow: rgba(0, 0, 0, 0.45);
    --site-header-bg: linear-gradient(90deg, rgba(15, 15, 15, 0.96), rgba(11, 11, 11, 0.9));
    --site-footer-bg: radial-gradient(1200px 420px at 15% -50%, #1a1a1a 0%, #0f0f0f 55%, #0b0b0b 100%);
    --site-landing-bg: radial-gradient(1200px 600px at 20% 0%, #1a1a1a 0%, #0f0f0f 50%, #0b0b0b 100%);
}

body {
    background: var(--site-bg, var(--white1));
    color: var(--site-text, #111111);
}

/* Header */
.echo-header {
    position: sticky;
    top: 0;
    z-index: 1100;
    background: var(--site-header-bg);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--site-border);
}

.echo-header__bar {
    width: 100%;
    margin: 0;
    padding: 1rem clamp(1rem, 2vw, 2.75rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.echo-header__left {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.echo-header__brand {
    color: var(--site-text);
    font-weight: 700;
    letter-spacing: 0.04em;
    text-decoration: none;
}

.echo-header__logo {
    height: 42px;
    width: auto;
    object-fit: contain;
    filter: drop-shadow(0 4px 16px rgba(0, 0, 0, 0.35));
}

.echo-header__nav {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.echo-header__link {
    padding: 0.65rem 0.9rem;
    border-radius: 12px;
    color: var(--site-muted);
    text-decoration: none;
    font-weight: 600;
    transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.echo-header__link:hover {
    background: rgba(52, 209, 108, 0.08);
    color: var(--site-text);
    transform: translateY(-1px);
}

.echo-header__link.is-active {
    background: rgba(52, 209, 108, 0.12);
    color: #34d16c;
    border: 1px solid rgba(52, 209, 108, 0.35);
}

.echo-header__cta {
    margin-left: 0.5rem;
    padding: 0.65rem 1rem;
    border-radius: 999px;
    background: #34d16c;
    color: #0b0b0b;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 8px 20px rgba(52, 209, 108, 0.35);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.echo-header__cta:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 28px rgba(52, 209, 108, 0.45);
}

.echo-theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid rgba(52, 209, 108, 0.45);
    background: rgba(52, 209, 108, 0.08);
    color: #34d16c;
}

.echo-theme-toggle:hover {
    background: rgba(52, 209, 108, 0.16);
}

.echo-header__cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    border: 1px solid rgba(156, 231, 183, 0.45);
    color: #34d16c;
    background: rgba(52, 209, 108, 0.08);
    text-decoration: none;
    transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease;
    position: relative;
}

.echo-header__cart:hover {
    color: #2aa559;
    background: rgba(52, 209, 108, 0.18);
    transform: translateY(-1px);
}

.echo-header__cart-badge {
    position: absolute;
    top: -7px;
    right: -7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 999px;
    background: #34d16c;
    color: #0b0b0b;
    font-size: 0.75rem;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(52, 209, 108, 0.35);
}

.echo-header__cart-badge[data-cart-count="0"] {
    display: none;
}

.echo-header__burger {
    display: none;
    flex-direction: column;
    gap: 6px;
    background: transparent;
    border: 1px solid var(--site-border);
    border-radius: 10px;
    padding: 8px;
    cursor: pointer;
}

.echo-header__burger span {
    width: 22px;
    height: 2px;
    background: var(--site-text);
    display: block;
}

/* Footer */
.echo-footer {
    --echo-accent: #34d16c;
    --echo-accent-soft: #9ce7b7;
    --echo-text: var(--site-text);
    --echo-muted: var(--site-muted);
    --echo-surface: var(--site-surface);
    --echo-border: var(--site-border);
    width: 100%;
    background: var(--site-footer-bg);
    border-top: 1px solid var(--site-border);
    color: var(--echo-text);
}

.echo-footer__inner {
    width: 100%;
    padding: 2rem clamp(1rem, 2vw, 2.75rem);
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.echo-footer__top,
.echo-footer__bottom {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
}

.echo-footer__brand-wrap,
.echo-footer__links,
.echo-footer__contact {
    background: var(--echo-surface);
    border: 1px solid var(--echo-border);
    border-radius: 16px;
    padding: 1rem 1.1rem;
    backdrop-filter: blur(6px);
}

.echo-footer__brand-wrap {
    min-width: min(100%, 360px);
}

.echo-footer__brand {
    display: inline-flex;
    text-decoration: none;
}

.echo-footer__brand--text {
    color: var(--echo-text);
    font-family: "Krona One", sans-serif;
    letter-spacing: 0.04em;
    font-size: 1rem;
}

.echo-footer__logo {
    height: 44px;
    width: auto;
    object-fit: contain;
    filter: drop-shadow(0 4px 16px rgba(0, 0, 0, 0.35));
}

.echo-footer__tagline {
    margin-top: 0.65rem;
    color: var(--echo-muted);
    font-size: 0.9rem;
}

.echo-footer__links {
    flex: 1;
}

.echo-footer__label {
    font-size: 0.78rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--echo-accent-soft);
}

.echo-footer__links-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem;
}

.echo-footer__link {
    border-radius: 10px;
    border: 1px solid var(--echo-border);
    background: rgba(255, 255, 255, 0.02);
    color: var(--echo-text);
    text-decoration: none;
    font-size: 0.78rem;
    padding: 0.5rem 0.65rem;
    transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.echo-footer__link:hover {
    color: #1f2937;
    border-color: rgba(156, 231, 183, 0.45);
    background: rgba(52, 209, 108, 0.3);
}

body[data-theme="dark"] .echo-footer__link:hover {
    color: #eafcf1;
    background: rgba(52, 209, 108, 0.12);
}

.echo-footer__divider {
    margin: 0;
    border: 0;
    border-top: 1px solid var(--echo-border);
}

.echo-footer__bottom {
    align-items: center;
}

.echo-footer__contact-title {
    font-family: "Krona One", sans-serif;
    font-size: clamp(0.9rem, 1.2vw, 1rem);
    color: var(--echo-muted);
    margin: 0;
}

.echo-footer__contact-mail {
    font-family: "Krona One", sans-serif;
    font-size: clamp(1rem, 1.8vw, 1.4rem);
    color: #2aa559;
    text-decoration: none;
}

.echo-footer__contact-mail:hover {
    text-decoration: underline;
}

.echo-footer__cta {
    border-radius: 999px;
    background: #34d16c;
    color: #0b0b0b;
    text-decoration: none;
    font-weight: 700;
    padding: 0.75rem 1.1rem;
    box-shadow: 0 8px 20px rgba(52, 209, 108, 0.35);
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.echo-footer__cta:hover {
    background: #2fc161;
    color: #0b0b0b;
    transform: translateY(-1px);
    box-shadow: 0 10px 28px rgba(52, 209, 108, 0.45);
}

/* Home module */
.echo-landing {
    min-height: 100vh;
    background: var(--site-landing-bg);
    color: var(--site-text);
    overflow: hidden;
}

.echo-landing a {
    color: #34d16c;
    text-decoration: none;
}

.echo-landing .shop-spotlight {
    padding: 6rem 1.5rem 2.5rem;
}

.echo-landing .shop-spotlight .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 2rem;
    border-radius: 22px;
    background: radial-gradient(1000px 300px at 0% 0%, rgba(52, 209, 108, 0.26), rgba(52, 209, 108, 0) 50%), var(--site-surface);
    box-shadow: 0 24px 50px rgba(0, 0, 0, 0.24);
}

.echo-landing .shop-spotlight-head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-end;
    margin-bottom: 1.1rem;
}

.echo-landing .shop-spotlight-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.echo-landing .shop-spotlight-controls {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.echo-landing .shop-slider-btn {
    width: 38px;
    height: 38px;
    border-radius: 999px;
    border: 1px solid var(--site-border);
    background: rgba(255, 255, 255, 0.05);
    color: var(--site-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.echo-landing .shop-slider-btn:hover {
    border-color: rgba(52, 209, 108, 0.45);
    color: #8df0b1;
}

.echo-landing .shop-slider-btn:disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

.echo-landing .shop-spotlight-kicker {
    display: inline-flex;
    margin: 0 0 0.75rem;
    padding: 0.3rem 0.7rem;
    border-radius: 999px;
    border: 1px solid rgba(52, 209, 108, 0.5);
    color: #8df0b1;
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 700;
}

.echo-landing .shop-spotlight h1 {
    margin: 0;
    font-size: clamp(1.8rem, 4.2vw, 3rem);
    line-height: 1.1;
    max-width: 850px;
}

.echo-landing .shop-spotlight-lead {
    margin: 0.9rem 0 0;
    max-width: 760px;
    color: var(--site-muted);
    font-size: clamp(1rem, 2vw, 1.2rem);
}

.echo-landing .shop-spotlight .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border-radius: 999px;
    padding: 0.75rem 1.1rem;
    font-weight: 700;
    border: 1px solid transparent;
}

.echo-landing .shop-spotlight .btn-shop-view-all {
    color: var(--site-text);
    background: rgba(255, 255, 255, 0.02);
    border-color: var(--site-border);
}

.echo-landing .shop-spotlight .btn-shop-view-all:hover {
    border-color: rgba(52, 209, 108, 0.4);
    color: #8df0b1;
}

.echo-landing .shop-spotlight-slider {
    position: relative;
    overflow: hidden;
    padding-bottom: 2rem;
}

.echo-landing .shop-spotlight-slider .swiper-wrapper {
    align-items: stretch;
}

.echo-landing .shop-spotlight-slider .swiper-slide {
    height: auto;
}

.echo-landing .shop-spotlight-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--site-border);
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.echo-landing .shop-spotlight-hit {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
    padding: 0.75rem;
}

.echo-landing .shop-spotlight-thumb {
    height: 280px;
    border-radius: 12px;
    overflow: hidden;
    background: rgb(255, 255, 255);
}

.echo-landing .shop-spotlight-thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.echo-landing .shop-spotlight-placeholder {
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    color: var(--site-muted);
    font-size: 1.4rem;
}

.echo-landing .shop-spotlight-body {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.echo-landing .shop-spotlight-ref {
    margin: 0;
    color: #8df0b1;
    font-size: 0.8rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.echo-landing .shop-spotlight-body h3 {
    margin: 0;
    color: var(--site-text);
    font-size: 1.02rem;
}

.echo-landing .shop-spotlight-desc {
    margin: 0;
    color: var(--site-muted);
    font-size: 0.9rem;
}

.echo-landing .shop-spotlight-footer {
    margin-top: auto;
    padding: 0.85rem 0.75rem;
    border-top: 1px solid var(--site-border);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
}

.echo-landing .shop-spotlight-footer strong {
    color: #8df0b1;
    font-size: 1.02rem;
}

.echo-landing .shop-spotlight-empty {
    border: 1px dashed var(--site-border);
    border-radius: 12px;
    padding: 1rem;
    color: var(--site-muted);
}

.echo-landing .shop-spotlight-points {
    margin-top: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.echo-landing .shop-spotlight-points span {
    border-radius: 999px;
    border: 1px solid var(--site-border);
    background: rgba(255, 255, 255, 0.03);
    color: var(--site-muted);
    padding: 0.35rem 0.7rem;
    font-size: 0.85rem;
}

.echo-landing .shop-slider-pagination {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.4rem;
}

.echo-landing .shop-slider-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    opacity: 0.35;
    background: var(--site-text);
}

.echo-landing .shop-slider-pagination .swiper-pagination-bullet-active {
    opacity: 1;
    background: #34d16c;
}

.echo-landing .hero {
    position: relative;
    padding: 3rem 1.5rem 3rem;
    text-align: center;
}

.echo-landing .hero h1,
.echo-landing .hero h2 {
    font-size: clamp(1.6rem, 3.6vw, 2.6rem);
    letter-spacing: 0.02em;
    margin: 0 0 0.5rem;
}

.echo-landing .hero p.lead {
    font-size: clamp(1rem, 2vw, 1.25rem);
    color: var(--site-muted);
    margin: 0 auto;
    max-width: 900px;
}

.echo-landing .social-links {
    display: flex;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    margin-top: 1.5rem;
}

.echo-landing .social-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    color: #ffffff;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    text-decoration: none;
}

.echo-landing .social-links a:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.3);
}

.echo-landing .social-links a.youtube {
    background: #ff0000;
}

.echo-landing .social-links a.tiktok {
    background: #000000;
}

.echo-landing .social-links a.instagram {
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
}

.echo-landing .social-links a i {
    font-size: 1.5rem;
}

.echo-landing .section {
    padding: 2rem 1.5rem;
}

.echo-landing .section .container {
    max-width: 1100px;
    margin: 0 auto;
}

.echo-landing .features {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1rem;
}

.echo-landing .feature {
    grid-column: span 4;
    background: var(--site-surface);
    border: 1px solid var(--site-border);
    border-radius: 16px;
    padding: 1.25rem;
}

.echo-landing .feature h3 {
    margin: 0 0 0.5rem;
    font-size: 1.2rem;
}

.echo-landing .feature p {
    color: var(--site-muted);
}

.echo-landing .videos {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1rem;
}

.echo-landing .video-card {
    grid-column: span 6;
    background: var(--site-surface);
    border: 1px solid var(--site-border);
    border-radius: 18px;
    overflow: hidden;
}

.echo-landing .video-thumb {
    position: relative;
    aspect-ratio: 16/9;
    background: rgba(0, 0, 0, 0.08);
}

.echo-landing .video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(1.05) contrast(1.05);
}

.echo-landing .video-thumb .play {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.22));
}

.echo-landing .play .btn {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #34d16c;
    color: #0b0b0b;
    border: none;
    box-shadow: 0 8px 24px rgba(52, 209, 108, 0.35);
    transition: transform 0.15s ease;
}

.echo-landing .play .btn:hover {
    transform: scale(1.05);
}

.echo-landing .video-body {
    padding: 1rem 1.25rem;
}

.echo-landing .video-title {
    font-size: 1rem;
    margin: 0 0 0.25rem;
}

.echo-landing .video-meta {
    color: var(--site-muted);
    font-size: 0.9rem;
}

.echo-landing .cta {
    text-align: center;
    padding: 2rem 1.5rem 3rem;
}

.echo-landing .cta .btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: #34d16c;
    color: #0b0b0b;
    border: 1px solid #2a7947;
    border-radius: 999px;
    padding: 0.75rem 1rem;
    font-weight: 600;
    box-shadow: 0 8px 24px rgba(52, 209, 108, 0.35);
}

.echo-landing .divider {
    height: 2px;
    background: linear-gradient(90deg, transparent, #34d16c, transparent);
    margin: 1.5rem auto;
    max-width: 480px;
}

/* Contact module */
.echo-contact {
    min-height: 100vh;
    background: radial-gradient(1200px 600px at 20% 0%, #1a1a1a 0%, #0f0f0f 50%, #0b0b0b 100%);
    color: #e6e6e6;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    align-items: center;
    gap: 2rem;
    padding: 4rem 1.5rem 3rem;
}

.echo-contact .container {
    grid-column: 2 / span 10;
    max-width: 1100px;
    margin: 0 auto;
    width: 100%;
}

.echo-contact .echo-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.5rem;
    align-items: start;
}

.echo-contact .echo-hero {
    grid-column: span 6;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
}

.echo-contact .echo-hero h1 {
    font-size: clamp(2rem, 4vw, 3rem);
    margin: 0;
    letter-spacing: 0.02em;
}

.echo-contact .echo-hero p {
    color: #bdbdbd;
    max-width: 700px;
    margin: 0;
}

.echo-contact .echo-hero .accent {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.75rem;
    border: 1px solid #2a7947;
    border-radius: 999px;
    background: rgba(52, 209, 108, 0.08);
    color: #9ce7b7;
    font-size: 0.9em;
    width: fit-content;
}

.echo-contact .echo-hero .accent svg {
    width: 18px;
    height: 18px;
}

.echo-contact .echo-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    color: #9a9a9a;
    font-size: 0.95rem;
}

.echo-contact .echo-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.echo-contact .echo-chip .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #34d16c;
    box-shadow: 0 0 0 6px rgba(52, 209, 108, 0.15);
}

.echo-contact .echo-card {
    grid-column: span 6;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 18px;
    padding: 1.75rem;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(6px);
}

.echo-contact .echo-card h2 {
    margin: 0 0 0.5rem 0;
    font-size: 1.25rem;
}

.echo-contact .echo-card .subtitle {
    color: #9a9a9a;
    margin: 0 0 1.25rem 0;
}

.echo-contact .echo-card label {
    margin-bottom: 0.35rem;
    font-weight: 600;
    color: #dcdcdc;
}

.echo-contact .echo-card .form-control {
    background: #0f0f0f;
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #e6e6e6;
    border-radius: 12px;
    padding: 0.75rem 0.9rem;
}

.echo-contact .echo-card .form-control:focus {
    box-shadow: 0 0 0 2px rgba(52, 209, 108, 0.25);
    border-color: #34d16c;
}

.echo-contact .echo-card textarea.form-control {
    min-height: 140px;
}

.echo-contact .echo-card .btn-echo {
    width: 100%;
    border-radius: 12px;
    border: 1px solid #2a7947;
    background: #34d16c;
    color: #0b0b0b;
    font-weight: 700;
    padding: 0.85rem 1rem;
    box-shadow: 0 10px 24px rgba(52, 209, 108, 0.35);
}

.echo-contact .echo-card .alert {
    border-radius: 12px;
}

/* Login module */
.echo-login {
    min-height: 100vh;
    background: radial-gradient(1200px 600px at 20% 0%, #1a1a1a 0%, #0f0f0f 50%, #0b0b0b 100%);
    color: #e6e6e6;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 2rem;
    padding: 4rem 1.5rem 3rem;
    align-items: center;
}

.echo-login .container {
    grid-column: 2 / span 10;
    max-width: 1100px;
    margin: 0 auto;
    width: 100%;
}

.echo-login .echo-grid {
    display: grid;
    align-items: start;
    grid-template-columns: repeat(12, 1fr);
    gap: 1.5rem;
}

.echo-login .echo-hero {
    grid-column: span 7;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
}

.echo-login .echo-hero h1 {
    font-size: clamp(2rem, 4vw, 3rem);
    margin: 0;
    letter-spacing: 0.02em;
}

.echo-login .echo-hero p {
    color: #bdbdbd;
    max-width: 720px;
    margin: 0;
}

.echo-login .echo-hero .accent {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.35rem 0.75rem;
    border: 1px solid #2a7947;
    border-radius: 999px;
    background: rgba(52, 209, 108, 0.08);
    color: #9ce7b7;
    font-size: 0.9em;
    width: fit-content;
}

.echo-login .echo-hero .accent svg {
    width: 18px;
    height: 18px;
}

.echo-login .echo-card {
    grid-column: span 5;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.02));
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 18px;
    padding: 1.75rem;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(6px);
}

.echo-login .echo-card h2 {
    margin: 0 0 0.35rem 0;
    font-size: 1.25rem;
}

.echo-login .echo-card .subtitle {
    color: #9a9a9a;
    margin: 0 0 1.25rem 0;
}

.echo-login .echo-card label {
    margin-top: 1rem;
    margin-bottom: 0.35rem;
    font-weight: 600;
    color: #dcdcdc;
}

.echo-login .echo-card .form-control {
    background: #0f0f0f;
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #e6e6e6;
    border-radius: 12px;
    padding: 0.75rem 0.9rem;
}

.echo-login .echo-card .form-control:focus {
    box-shadow: 0 0 0 2px rgba(52, 209, 108, 0.25);
    border-color: #34d16c;
}

.echo-login .echo-card .input-group {
    display: flex;
    align-items: stretch;
    /* gap: 0.5rem; */
}

.echo-login .echo-card .input-group .password-btn {
    border-radius: 12px;
    background: #1a1a1a;
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #9ce7b7;
    padding: 0.65rem 0.9rem;
}

.echo-login .echo-card .input-group .password-btn:hover {
    background: #222;
}

.echo-login .echo-card .btn-echo {
    margin-top: 35px;
    width: 100%;
    border-radius: 12px;
    background: #34d16c;
    color: #0b0b0b;
    font-weight: 700;
    padding: 0.85rem 1rem;
    box-shadow: 0 10px 24px rgba(52, 209, 108, 0.35);
}

.echo-login .echo-card .alert {
    border-radius: 12px;
}

.echo-login .echo-meta {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 1.25rem;
    color: #9a9a9a;
    font-size: 0.95rem;
}

.echo-login .echo-meta .dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #34d16c;
    box-shadow: 0 0 0 6px rgba(52, 209, 108, 0.15);
}

/* Ecommerce list page */
.shop-list-page {
    --shop-accent: #34d16c;
    --shop-accent-soft: #2aa559;
    --shop-text: var(--site-text);
    --shop-muted: var(--site-muted);
    --shop-card: var(--site-surface);
    --shop-border: var(--site-border);
    min-height: 100vh;
    background: var(--site-landing-bg);
    color: var(--shop-text);
}

.shop-list-page .shop-panel,
.shop-list-page .shop-list-card,
.shop-list-page .shop-category-card {
    background: var(--shop-card);
    border: 1px solid var(--shop-border);
    border-radius: 18px;
    box-shadow: 0 10px 40px var(--site-shadow);
    backdrop-filter: blur(6px);
}

.shop-list-page .shop-heading {
    font-family: 'Krona One', sans-serif;
    font-size: clamp(1.35rem, 2vw, 1.85rem);
    margin-bottom: .45rem;
}

.shop-list-page .shop-muted {
    color: var(--shop-muted);
}

.shop-list-page .shop-category-title {
    font-size: .78rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--shop-accent-soft);
    margin-bottom: .8rem;
}

.shop-list-page .shop-category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .6rem;
    border-radius: 10px;
    border: 1px solid var(--shop-border);
    background: rgba(255, 255, 255, 0.18);
    color: var(--shop-text);
    text-decoration: none;
    padding: .55rem .7rem;
    transition: all .2s ease;
}

body[data-theme="dark"] .shop-list-page .shop-category-link {
    background: rgba(255, 255, 255, 0.02);
}

.shop-list-page .shop-category-link:hover {
    border-color: rgba(156, 231, 183, 0.45);
    background: rgba(52, 209, 108, 0.1);
    color: #1f2937;
}

body[data-theme="dark"] .shop-list-page .shop-category-link:hover {
    color: #eafcf1;
}

.shop-list-page .shop-category-link.active {
    border-color: rgba(52, 209, 108, 0.55);
    background: rgba(52, 209, 108, 0.16);
    color: var(--shop-accent-soft);
    font-weight: 600;
}

.shop-list-page .shop-thumb {
    aspect-ratio: 4 / 3;
    border-radius: 12px;
    overflow: hidden;
    background: linear-gradient(130deg, #dde7f4 0%, #e9eff9 55%, #f7fafc 100%);
    border: 1px dashed rgba(15, 23, 42, 0.2);
}

body[data-theme="dark"] .shop-list-page .shop-thumb {
    background: linear-gradient(130deg, #151515 0%, #0f0f0f 55%, #121a14 100%);
    border-color: rgba(255, 255, 255, 0.18);
}

.shop-list-page .shop-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.shop-list-page .shop-thumb-placeholder {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--shop-muted);
    font-size: 1.4rem;
}

.shop-list-page .shop-ref {
    color: var(--shop-muted);
    font-size: .8rem;
}

.shop-list-page .shop-card-title {
    font-size: 1.05rem;
    margin: 0;
}

.shop-list-page .shop-card-desc {
    color: var(--shop-muted);
    font-size: .88rem;
    line-height: 1.5;
    margin: 0;
}

.shop-list-page .shop-price {
    font-weight: 700;
    color: var(--shop-accent);
}

.shop-list-page .shop-card-hit {
    color: inherit;
    text-decoration: none;
}

.shop-list-page .shop-card-hit:hover {
    color: inherit;
}

.shop-list-page .shop-list-card {
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.shop-list-page .shop-list-card:hover {
    transform: translateY(-2px);
    border-color: rgba(156, 231, 183, 0.35);
    box-shadow: 0 14px 28px var(--site-shadow);
}

.shop-list-page .btn-shop-link {
    border-radius: 10px;
    border: 1px solid rgba(156, 231, 183, 0.4);
    color: var(--shop-accent-soft);
    background: rgba(52, 209, 108, 0.06);
}

.shop-list-page .btn-shop-link:hover {
    color: #1f2937;
    background: rgba(52, 209, 108, 0.16);
}

body[data-theme="dark"] .shop-list-page .btn-shop-link:hover {
    color: #c7f5d8;
}

.shop-list-page .btn-shop-add,
.echo-landing .btn-shop-add {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 1px solid rgba(156, 231, 183, 0.5);
    color: var(--shop-accent-soft);
    background: rgba(52, 209, 108, 0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.shop-list-page .btn-shop-add:hover,
.echo-landing .btn-shop-add:hover {
    color: #1f2937;
    background: rgba(52, 209, 108, 0.18);
    border-color: rgba(156, 231, 183, 0.75);
}

body[data-theme="dark"] .shop-list-page .btn-shop-add:hover,
body[data-theme="dark"] .echo-landing .btn-shop-add:hover {
    color: #c7f5d8;
}

.shop-list-page .btn-shop-add:disabled,
.echo-landing .btn-shop-add:disabled {
    opacity: .5;
    cursor: not-allowed;
}

.shop-list-page .shop-empty {
    border-radius: 14px;
    border: 1px solid var(--shop-border);
    background: var(--shop-card);
    color: var(--shop-text);
}

/* Ecommerce cart page */
.shop-cart-page {
    --shop-accent: #34d16c;
    --shop-accent-soft: #2aa559;
    --shop-text: var(--site-text);
    --shop-muted: var(--site-muted);
    --shop-card: var(--site-surface);
    --shop-border: var(--site-border);
    min-height: 100vh;
    background: var(--site-landing-bg);
    color: var(--shop-text);
}

.shop-cart-page .shop-panel,
.shop-cart-page .shop-cart-card,
.shop-cart-page .shop-summary-card {
    background: var(--shop-card);
    border: 1px solid var(--shop-border);
    border-radius: 18px;
    box-shadow: 0 10px 40px var(--site-shadow);
    backdrop-filter: blur(6px);
}

.shop-cart-page .shop-cart-heading {
    font-family: 'Krona One', sans-serif;
    font-size: clamp(1.2rem, 2vw, 1.7rem);
    margin: 0;
}

.shop-cart-page .shop-muted {
    color: var(--shop-muted);
}

.shop-cart-page .shop-cart-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: .75rem;
    align-items: center;
    border: 1px solid var(--shop-border);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.18);
    padding: .9rem;
}

body[data-theme="dark"] .shop-cart-page .shop-cart-item {
    background: rgba(255, 255, 255, 0.03);
}

.shop-cart-page .shop-item-title {
    color: var(--shop-text);
    font-weight: 600;
    text-decoration: none;
}

.shop-cart-page .shop-item-title:hover {
    color: var(--shop-accent-soft);
}

.shop-cart-page .shop-item-ref {
    font-size: .82rem;
    color: var(--shop-muted);
}

.shop-cart-page .shop-item-qty {
    min-width: 44px;
    text-align: center;
    border-radius: 999px;
    border: 1px solid rgba(52, 209, 108, 0.35);
    background: rgba(52, 209, 108, 0.12);
    color: #2a7947;
    font-weight: 600;
    padding: .28rem .55rem;
}

body[data-theme="dark"] .shop-cart-page .shop-item-qty {
    color: #bdf2cf;
}

.shop-cart-page .shop-item-price {
    white-space: nowrap;
    font-weight: 700;
    color: var(--shop-accent);
}

.shop-cart-page .shop-summary-title {
    font-size: .8rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--shop-accent-soft);
    margin-bottom: .8rem;
}

.shop-cart-page .shop-summary-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    font-size: .95rem;
    margin-bottom: .55rem;
}

.shop-cart-page .shop-summary-row strong {
    color: var(--shop-text);
}

.shop-cart-page .shop-summary-total {
    border-top: 1px solid var(--shop-border);
    margin-top: .7rem;
    padding-top: .8rem;
    font-size: 1.04rem;
}

.shop-cart-page .shop-summary-paypal {
    margin-top: .75rem;
    border-top: 1px solid var(--shop-border);
    padding-top: .75rem;
}

.shop-cart-page .shop-summary-paypal-label {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    font-size: .9rem;
    color: var(--shop-text);
    margin-bottom: .3rem;
}

.shop-cart-page .shop-summary-paypal-label i {
    color: var(--shop-accent);
}

.shop-cart-page .shop-summary-paypal-message {
    min-height: 38px;
    margin-left: 1.5rem;
}

.shop-cart-page .btn-shop-link {
    border-radius: 10px;
    border: 1px solid rgba(156, 231, 183, 0.4);
    color: var(--shop-accent-soft);
    background: rgba(52, 209, 108, 0.06);
}

.shop-cart-page .btn-shop-link:hover {
    color: #1f2937;
    background: rgba(52, 209, 108, 0.16);
}

body[data-theme="dark"] .shop-cart-page .btn-shop-link:hover {
    color: #c7f5d8;
}

.shop-cart-page .btn-shop-primary {
    border-radius: 12px;
    background: #34d16c;
    color: #0b0b0b;
    font-weight: 700;
    box-shadow: 0 8px 20px rgba(52, 209, 108, 0.35);
    padding: .75rem 1rem;
    text-decoration: none;
    text-align: center;
}

.shop-cart-page .btn-shop-primary:hover {
    color: #0b0b0b;
    background: #2fc161;
}

.shop-cart-page .shop-empty {
    border-radius: 14px;
    border: 1px solid var(--shop-border);
    background: var(--shop-card);
    color: var(--shop-text);
}

.checkout-auth-modal {
    text-align: left;
}

.checkout-auth-hero {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    margin-bottom: .8rem;
}

.checkout-auth-hero-icon {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(52, 209, 108, 0.18);
    border: 1px solid rgba(52, 209, 108, 0.42);
    color: #2a7947;
    flex: 0 0 36px;
}

body[data-theme="dark"] .checkout-auth-hero-icon {
    color: #bdf2cf;
}

.checkout-auth-hero p {
    margin: 0;
    font-size: .87rem;
    color: var(--site-muted);
    line-height: 1.4;
}

.checkout-auth-trust {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin-bottom: .8rem;
}

.checkout-auth-trust span {
    border-radius: 999px;
    border: 1px solid var(--site-border);
    padding: .22rem .58rem;
    font-size: .74rem;
    color: var(--site-text);
    background: rgba(255, 255, 255, 0.15);
}

body[data-theme="dark"] .checkout-auth-trust span {
    background: rgba(255, 255, 255, 0.04);
}

.checkout-auth-switch {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    margin-bottom: .8rem;
}

.checkout-auth-tab {
    border-radius: 10px;
    border: 1px solid var(--site-border);
    background: rgba(255, 255, 255, 0.15);
    color: var(--site-text);
    padding: .5rem .65rem;
    font-weight: 600;
}

body[data-theme="dark"] .checkout-auth-tab {
    background: rgba(255, 255, 255, 0.04);
}

.checkout-auth-tab.is-active {
    border-color: rgba(52, 209, 108, 0.5);
    background: rgba(52, 209, 108, 0.18);
    color: #2a7947;
}

body[data-theme="dark"] .checkout-auth-tab.is-active {
    color: #bdf2cf;
}

.checkout-auth-panel {
    display: none;
}

.checkout-auth-panel.is-active {
    display: block;
}

.checkout-auth-message {
    display: none;
    margin-bottom: .65rem;
    border-radius: 10px;
    border: 1px solid rgba(255, 107, 107, 0.45);
    background: rgba(255, 107, 107, 0.12);
    color: #b83939;
    padding: .45rem .6rem;
    font-size: .85rem;
}

body[data-theme="dark"] .checkout-auth-message {
    color: #ffd8d8;
}

.checkout-auth-message.is-visible {
    display: block;
}

.checkout-auth-modal .form-label {
    color: var(--site-text);
    margin-bottom: .25rem;
    font-size: .86rem;
}

.checkout-auth-modal .form-control {
    border-radius: 10px;
    border: 1px solid var(--site-border);
    background: rgba(255, 255, 255, 0.25);
    color: var(--site-text);
}

body[data-theme="dark"] .checkout-auth-modal .form-control {
    background: rgba(255, 255, 255, 0.04);
}

.checkout-auth-panel form > div {
    margin-bottom: .55rem;
}

.checkout-auth-panel label {
    display: inline-block;
    color: var(--site-text);
    margin-bottom: .26rem;
    font-size: .85rem;
    font-weight: 500;
}

.checkout-auth-panel label.required::after {
    content: ' *';
    color: #ff6b6b;
}

.checkout-auth-panel input[type="text"],
.checkout-auth-panel input[type="email"],
.checkout-auth-panel input[type="password"],
.checkout-auth-panel input[type="tel"],
.checkout-auth-panel input[type="number"] {
    width: 100%;
    border-radius: 10px;
    border: 1px solid var(--site-border);
    background: rgba(255, 255, 255, 0.3);
    color: var(--site-text);
    padding: .56rem .7rem;
    outline: none;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

body[data-theme="dark"] .checkout-auth-panel input[type="text"],
body[data-theme="dark"] .checkout-auth-panel input[type="email"],
body[data-theme="dark"] .checkout-auth-panel input[type="password"],
body[data-theme="dark"] .checkout-auth-panel input[type="tel"],
body[data-theme="dark"] .checkout-auth-panel input[type="number"] {
    background: rgba(255, 255, 255, 0.05);
}

.checkout-auth-panel input::placeholder {
    color: var(--site-muted);
}

.checkout-auth-panel input:focus {
    border-color: rgba(52, 209, 108, 0.62);
    box-shadow: 0 0 0 3px rgba(52, 209, 108, 0.2);
}

.checkout-auth-panel input:-webkit-autofill,
.checkout-auth-panel input:-webkit-autofill:hover,
.checkout-auth-panel input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--site-text);
    transition: background-color 5000s ease-in-out 0s;
}

.checkout-auth-submit {
    width: 100%;
    border-radius: 10px;
    border: 1px solid #2a7947;
    background: #34d16c;
    color: #0b0b0b;
    font-weight: 700;
    padding: .55rem .85rem;
    margin-top: .35rem;
}

.shop-checkout-popup {
    border-radius: 18px;
    border: 1px solid var(--site-border);
    background: var(--site-surface);
    color: var(--site-text);
    box-shadow: 0 22px 52px var(--site-shadow);
    padding: 1.1rem 1.1rem 1rem;
}

body[data-theme="dark"] .shop-checkout-popup {
    background: radial-gradient(700px 350px at 0% 0%, rgba(52, 209, 108, 0.14) 0%, rgba(24, 24, 24, 0.95) 55%, rgba(14, 14, 14, 0.98) 100%);
}

.shop-checkout-title {
    color: var(--site-text);
    font-size: 1.2rem;
    margin-bottom: .35rem;
}

.shop-checkout-html {
    margin-top: .2rem;
    padding: 0;
}

.shop-checkout-popup .swal2-close {
    color: var(--site-muted);
}

.shop-checkout-popup .swal2-close:hover {
    color: var(--site-text);
}

/* Light-mode refinements for existing ecommerce product/checkout/payment pages */
body[data-theme="light"] .shop-product-page,
body[data-theme="light"] .shop-checkout-page,
body[data-theme="light"] .shop-payment-page {
    --shop-accent: #2aa559;
    --shop-accent-soft: #2aa559;
    --shop-text: #1f2937;
    --shop-muted: #5f6f82;
    --shop-card: rgba(255, 255, 255, 0.9);
    --shop-border: rgba(15, 23, 42, 0.12);
    background: radial-gradient(1200px 600px at 20% 0%, #ffffff 0%, #f3f7ff 50%, #e8eef8 100%);
}

body[data-theme="light"] .shop-product-page .shop-hero-card,
body[data-theme="light"] .shop-product-page .shop-info-card,
body[data-theme="light"] .shop-product-page .shop-panel,
body[data-theme="light"] .shop-checkout-page .shop-address-card,
body[data-theme="light"] .shop-payment-page .shop-payment-option {
    box-shadow: 0 10px 32px rgba(15, 23, 42, 0.1);
}

body[data-theme="light"] .shop-product-page .shop-cover {
    background: linear-gradient(130deg, #dce8f8 0%, #eef3fb 55%, #f8fbff 100%);
    border: 1px dashed rgba(15, 23, 42, 0.2);
}

body[data-theme="light"] .shop-product-page .shop-cover i,
body[data-theme="light"] .shop-product-page .shop-ref,
body[data-theme="light"] .shop-product-page .shop-description,
body[data-theme="light"] .shop-product-page .shop-reassurance li,
body[data-theme="light"] .shop-product-page .shop-reassurance-paypal-label,
body[data-theme="light"] .shop-checkout-page .shop-checkout-feedback,
body[data-theme="light"] .shop-checkout-page .shop-shipping-name,
body[data-theme="light"] .shop-payment-page .shop-payment-option {
    color: #1f2937;
}

body[data-theme="light"] .shop-product-page .shop-kv div,
body[data-theme="light"] .shop-product-page .shop-buy-block,
body[data-theme="light"] .shop-product-page .shop-meta-item,
body[data-theme="light"] .shop-product-page .shop-reassurance,
body[data-theme="light"] .shop-product-page .shop-related-card,
body[data-theme="light"] .shop-product-page .shop-related-thumb,
body[data-theme="light"] .shop-checkout-page .shop-shipping-option,
body[data-theme="light"] .shop-payment-page .shop-payment-option {
    background: rgba(255, 255, 255, 0.72);
    border-color: rgba(15, 23, 42, 0.14);
}

body[data-theme="light"] .shop-payment-page .shop-payment-status {
    color: #4b5f75;
}

body[data-theme="light"] .shop-payment-page .shop-payment-hint {
    color: #2a7947;
}

body[data-theme="light"] .shop-payment-page .shop-payment-arrow {
    color: #334155;
    border-color: rgba(15, 23, 42, 0.16);
    background: rgba(255, 255, 255, 0.86);
}

body[data-theme="light"] .shop-payment-page .shop-payment-icon {
    border-color: rgba(15, 23, 42, 0.15);
}

body[data-theme="light"] .shop-payment-page .shop-payment-icon--card {
    color: #1f6f3d;
    background: rgba(42, 165, 89, 0.2);
}

body[data-theme="light"] .shop-payment-page .shop-payment-icon--paypal {
    color: #0c4ab7;
    background: rgba(59, 130, 246, 0.18);
}

body[data-theme="light"] .shop-payment-page .shop-payment-option--active {
    border-color: rgba(42, 165, 89, 0.55);
    background: linear-gradient(160deg, rgba(42, 165, 89, 0.2), rgba(42, 165, 89, 0.06));
}

body[data-theme="light"] .shop-product-page .shop-qty-input,
body[data-theme="light"] .shop-checkout-page .shop-address-select,
body[data-theme="light"] .shop-checkout-page .form-control,
body[data-theme="light"] .shop-checkout-page .form-select {
    background: rgba(255, 255, 255, 0.94);
    border-color: rgba(15, 23, 42, 0.2);
    color: #1f2937;
}

body[data-theme="light"] .shop-checkout-page .form-select option {
    background: #ffffff;
    color: #1f2937;
}

body[data-theme="light"] .shop-checkout-page .form-check-label,
body[data-theme="light"] .shop-checkout-page .form-label {
    color: #324255;
}

body[data-theme="light"] .shop-checkout-page .shop-address-title {
    color: #324255;
}

body[data-theme="light"] .shop-checkout-page .shop-checkout-step {
    color: #2a7947;
}

body[data-theme="light"] .shop-checkout-page .shop-address-current {
    color: #324255;
}

body[data-theme="light"] .shop-product-page .btn-shop-secondary {
    border-color: rgba(15, 23, 42, 0.22);
    color: #324255;
}

body[data-theme="light"] .shop-product-page .btn-shop-secondary:hover {
    background: rgba(15, 23, 42, 0.06);
    color: #1f2937;
}

body[data-theme="light"] .shop-product-page .shop-tag {
    color: #324255;
    border-color: rgba(15, 23, 42, 0.18);
    background: rgba(255, 255, 255, 0.72);
}

body[data-theme="light"] .shop-product-page .shop-description h1,
body[data-theme="light"] .shop-product-page .shop-description h2,
body[data-theme="light"] .shop-product-page .shop-description h3,
body[data-theme="light"] .shop-product-page .shop-description h4,
body[data-theme="light"] .shop-product-page .shop-description h5,
body[data-theme="light"] .shop-product-page .shop-description h6 {
    color: #16283c;
}

body[data-theme="light"] .shop-product-page .shop-availability-badge {
    color: #173c2a;
    background: rgba(47, 158, 98, 0.2);
    border-color: rgba(42, 121, 71, 0.45);
}

/* Light-mode refinements for contact and login modules */
body[data-theme="light"] .echo-contact,
body[data-theme="light"] .echo-login {
    background: radial-gradient(1200px 600px at 20% 0%, #ffffff 0%, #f3f7ff 50%, #e8eef8 100%);
    color: #1f2937;
}

body[data-theme="light"] .echo-contact .echo-hero p,
body[data-theme="light"] .echo-login .echo-hero p,
body[data-theme="light"] .echo-contact .echo-meta,
body[data-theme="light"] .echo-login .echo-card .subtitle,
body[data-theme="light"] .echo-login .echo-meta,
body[data-theme="light"] .echo-contact .echo-card .subtitle {
    color: #526173;
}

body[data-theme="light"] .echo-contact .echo-hero .accent,
body[data-theme="light"] .echo-login .echo-hero .accent {
    border-color: rgba(42, 121, 71, 0.45);
    background: rgba(47, 158, 98, 0.14);
    color: #2a7947;
}

body[data-theme="light"] .echo-contact .echo-chip {
    background: rgba(255, 255, 255, 0.76);
    border-color: rgba(15, 23, 42, 0.14);
}

body[data-theme="light"] .echo-contact .echo-card,
body[data-theme="light"] .echo-login .echo-card {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 250, 255, 0.92));
    border-color: rgba(15, 23, 42, 0.12);
    box-shadow: 0 10px 32px rgba(15, 23, 42, 0.12);
}

body[data-theme="light"] .echo-contact .echo-card label,
body[data-theme="light"] .echo-login .echo-card label {
    color: #324255;
}

body[data-theme="light"] .echo-contact .echo-card .form-control,
body[data-theme="light"] .echo-login .echo-card .form-control {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(15, 23, 42, 0.18);
    color: #1f2937;
}

body[data-theme="light"] .echo-login .echo-card .input-group .password-btn {
    background: rgba(255, 255, 255, 0.96);
    border-color: rgba(15, 23, 42, 0.18);
    color: #2a7947;
}

body[data-theme="light"] .echo-login .echo-card .input-group .password-btn:hover {
    background: rgba(243, 247, 255, 0.98);
}

/* body[data-theme="light"] .echo-contact .echo-card .btn-echo,
body[data-theme="light"] .echo-login .echo-card .btn-echo {
    background: #2f9e62;
    border-color: #2a7947;
    box-shadow: 0 10px 24px rgba(42, 121, 71, 0.28);
} */

/*!**********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/media-extra-small.css ***!
  \**********************************************************************************************************************************/
@media (width <= 576px) { 
	.echo-header__nav {
		display: none;
		position: absolute;
		inset: 70px clamp(1rem, 2vw, 2.75rem) auto clamp(1rem, 2vw, 2.75rem);
		flex-direction: column;
		background: var(--site-surface);
		border: 1px solid var(--site-border);
		border-radius: 16px;
		padding: 1rem;
		box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
	}

	.echo-header__nav.is-open {
		display: flex;
	}

	.echo-header__burger {
		display: inline-flex;
	}

	.echo-header__cta,
	.echo-theme-toggle,
	.echo-header__cart {
		width: 100%;
		text-align: center;
		justify-content: center;
	}

	.shop-product-page .shop-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.shop-product-page .shop-kv {
		grid-template-columns: 1fr;
	}

	.shop-product-page .shop-meta-grid {
		grid-template-columns: 1fr;
	}

	.echo-landing .feature {
		grid-column: span 12;
	}

	.echo-landing .shop-spotlight {
		padding: 4.8rem 1rem 2rem;
	}

	.echo-landing .shop-spotlight .container {
		padding: 1.4rem;
	}

	.echo-landing .shop-spotlight h1 {
		font-size: clamp(1.55rem, 8.6vw, 2.2rem);
	}

	.echo-landing .shop-spotlight-head {
		flex-direction: column;
		align-items: flex-start;
	}

	.echo-landing .shop-spotlight-actions {
		width: 100%;
		flex-direction: column;
		align-items: stretch;
	}

	.echo-landing .shop-spotlight-controls {
		width: 100%;
		justify-content: flex-end;
	}

	.echo-landing .shop-spotlight .btn {
		width: 100%;
	}

	.echo-landing .shop-spotlight-slider {
		padding-bottom: 1.7rem;
	}

	.echo-landing .video-card {
		grid-column: span 12;
	}

	.echo-footer__top,
	.echo-footer__bottom {
		flex-direction: column;
		align-items: stretch;
	}

	.echo-footer__links-grid {
		grid-template-columns: 1fr;
	}

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

	.shop-cart-page .shop-cart-item {
		grid-template-columns: 1fr;
		align-items: flex-start;
	}

	.echo-contact,
	.echo-login {
		padding: 3rem 1.25rem;
	}

	.echo-contact .echo-card,
	.echo-login .echo-card,
	.echo-contact .echo-hero,
	.echo-login .echo-hero {
		grid-column: span 12;
	}

	.echo-contact .echo-card,
	.echo-login .echo-card {
		padding: 1.5rem;
	}

	.echo-login .echo-card .input-group {
		flex-direction: column;
	}

	.echo-login .echo-card .password-btn {
		width: 100%;
		justify-content: center;
	}
}

/*!****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/media-small.css ***!
  \****************************************************************************************************************************/
@media (576px <= width <= 767px) { 
	.echo-header__nav {
		display: none;
		position: absolute;
		inset: 70px clamp(1rem, 2vw, 2.75rem) auto clamp(1rem, 2vw, 2.75rem);
		flex-direction: column;
		background: var(--site-surface);
		border: 1px solid var(--site-border);
		border-radius: 16px;
		padding: 1rem;
		box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
	}

	.echo-header__nav.is-open {
		display: flex;
	}

	.echo-header__burger {
		display: inline-flex;
	}

	.echo-header__cta,
	.echo-theme-toggle,
	.echo-header__cart {
		width: 100%;
		text-align: center;
		justify-content: center;
	}

	.shop-product-page .shop-gallery {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.shop-product-page .shop-kv {
		grid-template-columns: 1fr;
	}

	.shop-product-page .shop-meta-grid {
		grid-template-columns: 1fr;
	}

	.echo-landing .feature {
		grid-column: span 6;
	}

	.echo-landing .video-card {
		grid-column: span 12;
	}

	.echo-footer__top,
	.echo-footer__bottom {
		flex-direction: column;
		align-items: stretch;
	}

	.echo-footer__links-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

	.shop-cart-page .shop-cart-item {
		grid-template-columns: 1fr;
		align-items: flex-start;
	}

	.echo-contact,
	.echo-login {
		padding: 3rem 1.25rem;
	}

	.echo-contact .echo-card,
	.echo-login .echo-card,
	.echo-contact .echo-hero,
	.echo-login .echo-hero {
		grid-column: span 12;
	}
}

/*!*****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/media-medium.css ***!
  \*****************************************************************************************************************************/
@media (768px  <= width <= 991px) { 
	.echo-header__nav {
		display: none;
		position: absolute;
		inset: 70px clamp(1rem, 2vw, 2.75rem) auto clamp(1rem, 2vw, 2.75rem);
		flex-direction: column;
		background: var(--site-surface);
		border: 1px solid var(--site-border);
		border-radius: 16px;
		padding: 1rem;
		box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2);
	}

	.echo-header__nav.is-open {
		display: flex;
	}

	.echo-header__burger {
		display: inline-flex;
	}

	.echo-header__cta,
	.echo-theme-toggle,
	.echo-header__cart {
		width: 100%;
		text-align: center;
		justify-content: center;
	}

	.shop-product-page .shop-gallery {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.shop-product-page .shop-kv {
		grid-template-columns: 1fr;
	}

	.shop-product-page .shop-meta-grid {
		grid-template-columns: 1fr;
	}

	.echo-landing .feature {
		grid-column: span 6;
	}

	.echo-landing .video-card {
		grid-column: span 12;
	}

	.echo-footer__top,
	.echo-footer__bottom {
		flex-direction: column;
		align-items: stretch;
	}

	.echo-footer__links-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

	.echo-contact,
	.echo-login {
		padding: 3rem 1.25rem;
	}

	.echo-contact .echo-card,
	.echo-login .echo-card,
	.echo-contact .echo-hero,
	.echo-login .echo-hero {
		grid-column: span 12;
	}
}

/*!****************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/media-large.css ***!
  \****************************************************************************************************************************/
@media (992px <= width <= 1199px) { 
	.shop-checkout-page .shop-checkout-summary {
		position: sticky;
		top: 6.5rem;
		align-self: flex-start;
	}
}

/*!**********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/media-extra-large.css ***!
  \**********************************************************************************************************************************/
@media (1200px <= width <= 1399px) { 
	.shop-checkout-page .shop-checkout-summary {
		position: sticky;
		top: 6.5rem;
		align-self: flex-start;
	}
}
/*!****************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/media-extra-extra-large.css ***!
  \****************************************************************************************************************************************/
@media (1400px <= width) { 
	.shop-checkout-page .shop-checkout-summary {
		position: sticky;
		top: 6.5rem;
		align-self: flex-start;
	}
}

/*!***********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/front/config.css ***!
  \***********************************************************************************************************************/
/* COLORS ZONE---------------------------- */

[data-theme="light"] {
    --white1: #FFF;
    --white2: #F9F9F9;
    --white3: #e1e1e1;
    --black1:#292E3D;
    --black2:#212529;
    --black3:#181616;
    /* --primary:#052825; */
    --primary:#C0589E;
    --secondary:#C5DCF9;
    --tertiary:#1A73E8;
    --quaternary:#272626;
    --quinary: none;
    --radius:35px;

}

[data-theme="dark"] {
    --white1: #000000;
    --white2: #272525;
    --white3: #3f3b3b;
    --black1:#e1e4f0;
}

/* --------------------------------------- */

* {
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    font-style: normal;

    transition: all 0.3s ease;
    scroll-behavior: smooth;
}
body{
    background: #FAFAFA;
}

h1{
    font-family: "Krona One", sans-serif;
    font-weight: 400;
    font-style: normal;
}
h2, h3, h4, h5, h6{
    font-family: "Roboto", sans-serif;
    font-weight: 500;
    font-style: normal;
}

.bg-primary{
    background: var(--primary) !important;
}
.bg-secondary{
    background: var(--secondary) !important;
}
.bg-white{
    background: var(--white1) !important;
}
.bg-black{
    background: var(--black1) !important;
}

.clr-white{
    color: var(--white1) !important;
}
.clr-black{
    color: var(--black1) !important;
}
.clr-primary{
    color: var(--primary) !important;
}
.clr-secondary{
    color: var(--secondary) !important;
}


/* BUTTON START*/
.btn-primary{
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
}
.btn-circle{
    height: fit-content;
    width: fit-content;
    display: flex;
    padding: 25px;
    gap: 10px;
}
.btn-circle-primary{
    border-radius: var(--radius);
    border: 1px solid var(--secondary);
    background: var(--primary);
}
.btn-circle-primary:hover{
    background: var(--secondary);
}

.btn-circle-white{
    border-radius: var(--radius);
    border: 1px solid var(--secondary);
    background: white;
}

/* BUTTON END  */
/*!*********************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/bundle/front/gestionemployee/styles/style.css ***!
  \*********************************************************************************************************************************************/
.password input{
    margin: 0px !important;
}
.pop-up{
    width: 25em;
    padding: 3em;
    border-radius: 2em;
    background: var(--white1);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.02), 0 6px 20px rgba(0, 0, 0, 0.02);
    border:3px solid rgba(0, 0, 0, 0.1);
}
.pop-up .form-signin{
    display: flex;
    flex-direction: column;
    gap: 1em;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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OztBQUVBO0lBQ0ksb0NBQW9DO0lBQ3BDLGdCQUFnQjtJQUNoQixrQkFBa0I7QUFDdEI7QUFDQTtJQUNJLGlDQUFpQztJQUNqQyxnQkFBZ0I7SUFDaEIsa0JBQWtCO0FBQ3RCOztBQUVBO0lBQ0kscUNBQXFDO0FBQ3pDO0FBQ0E7SUFDSSx1Q0FBdUM7QUFDM0M7QUFDQTtJQUNJLG9DQUFvQztBQUN4QztBQUNBO0lBQ0ksb0NBQW9DO0FBQ3hDOztBQUVBO0lBQ0ksK0JBQStCO0FBQ25DO0FBQ0E7SUFDSSwrQkFBK0I7QUFDbkM7QUFDQTtJQUNJLGdDQUFnQztBQUNwQztBQUNBO0lBQ0ksa0NBQWtDO0FBQ3RDOzs7QUFHQSxnQkFBZ0I7QUFDaEI7SUFDSSwyQ0FBMkM7SUFDM0MsdUNBQXVDO0FBQzNDO0FBQ0E7SUFDSSxtQkFBbUI7SUFDbkIsa0JBQWtCO0lBQ2xCLGFBQWE7SUFDYixhQUFhO0lBQ2IsU0FBUztBQUNiO0FBQ0E7SUFDSSw0QkFBNEI7SUFDNUIsa0NBQWtDO0lBQ2xDLDBCQUEwQjtBQUM5QjtBQUNBO0lBQ0ksNEJBQTRCO0FBQ2hDOztBQUVBO0lBQ0ksNEJBQTRCO0lBQzVCLGtDQUFrQztJQUNsQyxpQkFBaUI7QUFDckI7O0FBRUEsZ0JBQWdCLEM7Ozs7QUN6R2hCO0lBQ0ksc0JBQXNCO0FBQzFCO0FBQ0E7SUFDSSxXQUFXO0lBQ1gsWUFBWTtJQUNaLGtCQUFrQjtJQUNsQix5QkFBeUI7SUFDekIseUVBQXlFO0lBQ3pFLG1DQUFtQztBQUN2QztBQUNBO0lBQ0ksYUFBYTtJQUNiLHNCQUFzQjtJQUN0QixRQUFRO0FBQ1osQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3ZlbmRvci9zeW1mb255L3V4LXRvZ2dsZS1wYXNzd29yZC9hc3NldHMvZGlzdC9zdHlsZS5taW4uY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9zd2lwZXIvc3dpcGVyLmNzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvc3dpcGVyL21vZHVsZXMvbmF2aWdhdGlvbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL3N3aXBlci9tb2R1bGVzL3BhZ2luYXRpb24uY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvZnJvbnQvYXBwLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Zyb250L21lZGlhLWV4dHJhLXNtYWxsLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Zyb250L21lZGlhLXNtYWxsLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2Zyb250L21lZGlhLW1lZGl1bS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9mcm9udC9tZWRpYS1sYXJnZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9mcm9udC9tZWRpYS1leHRyYS1sYXJnZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9mcm9udC9tZWRpYS1leHRyYS1leHRyYS1sYXJnZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9mcm9udC9jb25maWcuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9idW5kbGUvZnJvbnQvZ2VzdGlvbmVtcGxveWVlL3N0eWxlcy9zdHlsZS5jc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLnRvZ2dsZS1wYXNzd29yZC1jb250YWluZXJ7cG9zaXRpb246cmVsYXRpdmV9LnRvZ2dsZS1wYXNzd29yZC1pY29ue3dpZHRoOjFyZW07aGVpZ2h0OjFyZW19LnRvZ2dsZS1wYXNzd29yZC1idXR0b257YmFja2dyb3VuZC1jb2xvcjojMDAwMDtib3JkZXI6bm9uZTtmbGV4LWRpcmVjdGlvbjpyb3c7cGxhY2UtaXRlbXM6Y2VudGVyO2NvbHVtbi1nYXA6LjI1cmVtO2hlaWdodDoxcmVtO2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OjEuMjVyZW07ZGlzcGxheTpmbGV4O3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMS4yNXJlbTtyaWdodDouNXJlbX0iLCIvKipcbiAqIFN3aXBlciAxMi4xLjNcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwczovL3N3aXBlcmpzLmNvbVxuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMjYgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogTWFyY2ggMjQsIDIwMjZcbiAqL1xuXG46cm9vdCB7XG4gIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiAjMDA3YWZmO1xuICAvKlxuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gIC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGluaXRpYWw7XG4gICovXG59XG46aG9zdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogdmFyKC0tc3dpcGVyLXdyYXBwZXItdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24sIGluaXRpYWwpO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1pb3MgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cbi5zd2lwZXItaG9yaXpvbnRhbCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG4uc3dpcGVyLXZlcnRpY2FsIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teDtcbn1cbi5zd2lwZXItc2xpZGUge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1hdXRvaGVpZ2h0LFxuLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci13cmFwcGVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0O1xufVxuLnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci0zZC5zd2lwZXItY3NzLW1vZGUgLnN3aXBlci13cmFwcGVyIHtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbn1cbi5zd2lwZXItM2QgLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItM2Qge1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xuICAuc3dpcGVyLXNsaWRlLFxuICAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB9XG59XG5cbi8qIENTUyBNb2RlICovXG4uc3dpcGVyLWNzcy1tb2RlIHtcbiAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTsgLyogRm9yIEZpcmVmb3ggKi9cbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8qIEZvciBJbnRlcm5ldCBFeHBsb3JlciBhbmQgRWRnZSAqL1xuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0IHN0YXJ0O1xuICB9XG4gICYuc3dpcGVyLWhvcml6b250YWwge1xuICAgID4gLnN3aXBlci13cmFwcGVyIHtcbiAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgIH1cbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLXNsaWRlcy1vZmZzZXQtYmVmb3JlKTtcbiAgICAgIHNjcm9sbC1tYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1zd2lwZXItc2xpZGVzLW9mZnNldC1iZWZvcmUpO1xuICAgIH1cbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4taW5saW5lLWVuZDogdmFyKC0tc3dpcGVyLXNsaWRlcy1vZmZzZXQtYWZ0ZXIpO1xuICAgIH1cbiAgfVxuICAmLnN3aXBlci12ZXJ0aWNhbCB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnk7XG4gICAgfVxuICAgID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1zbGlkZXMtb2Zmc2V0LWJlZm9yZSk7XG4gICAgICBzY3JvbGwtbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItc2xpZGVzLW9mZnNldC1iZWZvcmUpO1xuICAgIH1cbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYmxvY2stZW5kOiB2YXIoLS1zd2lwZXItc2xpZGVzLW9mZnNldC1hZnRlcik7XG4gICAgfVxuICB9XG4gICYuc3dpcGVyLWZyZWUtbW9kZSB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogbm9uZTtcbiAgICB9XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBub25lO1xuICAgIH1cbiAgfVxuICAmLnN3aXBlci1jZW50ZXJlZCB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgb3JkZXI6IDk5OTk7XG4gICAgfVxuICAgID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIHNjcm9sbC1zbmFwLXN0b3A6IGFsd2F5cztcbiAgICB9XG4gIH1cbiAgJi5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWwge1xuICAgID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG4gICAgfVxuICAgID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xuICAgIH1cbiAgfVxuICAmLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwge1xuICAgID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbiAgICB9XG4gICAgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbiAgICB9XG4gIH1cbn1cblxuLyogU2xpZGUgc3R5bGVzIHN0YXJ0ICovXG4vKiAzRCBTaGFkb3dzICovXG4uc3dpcGVyLTNkIHtcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICB3aWR0aDogNDJweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbiAgbWFyZ2luLXRvcDogLTIxcHg7XG4gIHotaW5kZXg6IDEwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogNHB4IHNvbGlkIHZhcigtLXN3aXBlci1wcmVsb2FkZXItY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnN3aXBlcjpub3QoLnN3aXBlci13YXRjaC1wcm9ncmVzcyksXG4uc3dpcGVyLXdhdGNoLXByb2dyZXNzIC5zd2lwZXItc2xpZGUtdmlzaWJsZSB7XG4gIC5zd2lwZXItbGF6eS1wcmVsb2FkZXIge1xuICAgIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbiAgfVxufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZSB7XG4gIC0tc3dpcGVyLXByZWxvYWRlci1jb2xvcjogI2ZmZjtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItYmxhY2sge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICMwMDA7XG59XG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKiBTbGlkZSBzdHlsZXMgZW5kICovXG4iLCI6cm9vdCB7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZTogNDRweDtcbiAgLypcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0OiA1MCU7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0OiA0cHg7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gICovXG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICB3aWR0aDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSk7XG5cbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG4gICYuc3dpcGVyLWJ1dHRvbi1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC4zNTtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgJi5zd2lwZXItYnV0dG9uLWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkICYge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIDo6c2xvdHRlZChzdmcpLFxuICBzdmcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLnN3aXBlci1idXR0b24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgdG9wOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LCA1MCUpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtICh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDIpKTtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYge1xuICBsZWZ0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDRweCk7XG4gIHJpZ2h0OiBhdXRvO1xuICA6OnNsb3R0ZWQoLnN3aXBlci1uYXZpZ2F0aW9uLWljb24pLFxuICAuc3dpcGVyLW5hdmlnYXRpb24taWNvbiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDRweCk7XG4gIGxlZnQ6IGF1dG87XG59XG4uc3dpcGVyLWhvcml6b250YWwge1xuICAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICB+IC5zd2lwZXItYnV0dG9uLXByZXYsXG4gIH4gLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgdG9wOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi10b3Atb2Zmc2V0LCA1MCUpO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoMHB4IC0gKHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gMikpO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICYgfiAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICAmLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCxcbiAgJi5zd2lwZXItcnRsIH4gLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCA0cHgpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLW5leHQsXG4gICYgfiAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICAmLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldixcbiAgJi5zd2lwZXItcnRsIH4gLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgcmlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpZGVzLW9mZnNldCwgNHB4KTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5zd2lwZXItYnV0dG9uLXByZXYsXG4gICYgfiAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICAmLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCxcbiAgJi5zd2lwZXItcnRsIH4gLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgOjpzbG90dGVkKC5zd2lwZXItbmF2aWdhdGlvbi1pY29uKSxcbiAgICAuc3dpcGVyLW5hdmlnYXRpb24taWNvbiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxuICAmLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tcHJldixcbiAgJi5zd2lwZXItcnRsIH4gLnN3aXBlci1idXR0b24tcHJldiB7XG4gICAgOjpzbG90dGVkKC5zd2lwZXItbmF2aWdhdGlvbi1pY29uKSxcbiAgICAuc3dpcGVyLW5hdmlnYXRpb24taWNvbiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB9XG4gIH1cbn1cbi5zd2lwZXItdmVydGljYWwge1xuICAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICAuc3dpcGVyLWJ1dHRvbi1uZXh0LFxuICB+IC5zd2lwZXItYnV0dG9uLXByZXYsXG4gIH4gLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgbGVmdDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tdG9wLW9mZnNldCwgNTAlKTtcbiAgICByaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyAyKSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuICB+IC5zd2lwZXItYnV0dG9uLXByZXYge1xuICAgIHRvcDogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2lkZXMtb2Zmc2V0LCA0cHgpO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICA6OnNsb3R0ZWQoLnN3aXBlci1uYXZpZ2F0aW9uLWljb24pLFxuICAgIC5zd2lwZXItbmF2aWdhdGlvbi1pY29uIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgfVxuICB9XG4gIC5zd2lwZXItYnV0dG9uLW5leHQsXG4gIH4gLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICAgYm90dG9tOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaWRlcy1vZmZzZXQsIDRweCk7XG4gICAgdG9wOiBhdXRvO1xuICAgIDo6c2xvdHRlZCguc3dpcGVyLW5hdmlnYXRpb24taWNvbiksXG4gICAgLnN3aXBlci1uYXZpZ2F0aW9uLWljb24ge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIH1cbiAgfVxufVxuIiwiOnJvb3Qge1xuICAvKlxuICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWxlZnQ6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcmlnaHQ6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1ib3R0b206IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi10b3A6IGF1dG87XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24tY29sb3I6IGluaGVyaXQ7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItYmctY29sb3I6IHJnYmEoMCwwLDAsMC4yNSk7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItc2l6ZTogNHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplOiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoOiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodDogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiAjMDAwO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5OiAwLjI7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHk6IDE7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiA0cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcDogNnB4O1xuICAqL1xufVxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IDMwMG1zIG9wYWNpdHk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHotaW5kZXg6IDEwO1xuICAmLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQgPiAmLFxuICAmLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qIENvbW1vbiBTdHlsZXMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1mcmFjdGlvbixcbi5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwge1xuICBib3R0b206IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJvdHRvbSwgOHB4KTtcbiAgdG9wOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi10b3AsIGF1dG8pO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEJ1bGxldHMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXYge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoLCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ib3JkZXItcmFkaXVzLCA1MCUpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3IsICMwMDApO1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtb3BhY2l0eSwgMC4yKTtcbiAgYnV0dG9uJiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tY2xpY2thYmxlICYge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gICY6b25seS1jaGlsZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5LCAxKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xufVxuXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1yaWdodCwgOHB4KTtcbiAgbGVmdDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tbGVmdCwgYXV0byk7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIG1hcmdpbjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcCwgNnB4KSAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gICYuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDhweDtcbiAgICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHRyYW5zaXRpb246XG4gICAgICAgIDIwMG1zIHRyYW5zZm9ybSxcbiAgICAgICAgMjAwbXMgdG9wO1xuICAgIH1cbiAgfVxufVxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgbWFyZ2luOiAwIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1ob3Jpem9udGFsLWdhcCwgNHB4KTtcbiAgfVxuICAmLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgMjAwbXMgdHJhbnNmb3JtLFxuICAgICAgICAyMDBtcyBsZWZ0O1xuICAgIH1cbiAgfVxufVxuLnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1ydGwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2l0aW9uOlxuICAgIDIwMG1zIHRyYW5zZm9ybSxcbiAgICAyMDBtcyByaWdodDtcbn1cbi8qIEZyYWN0aW9uICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICBjb2xvcjogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24tY29sb3IsIGluaGVyaXQpO1xufVxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWJnLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMjUpKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgfVxuICAuc3dpcGVyLXJ0bCAmIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIH1cbiAgLnN3aXBlci1ob3Jpem9udGFsID4gJixcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLFxuICAuc3dpcGVyLXZlcnRpY2FsID4gJi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLCA0cHgpO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5zd2lwZXItdmVydGljYWwgPiAmLFxuICAmLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLFxuICAuc3dpcGVyLWhvcml6b250YWwgPiAmLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLFxuICAmLnN3aXBlci1wYWdpbmF0aW9uLWhvcml6b250YWwuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICAgIHdpZHRoOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1zaXplLCA0cHgpO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiKntcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBDb25maWd1cmF0aW9uIGRlIGJhc2UgKi9cbmF7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGNvbG9yOiB2YXIoLS1ibGFjazEpO1xufVxucHtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cbmJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlMSk7XG59XG4ubWlkZGxlLWNvbnRhaW5lcntcbiAgICBoZWlnaHQ6IDEwMHZoO1xufVxuXG4vKiBOT1RJRiBTV0FMICovXG5cbi5zd2FsMi1zaG93Lm5vdGlmLWN1c3RvbXtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cbi5ub3RpZi1jdXN0b20gLnN3YWwyLWljb257XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW46IDBlbTtcbiAgICBzY2FsZTogMC41O1xufVxuXG4vKiAtLS0tLS0tLS0tICovXG5cbi8qIFByb2R1Y3QgcGFnZSBzY29wZWQgc3R5bGVzICovXG4uc2hvcC1wcm9kdWN0LXBhZ2Uge1xuICAgIC0tc2hvcC1hY2NlbnQ6ICMzNGQxNmM7XG4gICAgLS1zaG9wLWFjY2VudC1zb2Z0OiAjOWNlN2I3O1xuICAgIC0tc2hvcC10ZXh0OiAjZTZlNmU2O1xuICAgIC0tc2hvcC1tdXRlZDogI2EzYTNhMztcbiAgICAtLXNob3AtY2FyZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgICAtLXNob3AtYm9yZGVyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDEyMDBweCA2MDBweCBhdCAyMCUgMCUsICMxYTFhMWEgMCUsICMwZjBmMGYgNTAlLCAjMGIwYjBiIDEwMCUpO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtaGVyby1jYXJkLFxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWluZm8tY2FyZCxcbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1wYW5lbCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2hvcC1jYXJkKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zaG9wLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig2cHgpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtY292ZXIge1xuICAgIGhlaWdodDogNDQwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgIzE1MTUxNSAwJSwgIzBmMGYwZiA1NSUsICMxMjFhMTQgMTAwJSk7XG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtYXZhaWxhYmlsaXR5LWJhZGdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAuNzVyZW07XG4gICAgbGVmdDogLjc1cmVtO1xuICAgIHotaW5kZXg6IDI7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IC40cmVtO1xuICAgIGZvbnQtc2l6ZTogLjc4cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wNmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICNiZGYyY2Y7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMTQpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjQ1KTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBwYWRkaW5nOiAuM3JlbSAuNzJyZW07XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1hdmFpbGFiaWxpdHktYmFkZ2UuaXMtb3V0IHtcbiAgICBjb2xvcjogI2YxZjFmMTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwNywgNTYsIDU2LCAwLjg1KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAxNDIsIDE0MiwgMC40NSk7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1jb3ZlciBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBzY2FsZS1kb3duO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtY292ZXIgaSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGNvbG9yOiAjOWE5YTlhO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcGlsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IC40NXJlbTtcbiAgICBmb250LXNpemU6IC43OHJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1hY2NlbnQtc29mdCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzJhNzk0NztcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4wOCk7XG4gICAgcGFkZGluZzogLjRyZW0gLjc1cmVtO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcGlsbCAuZG90IHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaG9wLWFjY2VudCk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNnB4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjE0KTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXRhZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpO1xuICAgIGNvbG9yOiAjZDhkOGQ4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCk7XG4gICAgcGFkZGluZzogLjNyZW0gLjcycmVtO1xuICAgIGZvbnQtc2l6ZTogLjhyZW07XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC10YWctLWFjY2VudCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUyLCAyMDksIDEwOCwgMC40NSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMTQpO1xuICAgIGNvbG9yOiAjYmRmMmNmO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiAnS3JvbmEgT25lJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuNDVyZW0sIDJ2dywgMnJlbSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gICAgbWFyZ2luLWJvdHRvbTogLjY1cmVtO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcHJpY2UtYm94IHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTIwZGVnLCByZ2JhKDUyLCAyMDksIDEwOCwgMC4xMikgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMykgMTAwJSk7XG4gICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDUyLCAyMDksIDEwOCwgMC4yNSk7XG4gICAgcGFkZGluZzogLjk1cmVtIDEuMXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXByaWNlIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuMzVyZW0sIDJ2dywgMS44cmVtKTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLWFjY2VudCk7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1wYXlwYWwtYm94IHtcbiAgICBtYXJnaW4tdG9wOiAuNjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgcGFkZGluZy10b3A6IC42NXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXBheXBhbC1tZXNzYWdlIHtcbiAgICBtaW4taGVpZ2h0OiA5MnB4O1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcGF5cGFsLWZhbGxiYWNrIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1hcmdpbi10b3A6IC40NXJlbTtcbiAgICBmb250LXNpemU6IC44MnJlbTtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1tdXRlZCk7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1wYXlwYWwtZmFsbGJhY2suaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1rdiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgZ2FwOiAuN3JlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWt2IGRpdiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgcGFkZGluZzogLjdyZW0gLjhyZW07XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3Ata3Ygc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAuNzRyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgY29sb3I6IHZhcigtLXNob3AtbXV0ZWQpO1xuICAgIG1hcmdpbi1ib3R0b206IC4ycmVtO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtYnJlYWRjcnVtYiB7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1tdXRlZCk7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1icmVhZGNydW1iIGEge1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLWFjY2VudC1zb2Z0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1icmVhZGNydW1iIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOiAjZDBkMGQwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoMSxcbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoMixcbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoMyxcbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoNCxcbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoNSxcbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoNiB7XG4gICAgY29sb3I6ICNmM2YzZjM7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWRlc2NyaXB0aW9uIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXJlbGF0ZWQtY2FyZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyBlYXNlLCBib3gtc2hhZG93IC4yNXMgZWFzZTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXJlbGF0ZWQtdGh1bWIge1xuICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gICAgbWFyZ2luLWJvdHRvbTogLjc1cmVtO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcmVsYXRlZC10aHVtYiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXJlbGF0ZWQtY2FyZDpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpO1xuICAgIGJveC1zaGFkb3c6IDAgMTJweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuYnRuLWVjaG8ge1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYmFja2dyb3VuZDogIzM0ZDE2YztcbiAgICBjb2xvcjogIzBiMGIwYjtcbiAgICBib3JkZXI6MHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZzogLjg1cmVtIDFyZW07XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDI0cHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMzUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMThzIGVhc2UsIGJveC1zaGFkb3cgLjE4cyBlYXNlLCBiYWNrZ3JvdW5kIC4xOHMgZWFzZTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5idG4tZWNobzpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzJmYzE2MTtcbiAgICBjb2xvcjogIzBiMGIwYjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDI4cHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMzgpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLmJ0bi1lY2hvOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjI4KSwgMCAxMHB4IDI0cHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMzUpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLmJ0bi1lY2hvOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAuNTU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5idG4tc2hvcC1zZWNvbmRhcnkge1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZDhkOGQ4O1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLmJ0bi1zaG9wLXNlY29uZGFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXB1cmNoYXNlLWNhcmQge1xuICAgIGdhcDogMXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWJ1eS1ibG9jayB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBwYWRkaW5nOiAuOXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXF0eS1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAuNzZyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgY29sb3I6IHZhcigtLXNob3AtbXV0ZWQpO1xuICAgIG1hcmdpbi1ib3R0b206IC4zNXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXF0eS1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IC41cmVtO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcXR5LWlucHV0IHtcbiAgICB3aWR0aDogOTZweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xOCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgICBjb2xvcjogI2Y0ZjRmNDtcbiAgICBwYWRkaW5nOiAuNXJlbSAuNnJlbTtcbn1cblxuLyogQ2hlY2tvdXQgcGFnZSBzY29wZWQgc3R5bGVzICovXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLWNoZWNrb3V0LXRpdGxlIHtcbiAgICBmb250LWZhbWlseTogJ0tyb25hIE9uZScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjM1cmVtLCAydncsIDEuOXJlbSk7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtY2hlY2tvdXQtc3VidGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLW11dGVkKTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1jaGVja291dC1zdGVwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjQ1KTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4xMik7XG4gICAgY29sb3I6ICNiZGYyY2Y7XG4gICAgZm9udC1zaXplOiAuNzhyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgcGFkZGluZzogLjIycmVtIC42MnJlbTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1hZGRyZXNzLWNhcmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtYWRkcmVzcy10aXRsZSB7XG4gICAgZm9udC1zaXplOiAuOTVyZW07XG4gICAgY29sb3I6ICNlOGU4ZTg7XG4gICAgbWFyZ2luLWJvdHRvbTogLjY1cmVtO1xufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLWFkZHJlc3Mtc2VsZWN0LFxuLnNob3AtY2hlY2tvdXQtcGFnZSAuZm9ybS1jb250cm9sLFxuLnNob3AtY2hlY2tvdXQtcGFnZSAuZm9ybS1zZWxlY3Qge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCk7XG4gICAgY29sb3I6ICNmMGYwZjA7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLmZvcm0tc2VsZWN0IHtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLmZvcm0tc2VsZWN0IG9wdGlvbiB7XG4gICAgYmFja2dyb3VuZDogIzExMTExMTtcbiAgICBjb2xvcjogI2YwZjBmMDtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuZm9ybS1jb250cm9sOmZvY3VzLFxuLnNob3AtY2hlY2tvdXQtcGFnZSAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MiwgMjA5LCAxMDgsIDAuNjIpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDUyLCAyMDksIDEwOCwgMC4yKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5mb3JtLWxhYmVsLFxuLnNob3AtY2hlY2tvdXQtcGFnZSAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICNkY2RjZGM7XG4gICAgZm9udC1zaXplOiAuODZyZW07XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHdpZHRoOiAxLjA1cmVtO1xuICAgIGhlaWdodDogMS4wNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAuMTZyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYWNjZW50LWNvbG9yOiAjMzRkMTZjO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuZm9ybS1jaGVjay1pbnB1dDpjaGVja2VkIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNGQxNmM7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MiwgMjA5LCAxMDgsIDAuNjIpO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKDUyLCAyMDksIDEwOCwgMC4yKTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1hZGRyZXNzLWN1cnJlbnQge1xuICAgIGZvbnQtc2l6ZTogLjgycmVtO1xuICAgIGNvbG9yOiAjY2ZjZmNmO1xuICAgIG1pbi1oZWlnaHQ6IDM2cHg7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtYWRkcmVzcy1oaW50IHtcbiAgICBmb250LXNpemU6IC43OHJlbTtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1tdXRlZCk7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtZGl2aWRlciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLWNoZWNrb3V0LWZlZWRiYWNrIHtcbiAgICBmb250LXNpemU6IC44NXJlbTtcbiAgICBjb2xvcjogI2NmY2ZjZjtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1jaGVja291dC1mZWVkYmFjay5pcy1lcnJvciB7XG4gICAgY29sb3I6ICNmZmIzYjM7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtY2hlY2tvdXQtZmVlZGJhY2suaXMtc3VjY2VzcyB7XG4gICAgY29sb3I6ICNiZGYyY2Y7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtY2hlY2tvdXQtc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxLjVlbTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1jaGVja291dC1zdW1tYXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtY2hlY2tvdXQtc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiA2ZW07XG4gICAgfVxufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLXNoaXBwaW5nLW9wdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogLjJyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1pbi1oZWlnaHQ6IDEzMnB4O1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMThzIGVhc2UsIGJveC1zaGFkb3cgLjE4cyBlYXNlLCBiYWNrZ3JvdW5kIC4xOHMgZWFzZTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1zaGlwcGluZy1vcHRpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgd2lkdGg6IDEuMXJlbTtcbiAgICBoZWlnaHQ6IDEuMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM1KTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAuNDVyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMThzIGVhc2UsIGJhY2tncm91bmQgLjE4cyBlYXNlLCBib3gtc2hhZG93IC4xOHMgZWFzZTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1zaGlwcGluZy1vcHRpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAuNDhyZW07XG4gICAgaGVpZ2h0OiAuNDhyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMwYjBiMGI7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjE2cyBlYXNlO1xufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLXNoaXBwaW5nLW9wdGlvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUyLCAyMDksIDEwOCwgMC45NSk7XG4gICAgYmFja2dyb3VuZDogIzM0ZDE2Yztcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1zaGlwcGluZy1vcHRpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQ6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1zaGlwcGluZy1vcHRpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjIyKTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1zaGlwcGluZy1vcHRpb24uaXMtc2VsZWN0ZWQge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MiwgMjA5LCAxMDgsIDAuNjIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjEyKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMjQpO1xufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLXNoaXBwaW5nLW9wdGlvbjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4zNik7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3Atc2hpcHBpbmctbmFtZSB7XG4gICAgY29sb3I6ICNmMGYwZjA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1zaGlwcGluZy1kZWxheSB7XG4gICAgY29sb3I6IHZhcigtLXNob3AtbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogLjg0cmVtO1xufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLXNoaXBwaW5nLXByaWNlIHtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1hY2NlbnQpO1xuICAgIG1hcmdpbi10b3A6IC4zNXJlbTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1jaGVja291dC1zdW1tYXJ5IC5zaG9wLXN1bW1hcnktcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogLjhyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLjU4cmVtO1xufVxuXG4uc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLWNoZWNrb3V0LXN1bW1hcnkgLnNob3Atc3VtbWFyeS10b3RhbCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG59XG5cbi5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3AtY2hlY2tvdXQtbm90ZSB7XG4gICAgY29sb3I6IHZhcigtLXNob3AtbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogLjgycmVtO1xufVxuXG4uc2hvcC1wYXltZW50LXBhZ2UgLnNob3Atc2hpcHBpbmctbGluZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IC43NXJlbTtcbn1cblxuLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtb3B0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZ2FwOiAuOHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNCk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE2MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA2KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKSk7XG4gICAgY29sb3I6ICNlZmVmZWY7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAvKiBtaW4taGVpZ2h0OiAxMzJweDsgKi9cbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UsIGJvcmRlci1jb2xvciAuMnMgZWFzZSwgYmFja2dyb3VuZCAuMnMgZWFzZSwgYm94LXNoYWRvdyAuMnMgZWFzZTtcbn1cblxuLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtb3B0aW9uOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAuODtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uc2hvcC1wYXltZW50LXBhZ2UgLnNob3AtcGF5bWVudC1vcHRpb24tdG9wIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAuNzhyZW07XG59XG5cbi5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LWNvcHkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IC4xNnJlbTtcbiAgICBmbGV4OiAxO1xufVxuXG4uc2hvcC1wYXltZW50LXBhZ2UgLnNob3AtcGF5bWVudC1pY29uIHtcbiAgICB3aWR0aDogNDJweDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xOCk7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LWljb24gc3ZnIHtcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LWljb24tLWNhcmQge1xuICAgIGNvbG9yOiAjOWZlMmI3O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjE2KTtcbn1cblxuLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtaWNvbi0tcGF5cGFsIHtcbiAgICBjb2xvcjogIzlmZDNmZjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAxMzAsIDI1NSwgMC4xOCk7XG59XG5cbi5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LWFycm93IHtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtYXJyb3cgc3ZnIHtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG59XG5cbi5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LW9wdGlvbi0tYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjYyKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTYwZGVnLCByZ2JhKDUyLCAyMDksIDEwOCwgMC4xNiksIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjA2KSk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjI0KTtcbn1cblxuLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtb3B0aW9uLS1hY3RpdmU6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg1MiwgMjA5LCAxMDgsIDAuOTIpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNjBkZWcsIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjI0KSwgcmdiYSg1MiwgMjA5LCAxMDgsIDAuMDgpKTtcbiAgICBib3gtc2hhZG93OiAwIDEycHggMjhweCByZ2JhKDE4LCA2OCwgMzksIDAuMjgpLCBpbnNldCAwIDAgMCAxcHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMzQpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbn1cblxuLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtb3B0aW9uOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUyLCAyMDksIDEwOCwgMC45NSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjI0KTtcbn1cblxuLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtYnJhbmQge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LXN0YXR1cyB7XG4gICAgZm9udC1zaXplOiAuODJyZW07XG4gICAgY29sb3I6IHJnYmEoMjM2LCAyMzYsIDIzNiwgMC44Mik7XG59XG5cbi5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LWhpbnQge1xuICAgIGZvbnQtc2l6ZTogLjc0cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDNlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiByZ2JhKDE4OSwgMjQyLCAyMDcsIDAuODgpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcXR5LWlucHV0OmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUyLCAyMDksIDEwOCwgMC41NSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjIpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtbWV0YS1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcbiAgICBnYXA6IC41NXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLW1ldGEtaXRlbSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgcGFkZGluZzogLjU1cmVtIC42NXJlbTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtbWV0YS1pdGVtIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjA2ZW07XG4gICAgY29sb3I6IHZhcigtLXNob3AtbXV0ZWQpO1xuICAgIG1hcmdpbi1ib3R0b206IC4xNXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXJlYXNzdXJhbmNlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDMpO1xuICAgIHBhZGRpbmc6IC44cmVtIC44NXJlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXJlYXNzdXJhbmNlIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IC41cmVtO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcmVhc3N1cmFuY2UgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IC41NXJlbTtcbiAgICBmb250LXNpemU6IC45cmVtO1xuICAgIGNvbG9yOiAjZDdkN2Q3O1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcmVhc3N1cmFuY2UgaSB7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50KTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXJlYXNzdXJhbmNlLXBheXBhbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogLjJyZW07XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1yZWFzc3VyYW5jZS1wYXlwYWwtbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAuNTVyZW07XG4gICAgY29sb3I6ICNkN2Q3ZDc7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAuM3JlbTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5idG4tc2hvcC1saW5rIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTU2LCAyMzEsIDE4MywgMC40KTtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1hY2NlbnQtc29mdCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMDYpO1xufVxuXG4uc2hvcC1wcm9kdWN0LXBhZ2UgLmJ0bi1zaG9wLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjYzdmNWQ4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjE2KTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWdhbGxlcnkge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgbWlubWF4KDAsIDFmcikpO1xuICAgIGdhcDogLjZyZW07XG59XG5cbi5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1nYWxsZXJ5LWl0ZW0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcbn1cblxuLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWdhbGxlcnktaXRlbSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogRnJvbnQgdGhlbWUgc3lzdGVtICovXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSB7XG4gICAgLS1zaXRlLWJnOiAjZjNmNmZiO1xuICAgIC0tc2l0ZS10ZXh0OiAjMWYyOTM3O1xuICAgIC0tc2l0ZS1tdXRlZDogIzUyNjE3MztcbiAgICAtLXNpdGUtc3VyZmFjZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkyKTtcbiAgICAtLXNpdGUtYm9yZGVyOiByZ2JhKDE1LCAyMywgNDIsIDAuMTIpO1xuICAgIC0tc2l0ZS1zaGFkb3c6IHJnYmEoMTUsIDIzLCA0MiwgMC4xMik7XG4gICAgLS1zaXRlLWhlYWRlci1iZzogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTIpLCByZ2JhKDI0MywgMjQ3LCAyNTUsIDAuOTIpKTtcbiAgICAtLXNpdGUtZm9vdGVyLWJnOiByYWRpYWwtZ3JhZGllbnQoMTIwMHB4IDQyMHB4IGF0IDE1JSAtNTAlLCAjZmZmZmZmIDAlLCAjZjRmN2ZjIDU1JSwgI2VlZjNmYSAxMDAlKTtcbiAgICAtLXNpdGUtbGFuZGluZy1iZzogcmFkaWFsLWdyYWRpZW50KDEyMDBweCA2MDBweCBhdCAyMCUgMCUsICNmZmZmZmYgMCUsICNmM2Y3ZmYgNTAlLCAjZThlZWY4IDEwMCUpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIHtcbiAgICAtLXNpdGUtYmc6ICMwYjBiMGI7XG4gICAgLS1zaXRlLXRleHQ6ICNlNmU2ZTY7XG4gICAgLS1zaXRlLW11dGVkOiAjYTNhM2EzO1xuICAgIC0tc2l0ZS1zdXJmYWNlOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpO1xuICAgIC0tc2l0ZS1ib3JkZXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAtLXNpdGUtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICAgIC0tc2l0ZS1oZWFkZXItYmc6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxNSwgMTUsIDE1LCAwLjk2KSwgcmdiYSgxMSwgMTEsIDExLCAwLjkpKTtcbiAgICAtLXNpdGUtZm9vdGVyLWJnOiByYWRpYWwtZ3JhZGllbnQoMTIwMHB4IDQyMHB4IGF0IDE1JSAtNTAlLCAjMWExYTFhIDAlLCAjMGYwZjBmIDU1JSwgIzBiMGIwYiAxMDAlKTtcbiAgICAtLXNpdGUtbGFuZGluZy1iZzogcmFkaWFsLWdyYWRpZW50KDEyMDBweCA2MDBweCBhdCAyMCUgMCUsICMxYTFhMWEgMCUsICMwZjBmMGYgNTAlLCAjMGIwYjBiIDEwMCUpO1xufVxuXG5ib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaXRlLWJnLCB2YXIoLS13aGl0ZTEpKTtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS10ZXh0LCAjMTExMTExKTtcbn1cblxuLyogSGVhZGVyICovXG4uZWNoby1oZWFkZXIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDExMDA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2l0ZS1oZWFkZXItYmcpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig4cHgpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1zaXRlLWJvcmRlcik7XG59XG5cbi5lY2hvLWhlYWRlcl9fYmFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMXJlbSBjbGFtcCgxcmVtLCAydncsIDIuNzVyZW0pO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxcmVtO1xufVxuXG4uZWNoby1oZWFkZXJfX2xlZnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNzVyZW07XG59XG5cbi5lY2hvLWhlYWRlcl9fYnJhbmQge1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lY2hvLWhlYWRlcl9fbG9nbyB7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4zNSkpO1xufVxuXG4uZWNoby1oZWFkZXJfX25hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xufVxuXG4uZWNoby1oZWFkZXJfX2xpbmsge1xuICAgIHBhZGRpbmc6IDAuNjVyZW0gMC45cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtbXV0ZWQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xNXMgZWFzZSwgY29sb3IgMC4xNXMgZWFzZSwgdHJhbnNmb3JtIDAuMTVzIGVhc2U7XG59XG5cbi5lY2hvLWhlYWRlcl9fbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMDgpO1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cblxuLmVjaG8taGVhZGVyX19saW5rLmlzLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMTIpO1xuICAgIGNvbG9yOiAjMzRkMTZjO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjM1KTtcbn1cblxuLmVjaG8taGVhZGVyX19jdGEge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgcGFkZGluZzogMC42NXJlbSAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJhY2tncm91bmQ6ICMzNGQxNmM7XG4gICAgY29sb3I6ICMwYjBiMGI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMjBweCByZ2JhKDUyLCAyMDksIDEwOCwgMC4zNSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcbn1cblxuLmVjaG8taGVhZGVyX19jdGE6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjhweCByZ2JhKDUyLCAyMDksIDEwOCwgMC40NSk7XG59XG5cbi5lY2hvLXRoZW1lLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogNDJweDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg1MiwgMjA5LCAxMDgsIDAuNDUpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjA4KTtcbiAgICBjb2xvcjogIzM0ZDE2Yztcbn1cblxuLmVjaG8tdGhlbWUtdG9nZ2xlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4xNik7XG59XG5cbi5lY2hvLWhlYWRlcl9fY2FydCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogNDJweDtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNTYsIDIzMSwgMTgzLCAwLjQ1KTtcbiAgICBjb2xvcjogIzM0ZDE2YztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4wOCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZWNoby1oZWFkZXJfX2NhcnQ6aG92ZXIge1xuICAgIGNvbG9yOiAjMmFhNTU5O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjE4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG59XG5cbi5lY2hvLWhlYWRlcl9fY2FydC1iYWRnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTdweDtcbiAgICByaWdodDogLTdweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1pbi13aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZzogMCA2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYmFja2dyb3VuZDogIzM0ZDE2YztcbiAgICBjb2xvcjogIzBiMGIwYjtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjM1KTtcbn1cblxuLmVjaG8taGVhZGVyX19jYXJ0LWJhZGdlW2RhdGEtY2FydC1jb3VudD1cIjBcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5lY2hvLWhlYWRlcl9fYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA2cHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmVjaG8taGVhZGVyX19idXJnZXIgc3BhbiB7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2l0ZS10ZXh0KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogRm9vdGVyICovXG4uZWNoby1mb290ZXIge1xuICAgIC0tZWNoby1hY2NlbnQ6ICMzNGQxNmM7XG4gICAgLS1lY2hvLWFjY2VudC1zb2Z0OiAjOWNlN2I3O1xuICAgIC0tZWNoby10ZXh0OiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIC0tZWNoby1tdXRlZDogdmFyKC0tc2l0ZS1tdXRlZCk7XG4gICAgLS1lY2hvLXN1cmZhY2U6IHZhcigtLXNpdGUtc3VyZmFjZSk7XG4gICAgLS1lY2hvLWJvcmRlcjogdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNpdGUtZm9vdGVyLWJnKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1lY2hvLXRleHQpO1xufVxuXG4uZWNoby1mb290ZXJfX2lubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAycmVtIGNsYW1wKDFyZW0sIDJ2dywgMi43NXJlbSk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMS41cmVtO1xufVxuXG4uZWNoby1mb290ZXJfX3RvcCxcbi5lY2hvLWZvb3Rlcl9fYm90dG9tIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBnYXA6IDEuNXJlbTtcbn1cblxuLmVjaG8tZm9vdGVyX19icmFuZC13cmFwLFxuLmVjaG8tZm9vdGVyX19saW5rcyxcbi5lY2hvLWZvb3Rlcl9fY29udGFjdCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZWNoby1zdXJmYWNlKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1lY2hvLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBwYWRkaW5nOiAxcmVtIDEuMXJlbTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNnB4KTtcbn1cblxuLmVjaG8tZm9vdGVyX19icmFuZC13cmFwIHtcbiAgICBtaW4td2lkdGg6IG1pbigxMDAlLCAzNjBweCk7XG59XG5cbi5lY2hvLWZvb3Rlcl9fYnJhbmQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmVjaG8tZm9vdGVyX19icmFuZC0tdGV4dCB7XG4gICAgY29sb3I6IHZhcigtLWVjaG8tdGV4dCk7XG4gICAgZm9udC1mYW1pbHk6IFwiS3JvbmEgT25lXCIsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG59XG5cbi5lY2hvLWZvb3Rlcl9fbG9nbyB7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4zNSkpO1xufVxuXG4uZWNoby1mb290ZXJfX3RhZ2xpbmUge1xuICAgIG1hcmdpbi10b3A6IDAuNjVyZW07XG4gICAgY29sb3I6IHZhcigtLWVjaG8tbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuXG4uZWNoby1mb290ZXJfX2xpbmtzIHtcbiAgICBmbGV4OiAxO1xufVxuXG4uZWNoby1mb290ZXJfX2xhYmVsIHtcbiAgICBmb250LXNpemU6IDAuNzhyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB2YXIoLS1lY2hvLWFjY2VudC1zb2Z0KTtcbn1cblxuLmVjaG8tZm9vdGVyX19saW5rcy1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTtcbiAgICBnYXA6IDAuNTVyZW07XG59XG5cbi5lY2hvLWZvb3Rlcl9fbGluayB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1lY2hvLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgICBjb2xvcjogdmFyKC0tZWNoby10ZXh0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjY1cmVtO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xOHMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMThzIGVhc2UsIGNvbG9yIDAuMThzIGVhc2U7XG59XG5cbi5lY2hvLWZvb3Rlcl9fbGluazpob3ZlciB7XG4gICAgY29sb3I6ICMxZjI5Mzc7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE1NiwgMjMxLCAxODMsIDAuNDUpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjMpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5lY2hvLWZvb3Rlcl9fbGluazpob3ZlciB7XG4gICAgY29sb3I6ICNlYWZjZjE7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMTIpO1xufVxuXG4uZWNoby1mb290ZXJfX2RpdmlkZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWVjaG8tYm9yZGVyKTtcbn1cblxuLmVjaG8tZm9vdGVyX19ib3R0b20ge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5lY2hvLWZvb3Rlcl9fY29udGFjdC10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiS3JvbmEgT25lXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBjbGFtcCgwLjlyZW0sIDEuMnZ3LCAxcmVtKTtcbiAgICBjb2xvcjogdmFyKC0tZWNoby1tdXRlZCk7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uZWNoby1mb290ZXJfX2NvbnRhY3QtbWFpbCB7XG4gICAgZm9udC1mYW1pbHk6IFwiS3JvbmEgT25lXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxcmVtLCAxLjh2dywgMS40cmVtKTtcbiAgICBjb2xvcjogIzJhYTU1OTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lY2hvLWZvb3Rlcl9fY29udGFjdC1tYWlsOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmVjaG8tZm9vdGVyX19jdGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJhY2tncm91bmQ6ICMzNGQxNmM7XG4gICAgY29sb3I6ICMwYjBiMGI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZzogMC43NXJlbSAxLjFyZW07XG4gICAgYm94LXNoYWRvdzogMCA4cHggMjBweCByZ2JhKDUyLCAyMDksIDEwOCwgMC4zNSk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZSwgYmFja2dyb3VuZCAwLjE1cyBlYXNlO1xufVxuXG4uZWNoby1mb290ZXJfX2N0YTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogIzJmYzE2MTtcbiAgICBjb2xvcjogIzBiMGIwYjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDI4cHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuNDUpO1xufVxuXG4vKiBIb21lIG1vZHVsZSAqL1xuLmVjaG8tbGFuZGluZyB7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2l0ZS1sYW5kaW5nLWJnKTtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS10ZXh0KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZWNoby1sYW5kaW5nIGEge1xuICAgIGNvbG9yOiAjMzRkMTZjO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQge1xuICAgIHBhZGRpbmc6IDZyZW0gMS41cmVtIDIuNXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyMnB4O1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgxMDAwcHggMzAwcHggYXQgMCUgMCUsIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjI2KSwgcmdiYSg1MiwgMjA5LCAxMDgsIDApIDUwJSksIHZhcigtLXNpdGUtc3VyZmFjZSk7XG4gICAgYm94LXNoYWRvdzogMCAyNHB4IDUwcHggcmdiYSgwLCAwLCAwLCAwLjI0KTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtaGVhZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAxcmVtO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjFyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNzVyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LWNvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC40NXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zbGlkZXItYnRuIHtcbiAgICB3aWR0aDogMzhweDtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtdGV4dCk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zbGlkZXItYnRuOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjQ1KTtcbiAgICBjb2xvcjogIzhkZjBiMTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zbGlkZXItYnRuOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjM1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LWtpY2tlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgbWFyZ2luOiAwIDAgMC43NXJlbTtcbiAgICBwYWRkaW5nOiAwLjNyZW0gMC43cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjUpO1xuICAgIGNvbG9yOiAjOGRmMGIxO1xuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQgaDEge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuOHJlbSwgNC4ydncsIDNyZW0pO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbWF4LXdpZHRoOiA4NTBweDtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtbGVhZCB7XG4gICAgbWFyZ2luOiAwLjlyZW0gMCAwO1xuICAgIG1heC13aWR0aDogNzYwcHg7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMnZ3LCAxLjJyZW0pO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodCAuYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMS4xcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0IC5idG4tc2hvcC12aWV3LWFsbCB7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtdGV4dCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXNpdGUtYm9yZGVyKTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQgLmJ0bi1zaG9wLXZpZXctYWxsOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjQpO1xuICAgIGNvbG9yOiAjOGRmMGIxO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1zbGlkZXIgLnN3aXBlci13cmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtc2xpZGVyIC5zd2lwZXItc2xpZGUge1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtY2FyZCB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zaXRlLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtaGl0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjlyZW07XG4gICAgcGFkZGluZzogMC43NXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtdGh1bWIge1xuICAgIGhlaWdodDogMjgwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6IHJnYigyNTUsIDI1NSwgMjU1KTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtdGh1bWIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtcGxhY2Vob2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjQ1cmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1yZWYge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogIzhkZjBiMTtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LWJvZHkgaDMge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS10ZXh0KTtcbiAgICBmb250LXNpemU6IDEuMDJyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LWRlc2Mge1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS1tdXRlZCk7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBwYWRkaW5nOiAwLjg1cmVtIDAuNzVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXNpdGUtYm9yZGVyKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC43NXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtZm9vdGVyIHN0cm9uZyB7XG4gICAgY29sb3I6ICM4ZGYwYjE7XG4gICAgZm9udC1zaXplOiAxLjAycmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1lbXB0eSB7XG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLXNpdGUtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgY29sb3I6IHZhcigtLXNpdGUtbXV0ZWQpO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1wb2ludHMge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAwLjc1cmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1wb2ludHMgc3BhbiB7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtbXV0ZWQpO1xuICAgIHBhZGRpbmc6IDAuMzVyZW0gMC43cmVtO1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zbGlkZXItcGFnaW5hdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNHJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zbGlkZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc2l0ZS10ZXh0KTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2hvcC1zbGlkZXItcGFnaW5hdGlvbiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kOiAjMzRkMTZjO1xufVxuXG4uZWNoby1sYW5kaW5nIC5oZXJvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogM3JlbSAxLjVyZW0gM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5lY2hvLWxhbmRpbmcgLmhlcm8gaDEsXG4uZWNoby1sYW5kaW5nIC5oZXJvIGgyIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuNnJlbSwgMy42dncsIDIuNnJlbSk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgICBtYXJnaW46IDAgMCAwLjVyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLmhlcm8gcC5sZWFkIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDFyZW0sIDJ2dywgMS4yNXJlbSk7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtbXV0ZWQpO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogOTAwcHg7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNvY2lhbC1saW5rcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDFyZW07XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNvY2lhbC1saW5rcyBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNvY2lhbC1saW5rcyBhOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCk7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNvY2lhbC1saW5rcyBhLnlvdXR1YmUge1xuICAgIGJhY2tncm91bmQ6ICNmZjAwMDA7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNvY2lhbC1saW5rcyBhLnRpa3RvayB7XG4gICAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cblxuLmVjaG8tbGFuZGluZyAuc29jaWFsLWxpbmtzIGEuaW5zdGFncmFtIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmMDk0MzMgMCUsICNlNjY4M2MgMjUlLCAjZGMyNzQzIDUwJSwgI2NjMjM2NiA3NSUsICNiYzE4ODggMTAwJSk7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnNvY2lhbC1saW5rcyBhIGkge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAycmVtIDEuNXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuc2VjdGlvbiAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmVjaG8tbGFuZGluZyAuZmVhdHVyZXMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgZ2FwOiAxcmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5mZWF0dXJlIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA0O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNpdGUtc3VyZmFjZSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAuZmVhdHVyZSBoMyB7XG4gICAgbWFyZ2luOiAwIDAgMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC5mZWF0dXJlIHAge1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLW11dGVkKTtcbn1cblxuLmVjaG8tbGFuZGluZyAudmlkZW9zIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xuICAgIGdhcDogMXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAudmlkZW8tY2FyZCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNjtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaXRlLXN1cmZhY2UpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNpdGUtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5lY2hvLWxhbmRpbmcgLnZpZGVvLXRodW1iIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnZpZGVvLXRodW1iIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZpbHRlcjogc2F0dXJhdGUoMS4wNSkgY29udHJhc3QoMS4wNSk7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnZpZGVvLXRodW1iIC5wbGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMCksIHJnYmEoMCwgMCwgMCwgMC4yMikpO1xufVxuXG4uZWNoby1sYW5kaW5nIC5wbGF5IC5idG4ge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogNjRweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6ICMzNGQxNmM7XG4gICAgY29sb3I6ICMwYjBiMGI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDI0cHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMzUpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xufVxuXG4uZWNoby1sYW5kaW5nIC5wbGF5IC5idG46aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi5lY2hvLWxhbmRpbmcgLnZpZGVvLWJvZHkge1xuICAgIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcbn1cblxuLmVjaG8tbGFuZGluZyAudmlkZW8tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW46IDAgMCAwLjI1cmVtO1xufVxuXG4uZWNoby1sYW5kaW5nIC52aWRlby1tZXRhIHtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS1tdXRlZCk7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLmN0YSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDJyZW0gMS41cmVtIDNyZW07XG59XG5cbi5lY2hvLWxhbmRpbmcgLmN0YSAuYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIGJhY2tncm91bmQ6ICMzNGQxNmM7XG4gICAgY29sb3I6ICMwYjBiMGI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzJhNzk0NztcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBib3gtc2hhZG93OiAwIDhweCAyNHB4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjM1KTtcbn1cblxuLmVjaG8tbGFuZGluZyAuZGl2aWRlciB7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB0cmFuc3BhcmVudCwgIzM0ZDE2YywgdHJhbnNwYXJlbnQpO1xuICAgIG1hcmdpbjogMS41cmVtIGF1dG87XG4gICAgbWF4LXdpZHRoOiA0ODBweDtcbn1cblxuLyogQ29udGFjdCBtb2R1bGUgKi9cbi5lY2hvLWNvbnRhY3Qge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudCgxMjAwcHggNjAwcHggYXQgMjAlIDAlLCAjMWExYTFhIDAlLCAjMGYwZjBmIDUwJSwgIzBiMGIwYiAxMDAlKTtcbiAgICBjb2xvcjogI2U2ZTZlNjtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAycmVtO1xuICAgIHBhZGRpbmc6IDRyZW0gMS41cmVtIDNyZW07XG59XG5cbi5lY2hvLWNvbnRhY3QgLmNvbnRhaW5lciB7XG4gICAgZ3JpZC1jb2x1bW46IDIgLyBzcGFuIDEwO1xuICAgIG1heC13aWR0aDogMTEwMHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgZ2FwOiAxLjVyZW07XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWhlcm8ge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMXJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmVjaG8tY29udGFjdCAuZWNoby1oZXJvIGgxIHtcbiAgICBmb250LXNpemU6IGNsYW1wKDJyZW0sIDR2dywgM3JlbSk7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG59XG5cbi5lY2hvLWNvbnRhY3QgLmVjaG8taGVybyBwIHtcbiAgICBjb2xvcjogI2JkYmRiZDtcbiAgICBtYXgtd2lkdGg6IDcwMHB4O1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmVjaG8tY29udGFjdCAuZWNoby1oZXJvIC5hY2NlbnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC4zNXJlbSAwLjc1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyYTc5NDc7XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMDgpO1xuICAgIGNvbG9yOiAjOWNlN2I3O1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWhlcm8gLmFjY2VudCBzdmcge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbn1cblxuLmVjaG8tY29udGFjdCAuZWNoby1tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDAuNzVyZW07XG4gICAgY29sb3I6ICM5YTlhOWE7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWNoaXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjRyZW07XG4gICAgcGFkZGluZzogMC4zNXJlbSAwLjdyZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWNoaXAgLmRvdCB7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZDogIzM0ZDE2YztcbiAgICBib3gtc2hhZG93OiAwIDAgMCA2cHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMTUpO1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWNhcmQge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIHBhZGRpbmc6IDEuNzVyZW07XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNnB4KTtcbn1cblxuLmVjaG8tY29udGFjdCAuZWNoby1jYXJkIGgyIHtcbiAgICBtYXJnaW46IDAgMCAwLjVyZW0gMDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbi5lY2hvLWNvbnRhY3QgLmVjaG8tY2FyZCAuc3VidGl0bGUge1xuICAgIGNvbG9yOiAjOWE5YTlhO1xuICAgIG1hcmdpbjogMCAwIDEuMjVyZW0gMDtcbn1cblxuLmVjaG8tY29udGFjdCAuZWNoby1jYXJkIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICNkY2RjZGM7XG59XG5cbi5lY2hvLWNvbnRhY3QgLmVjaG8tY2FyZCAuZm9ybS1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGYwZjBmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgY29sb3I6ICNlNmU2ZTY7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDAuOXJlbTtcbn1cblxuLmVjaG8tY29udGFjdCAuZWNoby1jYXJkIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDUyLCAyMDksIDEwOCwgMC4yNSk7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzRkMTZjO1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWNhcmQgdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgICBtaW4taGVpZ2h0OiAxNDBweDtcbn1cblxuLmVjaG8tY29udGFjdCAuZWNoby1jYXJkIC5idG4tZWNobyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMmE3OTQ3O1xuICAgIGJhY2tncm91bmQ6ICMzNGQxNmM7XG4gICAgY29sb3I6ICMwYjBiMGI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nOiAwLjg1cmVtIDFyZW07XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDI0cHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMzUpO1xufVxuXG4uZWNoby1jb250YWN0IC5lY2hvLWNhcmQgLmFsZXJ0IHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuXG4vKiBMb2dpbiBtb2R1bGUgKi9cbi5lY2hvLWxvZ2luIHtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMTIwMHB4IDYwMHB4IGF0IDIwJSAwJSwgIzFhMWExYSAwJSwgIzBmMGYwZiA1MCUsICMwYjBiMGIgMTAwJSk7XG4gICAgY29sb3I6ICNlNmU2ZTY7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxMiwgMWZyKTtcbiAgICBnYXA6IDJyZW07XG4gICAgcGFkZGluZzogNHJlbSAxLjVyZW0gM3JlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZWNoby1sb2dpbiAuY29udGFpbmVyIHtcbiAgICBncmlkLWNvbHVtbjogMiAvIHNwYW4gMTA7XG4gICAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgYWxpZ24taXRlbXM6IHN0YXJ0O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xuICAgIGdhcDogMS41cmVtO1xufVxuXG4uZWNoby1sb2dpbiAuZWNoby1oZXJvIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDFyZW07XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWhlcm8gaDEge1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMnJlbSwgNHZ3LCAzcmVtKTtcbiAgICBtYXJnaW46IDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbn1cblxuLmVjaG8tbG9naW4gLmVjaG8taGVybyBwIHtcbiAgICBjb2xvcjogI2JkYmRiZDtcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmVjaG8tbG9naW4gLmVjaG8taGVybyAuYWNjZW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICAgIHBhZGRpbmc6IDAuMzVyZW0gMC43NXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMmE3OTQ3O1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjA4KTtcbiAgICBjb2xvcjogIzljZTdiNztcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbn1cblxuLmVjaG8tbG9naW4gLmVjaG8taGVybyAuYWNjZW50IHN2ZyB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xufVxuXG4uZWNoby1sb2dpbiAuZWNoby1jYXJkIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA1O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMikpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gICAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgICBwYWRkaW5nOiAxLjc1cmVtO1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC40NSk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDZweCk7XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgaDIge1xuICAgIG1hcmdpbjogMCAwIDAuMzVyZW0gMDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgLnN1YnRpdGxlIHtcbiAgICBjb2xvcjogIzlhOWE5YTtcbiAgICBtYXJnaW46IDAgMCAxLjI1cmVtIDA7XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgbGFiZWwge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zNXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjZGNkY2RjO1xufVxuXG4uZWNoby1sb2dpbiAuZWNoby1jYXJkIC5mb3JtLWNvbnRyb2wge1xuICAgIGJhY2tncm91bmQ6ICMwZjBmMGY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICBjb2xvcjogI2U2ZTZlNjtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMC45cmVtO1xufVxuXG4uZWNoby1sb2dpbiAuZWNoby1jYXJkIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKDUyLCAyMDksIDEwOCwgMC4yNSk7XG4gICAgYm9yZGVyLWNvbG9yOiAjMzRkMTZjO1xufVxuXG4uZWNoby1sb2dpbiAuZWNoby1jYXJkIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAvKiBnYXA6IDAuNXJlbTsgKi9cbn1cblxuLmVjaG8tbG9naW4gLmVjaG8tY2FyZCAuaW5wdXQtZ3JvdXAgLnBhc3N3b3JkLWJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBiYWNrZ3JvdW5kOiAjMWExYTFhO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgY29sb3I6ICM5Y2U3Yjc7XG4gICAgcGFkZGluZzogMC42NXJlbSAwLjlyZW07XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgLmlucHV0LWdyb3VwIC5wYXNzd29yZC1idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMyMjI7XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgLmJ0bi1lY2hvIHtcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYmFja2dyb3VuZDogIzM0ZDE2YztcbiAgICBjb2xvcjogIzBiMGIwYjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHBhZGRpbmc6IDAuODVyZW0gMXJlbTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjRweCByZ2JhKDUyLCAyMDksIDEwOCwgMC4zNSk7XG59XG5cbi5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgLmFsZXJ0IHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xufVxuXG4uZWNoby1sb2dpbiAuZWNoby1tZXRhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gICAgY29sb3I6ICM5YTlhOWE7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xufVxuXG4uZWNoby1sb2dpbiAuZWNoby1tZXRhIC5kb3Qge1xuICAgIHdpZHRoOiA4cHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICMzNGQxNmM7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNnB4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjE1KTtcbn1cblxuLyogRWNvbW1lcmNlIGxpc3QgcGFnZSAqL1xuLnNob3AtbGlzdC1wYWdlIHtcbiAgICAtLXNob3AtYWNjZW50OiAjMzRkMTZjO1xuICAgIC0tc2hvcC1hY2NlbnQtc29mdDogIzJhYTU1OTtcbiAgICAtLXNob3AtdGV4dDogdmFyKC0tc2l0ZS10ZXh0KTtcbiAgICAtLXNob3AtbXV0ZWQ6IHZhcigtLXNpdGUtbXV0ZWQpO1xuICAgIC0tc2hvcC1jYXJkOiB2YXIoLS1zaXRlLXN1cmZhY2UpO1xuICAgIC0tc2hvcC1ib3JkZXI6IHZhcigtLXNpdGUtYm9yZGVyKTtcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaXRlLWxhbmRpbmctYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtcGFuZWwsXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtbGlzdC1jYXJkLFxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLWNhdGVnb3J5LWNhcmQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNob3AtY2FyZCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2hvcC1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDQwcHggdmFyKC0tc2l0ZS1zaGFkb3cpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig2cHgpO1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtaGVhZGluZyB7XG4gICAgZm9udC1mYW1pbHk6ICdLcm9uYSBPbmUnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4zNXJlbSwgMnZ3LCAxLjg1cmVtKTtcbiAgICBtYXJnaW4tYm90dG9tOiAuNDVyZW07XG59XG5cbi5zaG9wLWxpc3QtcGFnZSAuc2hvcC1tdXRlZCB7XG4gICAgY29sb3I6IHZhcigtLXNob3AtbXV0ZWQpO1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtY2F0ZWdvcnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogLjc4cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMDZlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLWFjY2VudC1zb2Z0KTtcbiAgICBtYXJnaW4tYm90dG9tOiAuOHJlbTtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLWNhdGVnb3J5LWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAuNnJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNob3AtYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTgpO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAuNTVyZW0gLjdyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5zaG9wLWxpc3QtcGFnZSAuc2hvcC1jYXRlZ29yeS1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpO1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtY2F0ZWdvcnktbGluazpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE1NiwgMjMxLCAxODMsIDAuNDUpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjEpO1xuICAgIGNvbG9yOiAjMWYyOTM3O1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5zaG9wLWxpc3QtcGFnZSAuc2hvcC1jYXRlZ29yeS1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogI2VhZmNmMTtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLWNhdGVnb3J5LWxpbmsuYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjU1KTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4xNik7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50LXNvZnQpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5zaG9wLWxpc3QtcGFnZSAuc2hvcC10aHVtYiB7XG4gICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgI2RkZTdmNCAwJSwgI2U5ZWZmOSA1NSUsICNmN2ZhZmMgMTAwJSk7XG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMTUsIDIzLCA0MiwgMC4yKTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuc2hvcC1saXN0LXBhZ2UgLnNob3AtdGh1bWIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzBkZWcsICMxNTE1MTUgMCUsICMwZjBmMGYgNTUlLCAjMTIxYTE0IDEwMCUpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE4KTtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLXRodW1iIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtdGh1bWItcGxhY2Vob2xkZXIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXNob3AtbXV0ZWQpO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtcmVmIHtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1tdXRlZCk7XG4gICAgZm9udC1zaXplOiAuOHJlbTtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLWNhcmQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4wNXJlbTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5zaG9wLWxpc3QtcGFnZSAuc2hvcC1jYXJkLWRlc2Mge1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLW11dGVkKTtcbiAgICBmb250LXNpemU6IC44OHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIG1hcmdpbjogMDtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLXByaWNlIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLWFjY2VudCk7XG59XG5cbi5zaG9wLWxpc3QtcGFnZSAuc2hvcC1jYXJkLWhpdCB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtY2FyZC1oaXQ6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLnNob3AtbGlzdC1jYXJkIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2UsIGJveC1zaGFkb3cgLjJzIGVhc2UsIGJvcmRlci1jb2xvciAuMnMgZWFzZTtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLWxpc3QtY2FyZDpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNTYsIDIzMSwgMTgzLCAwLjM1KTtcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMjhweCB2YXIoLS1zaXRlLXNoYWRvdyk7XG59XG5cbi5zaG9wLWxpc3QtcGFnZSAuYnRuLXNob3AtbGluayB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1NiwgMjMxLCAxODMsIDAuNCk7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50LXNvZnQpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjA2KTtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5idG4tc2hvcC1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogIzFmMjkzNztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4xNik7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImRhcmtcIl0gLnNob3AtbGlzdC1wYWdlIC5idG4tc2hvcC1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogI2M3ZjVkODtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5idG4tc2hvcC1hZGQsXG4uZWNoby1sYW5kaW5nIC5idG4tc2hvcC1hZGQge1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE1NiwgMjMxLCAxODMsIDAuNSk7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50LXNvZnQpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjA4KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5zaG9wLWxpc3QtcGFnZSAuYnRuLXNob3AtYWRkOmhvdmVyLFxuLmVjaG8tbGFuZGluZyAuYnRuLXNob3AtYWRkOmhvdmVyIHtcbiAgICBjb2xvcjogIzFmMjkzNztcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4xOCk7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE1NiwgMjMxLCAxODMsIDAuNzUpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5zaG9wLWxpc3QtcGFnZSAuYnRuLXNob3AtYWRkOmhvdmVyLFxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuZWNoby1sYW5kaW5nIC5idG4tc2hvcC1hZGQ6aG92ZXIge1xuICAgIGNvbG9yOiAjYzdmNWQ4O1xufVxuXG4uc2hvcC1saXN0LXBhZ2UgLmJ0bi1zaG9wLWFkZDpkaXNhYmxlZCxcbi5lY2hvLWxhbmRpbmcgLmJ0bi1zaG9wLWFkZDpkaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLnNob3AtbGlzdC1wYWdlIC5zaG9wLWVtcHR5IHtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNob3AtYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaG9wLWNhcmQpO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xufVxuXG4vKiBFY29tbWVyY2UgY2FydCBwYWdlICovXG4uc2hvcC1jYXJ0LXBhZ2Uge1xuICAgIC0tc2hvcC1hY2NlbnQ6ICMzNGQxNmM7XG4gICAgLS1zaG9wLWFjY2VudC1zb2Z0OiAjMmFhNTU5O1xuICAgIC0tc2hvcC10ZXh0OiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIC0tc2hvcC1tdXRlZDogdmFyKC0tc2l0ZS1tdXRlZCk7XG4gICAgLS1zaG9wLWNhcmQ6IHZhcigtLXNpdGUtc3VyZmFjZSk7XG4gICAgLS1zaG9wLWJvcmRlcjogdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNpdGUtbGFuZGluZy1iZyk7XG4gICAgY29sb3I6IHZhcigtLXNob3AtdGV4dCk7XG59XG5cbi5zaG9wLWNhcnQtcGFnZSAuc2hvcC1wYW5lbCxcbi5zaG9wLWNhcnQtcGFnZSAuc2hvcC1jYXJ0LWNhcmQsXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3Atc3VtbWFyeS1jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaG9wLWNhcmQpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNob3AtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiAxOHB4O1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHZhcigtLXNpdGUtc2hhZG93KTtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNnB4KTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5zaG9wLWNhcnQtaGVhZGluZyB7XG4gICAgZm9udC1mYW1pbHk6ICdLcm9uYSBPbmUnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4ycmVtLCAydncsIDEuN3JlbSk7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3AtbXV0ZWQge1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLW11dGVkKTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5zaG9wLWNhcnQtaXRlbSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpIGF1dG8gYXV0bztcbiAgICBnYXA6IC43NXJlbTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNob3AtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xOCk7XG4gICAgcGFkZGluZzogLjlyZW07XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImRhcmtcIl0gLnNob3AtY2FydC1wYWdlIC5zaG9wLWNhcnQtaXRlbSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5zaG9wLWl0ZW0tdGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3AtaXRlbS10aXRsZTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50LXNvZnQpO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3AtaXRlbS1yZWYge1xuICAgIGZvbnQtc2l6ZTogLjgycmVtO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLW11dGVkKTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5zaG9wLWl0ZW0tcXR5IHtcbiAgICBtaW4td2lkdGg6IDQ0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjM1KTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDUyLCAyMDksIDEwOCwgMC4xMik7XG4gICAgY29sb3I6ICMyYTc5NDc7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwYWRkaW5nOiAuMjhyZW0gLjU1cmVtO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5zaG9wLWNhcnQtcGFnZSAuc2hvcC1pdGVtLXF0eSB7XG4gICAgY29sb3I6ICNiZGYyY2Y7XG59XG5cbi5zaG9wLWNhcnQtcGFnZSAuc2hvcC1pdGVtLXByaWNlIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50KTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5zaG9wLXN1bW1hcnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wNmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50LXNvZnQpO1xuICAgIG1hcmdpbi1ib3R0b206IC44cmVtO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3Atc3VtbWFyeS1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZ2FwOiAuOHJlbTtcbiAgICBmb250LXNpemU6IC45NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAuNTVyZW07XG59XG5cbi5zaG9wLWNhcnQtcGFnZSAuc2hvcC1zdW1tYXJ5LXJvdyBzdHJvbmcge1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3Atc3VtbWFyeS10b3RhbCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLXNob3AtYm9yZGVyKTtcbiAgICBtYXJnaW4tdG9wOiAuN3JlbTtcbiAgICBwYWRkaW5nLXRvcDogLjhyZW07XG4gICAgZm9udC1zaXplOiAxLjA0cmVtO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3Atc3VtbWFyeS1wYXlwYWwge1xuICAgIG1hcmdpbi10b3A6IC43NXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tc2hvcC1ib3JkZXIpO1xuICAgIHBhZGRpbmctdG9wOiAuNzVyZW07XG59XG5cbi5zaG9wLWNhcnQtcGFnZSAuc2hvcC1zdW1tYXJ5LXBheXBhbC1sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IC41NXJlbTtcbiAgICBmb250LXNpemU6IC45cmVtO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xuICAgIG1hcmdpbi1ib3R0b206IC4zcmVtO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLnNob3Atc3VtbWFyeS1wYXlwYWwtbGFiZWwgaSB7XG4gICAgY29sb3I6IHZhcigtLXNob3AtYWNjZW50KTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5zaG9wLXN1bW1hcnktcGF5cGFsLW1lc3NhZ2Uge1xuICAgIG1pbi1oZWlnaHQ6IDM4cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5idG4tc2hvcC1saW5rIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTU2LCAyMzEsIDE4MywgMC40KTtcbiAgICBjb2xvcjogdmFyKC0tc2hvcC1hY2NlbnQtc29mdCk7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMDYpO1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLmJ0bi1zaG9wLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjMWYyOTM3O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjE2KTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuc2hvcC1jYXJ0LXBhZ2UgLmJ0bi1zaG9wLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjYzdmNWQ4O1xufVxuXG4uc2hvcC1jYXJ0LXBhZ2UgLmJ0bi1zaG9wLXByaW1hcnkge1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYmFja2dyb3VuZDogIzM0ZDE2YztcbiAgICBjb2xvcjogIzBiMGIwYjtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggcmdiYSg1MiwgMjA5LCAxMDgsIDAuMzUpO1xuICAgIHBhZGRpbmc6IC43NXJlbSAxcmVtO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zaG9wLWNhcnQtcGFnZSAuYnRuLXNob3AtcHJpbWFyeTpob3ZlciB7XG4gICAgY29sb3I6ICMwYjBiMGI7XG4gICAgYmFja2dyb3VuZDogIzJmYzE2MTtcbn1cblxuLnNob3AtY2FydC1wYWdlIC5zaG9wLWVtcHR5IHtcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNob3AtYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zaG9wLWNhcmQpO1xuICAgIGNvbG9yOiB2YXIoLS1zaG9wLXRleHQpO1xufVxuXG4uY2hlY2tvdXQtYXV0aC1tb2RhbCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmNoZWNrb3V0LWF1dGgtaGVybyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IC43cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC44cmVtO1xufVxuXG4uY2hlY2tvdXQtYXV0aC1oZXJvLWljb24ge1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogMzZweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogcmdiYSg1MiwgMjA5LCAxMDgsIDAuMTgpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNTIsIDIwOSwgMTA4LCAwLjQyKTtcbiAgICBjb2xvcjogIzJhNzk0NztcbiAgICBmbGV4OiAwIDAgMzZweDtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuY2hlY2tvdXQtYXV0aC1oZXJvLWljb24ge1xuICAgIGNvbG9yOiAjYmRmMmNmO1xufVxuXG4uY2hlY2tvdXQtYXV0aC1oZXJvIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IC44N3JlbTtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS1tdXRlZCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLmNoZWNrb3V0LWF1dGgtdHJ1c3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogLjRyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLjhyZW07XG59XG5cbi5jaGVja291dC1hdXRoLXRydXN0IHNwYW4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNpdGUtYm9yZGVyKTtcbiAgICBwYWRkaW5nOiAuMjJyZW0gLjU4cmVtO1xuICAgIGZvbnQtc2l6ZTogLjc0cmVtO1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImRhcmtcIl0gLmNoZWNrb3V0LWF1dGgtdHJ1c3Qgc3BhbiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbn1cblxuLmNoZWNrb3V0LWF1dGgtc3dpdGNoIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcbiAgICBnYXA6IC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC44cmVtO1xufVxuXG4uY2hlY2tvdXQtYXV0aC10YWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtdGV4dCk7XG4gICAgcGFkZGluZzogLjVyZW0gLjY1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImRhcmtcIl0gLmNoZWNrb3V0LWF1dGgtdGFiIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpO1xufVxuXG4uY2hlY2tvdXQtYXV0aC10YWIuaXMtYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjUpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjE4KTtcbiAgICBjb2xvcjogIzJhNzk0Nztcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuY2hlY2tvdXQtYXV0aC10YWIuaXMtYWN0aXZlIHtcbiAgICBjb2xvcjogI2JkZjJjZjtcbn1cblxuLmNoZWNrb3V0LWF1dGgtcGFuZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jaGVja291dC1hdXRoLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jaGVja291dC1hdXRoLW1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogLjY1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDEwNywgMTA3LCAwLjQ1KTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMTA3LCAxMDcsIDAuMTIpO1xuICAgIGNvbG9yOiAjYjgzOTM5O1xuICAgIHBhZGRpbmc6IC40NXJlbSAuNnJlbTtcbiAgICBmb250LXNpemU6IC44NXJlbTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuY2hlY2tvdXQtYXV0aC1tZXNzYWdlIHtcbiAgICBjb2xvcjogI2ZmZDhkODtcbn1cblxuLmNoZWNrb3V0LWF1dGgtbWVzc2FnZS5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNoZWNrb3V0LWF1dGgtbW9kYWwgLmZvcm0tbGFiZWwge1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIG1hcmdpbi1ib3R0b206IC4yNXJlbTtcbiAgICBmb250LXNpemU6IC44NnJlbTtcbn1cblxuLmNoZWNrb3V0LWF1dGgtbW9kYWwgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zaXRlLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS10ZXh0KTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuY2hlY2tvdXQtYXV0aC1tb2RhbCAuZm9ybS1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpO1xufVxuXG4uY2hlY2tvdXQtYXV0aC1wYW5lbCBmb3JtID4gZGl2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAuNTVyZW07XG59XG5cbi5jaGVja291dC1hdXRoLXBhbmVsIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtdGV4dCk7XG4gICAgbWFyZ2luLWJvdHRvbTogLjI2cmVtO1xuICAgIGZvbnQtc2l6ZTogLjg1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5jaGVja291dC1hdXRoLXBhbmVsIGxhYmVsLnJlcXVpcmVkOjphZnRlciB7XG4gICAgY29udGVudDogJyAqJztcbiAgICBjb2xvcjogI2ZmNmI2Yjtcbn1cblxuLmNoZWNrb3V0LWF1dGgtcGFuZWwgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uY2hlY2tvdXQtYXV0aC1wYW5lbCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4uY2hlY2tvdXQtYXV0aC1wYW5lbCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4uY2hlY2tvdXQtYXV0aC1wYW5lbCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLmNoZWNrb3V0LWF1dGgtcGFuZWwgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zaXRlLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIHBhZGRpbmc6IC41NnJlbSAuN3JlbTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMThzIGVhc2UsIGJveC1zaGFkb3cgLjE4cyBlYXNlLCBiYWNrZ3JvdW5kIC4xOHMgZWFzZTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuY2hlY2tvdXQtYXV0aC1wYW5lbCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbmJvZHlbZGF0YS10aGVtZT1cImRhcmtcIl0gLmNoZWNrb3V0LWF1dGgtcGFuZWwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuY2hlY2tvdXQtYXV0aC1wYW5lbCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5jaGVja291dC1hdXRoLXBhbmVsIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5ib2R5W2RhdGEtdGhlbWU9XCJkYXJrXCJdIC5jaGVja291dC1hdXRoLXBhbmVsIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG59XG5cbi5jaGVja291dC1hdXRoLXBhbmVsIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtbXV0ZWQpO1xufVxuXG4uY2hlY2tvdXQtYXV0aC1wYW5lbCBpbnB1dDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDUyLCAyMDksIDEwOCwgMC42Mik7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoNTIsIDIwOSwgMTA4LCAwLjIpO1xufVxuXG4uY2hlY2tvdXQtYXV0aC1wYW5lbCBpbnB1dDotd2Via2l0LWF1dG9maWxsLFxuLmNoZWNrb3V0LWF1dGgtcGFuZWwgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcbi5jaGVja291dC1hdXRoLXBhbmVsIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMge1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB2YXIoLS1zaXRlLXRleHQpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwMHMgZWFzZS1pbi1vdXQgMHM7XG59XG5cbi5jaGVja291dC1hdXRoLXN1Ym1pdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMmE3OTQ3O1xuICAgIGJhY2tncm91bmQ6ICMzNGQxNmM7XG4gICAgY29sb3I6ICMwYjBiMGI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nOiAuNTVyZW0gLjg1cmVtO1xuICAgIG1hcmdpbi10b3A6IC4zNXJlbTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcG9wdXAge1xuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2l0ZS1ib3JkZXIpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNpdGUtc3VyZmFjZSk7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtdGV4dCk7XG4gICAgYm94LXNoYWRvdzogMCAyMnB4IDUycHggdmFyKC0tc2l0ZS1zaGFkb3cpO1xuICAgIHBhZGRpbmc6IDEuMXJlbSAxLjFyZW0gMXJlbTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwiZGFya1wiXSAuc2hvcC1jaGVja291dC1wb3B1cCB7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KDcwMHB4IDM1MHB4IGF0IDAlIDAlLCByZ2JhKDUyLCAyMDksIDEwOCwgMC4xNCkgMCUsIHJnYmEoMjQsIDI0LCAyNCwgMC45NSkgNTUlLCByZ2JhKDE0LCAxNCwgMTQsIDAuOTgpIDEwMCUpO1xufVxuXG4uc2hvcC1jaGVja291dC10aXRsZSB7XG4gICAgY29sb3I6IHZhcigtLXNpdGUtdGV4dCk7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogLjM1cmVtO1xufVxuXG4uc2hvcC1jaGVja291dC1odG1sIHtcbiAgICBtYXJnaW4tdG9wOiAuMnJlbTtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4uc2hvcC1jaGVja291dC1wb3B1cCAuc3dhbDItY2xvc2Uge1xuICAgIGNvbG9yOiB2YXIoLS1zaXRlLW11dGVkKTtcbn1cblxuLnNob3AtY2hlY2tvdXQtcG9wdXAgLnN3YWwyLWNsb3NlOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tc2l0ZS10ZXh0KTtcbn1cblxuLyogTGlnaHQtbW9kZSByZWZpbmVtZW50cyBmb3IgZXhpc3RpbmcgZWNvbW1lcmNlIHByb2R1Y3QvY2hlY2tvdXQvcGF5bWVudCBwYWdlcyAqL1xuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcHJvZHVjdC1wYWdlLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtY2hlY2tvdXQtcGFnZSxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXBheW1lbnQtcGFnZSB7XG4gICAgLS1zaG9wLWFjY2VudDogIzJhYTU1OTtcbiAgICAtLXNob3AtYWNjZW50LXNvZnQ6ICMyYWE1NTk7XG4gICAgLS1zaG9wLXRleHQ6ICMxZjI5Mzc7XG4gICAgLS1zaG9wLW11dGVkOiAjNWY2ZjgyO1xuICAgIC0tc2hvcC1jYXJkOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgLS1zaG9wLWJvcmRlcjogcmdiYSgxNSwgMjMsIDQyLCAwLjEyKTtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMTIwMHB4IDYwMHB4IGF0IDIwJSAwJSwgI2ZmZmZmZiAwJSwgI2YzZjdmZiA1MCUsICNlOGVlZjggMTAwJSk7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1oZXJvLWNhcmQsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtaW5mby1jYXJkLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXBhbmVsLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1hZGRyZXNzLWNhcmQsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wYXltZW50LXBhZ2UgLnNob3AtcGF5bWVudC1vcHRpb24ge1xuICAgIGJveC1zaGFkb3c6IDAgMTBweCAzMnB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xKTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWNvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTMwZGVnLCAjZGNlOGY4IDAlLCAjZWVmM2ZiIDU1JSwgI2Y4ZmJmZiAxMDAlKTtcbiAgICBib3JkZXI6IDFweCBkYXNoZWQgcmdiYSgxNSwgMjMsIDQyLCAwLjIpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtY292ZXIgaSxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1yZWYsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtZGVzY3JpcHRpb24sXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcmVhc3N1cmFuY2UgbGksXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcmVhc3N1cmFuY2UtcGF5cGFsLWxhYmVsLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1jaGVja291dC1mZWVkYmFjayxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3Atc2hpcHBpbmctbmFtZSxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LW9wdGlvbiB7XG4gICAgY29sb3I6ICMxZjI5Mzc7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1rdiBkaXYsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtYnV5LWJsb2NrLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLW1ldGEtaXRlbSxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1yZWFzc3VyYW5jZSxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1yZWxhdGVkLWNhcmQsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcmVsYXRlZC10aHVtYixcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLWNoZWNrb3V0LXBhZ2UgLnNob3Atc2hpcHBpbmctb3B0aW9uLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtb3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzIpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNSwgMjMsIDQyLCAwLjE0KTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtc3RhdHVzIHtcbiAgICBjb2xvcjogIzRiNWY3NTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtaGludCB7XG4gICAgY29sb3I6ICMyYTc5NDc7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXBheW1lbnQtcGFnZSAuc2hvcC1wYXltZW50LWFycm93IHtcbiAgICBjb2xvcjogIzMzNDE1NTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTUsIDIzLCA0MiwgMC4xNik7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg2KTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtaWNvbiB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE1LCAyMywgNDIsIDAuMTUpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wYXltZW50LXBhZ2UgLnNob3AtcGF5bWVudC1pY29uLS1jYXJkIHtcbiAgICBjb2xvcjogIzFmNmYzZDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDQyLCAxNjUsIDg5LCAwLjIpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wYXltZW50LXBhZ2UgLnNob3AtcGF5bWVudC1pY29uLS1wYXlwYWwge1xuICAgIGNvbG9yOiAjMGM0YWI3O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjE4KTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcGF5bWVudC1wYWdlIC5zaG9wLXBheW1lbnQtb3B0aW9uLS1hY3RpdmUge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSg0MiwgMTY1LCA4OSwgMC41NSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE2MGRlZywgcmdiYSg0MiwgMTY1LCA4OSwgMC4yKSwgcmdiYSg0MiwgMTY1LCA4OSwgMC4wNikpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtcXR5LWlucHV0LFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1hZGRyZXNzLXNlbGVjdCxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLWNoZWNrb3V0LXBhZ2UgLmZvcm0tY29udHJvbCxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLWNoZWNrb3V0LXBhZ2UgLmZvcm0tc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTQpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNSwgMjMsIDQyLCAwLjIpO1xuICAgIGNvbG9yOiAjMWYyOTM3O1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1jaGVja291dC1wYWdlIC5mb3JtLXNlbGVjdCBvcHRpb24ge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgY29sb3I6ICMxZjI5Mzc7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLWNoZWNrb3V0LXBhZ2UgLmZvcm0tY2hlY2stbGFiZWwsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1jaGVja291dC1wYWdlIC5mb3JtLWxhYmVsIHtcbiAgICBjb2xvcjogIzMyNDI1NTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1hZGRyZXNzLXRpdGxlIHtcbiAgICBjb2xvcjogIzMyNDI1NTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1jaGVja291dC1zdGVwIHtcbiAgICBjb2xvcjogIzJhNzk0Nztcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtY2hlY2tvdXQtcGFnZSAuc2hvcC1hZGRyZXNzLWN1cnJlbnQge1xuICAgIGNvbG9yOiAjMzI0MjU1O1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLmJ0bi1zaG9wLXNlY29uZGFyeSB7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE1LCAyMywgNDIsIDAuMjIpO1xuICAgIGNvbG9yOiAjMzI0MjU1O1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuc2hvcC1wcm9kdWN0LXBhZ2UgLmJ0bi1zaG9wLXNlY29uZGFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxNSwgMjMsIDQyLCAwLjA2KTtcbiAgICBjb2xvcjogIzFmMjkzNztcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLXRhZyB7XG4gICAgY29sb3I6ICMzMjQyNTU7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE1LCAyMywgNDIsIDAuMTgpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43Mik7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoMSxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoMixcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoMyxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoNCxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoNSxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1kZXNjcmlwdGlvbiBoNiB7XG4gICAgY29sb3I6ICMxNjI4M2M7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1hdmFpbGFiaWxpdHktYmFkZ2Uge1xuICAgIGNvbG9yOiAjMTczYzJhO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNDcsIDE1OCwgOTgsIDAuMik7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDQyLCAxMjEsIDcxLCAwLjQ1KTtcbn1cblxuLyogTGlnaHQtbW9kZSByZWZpbmVtZW50cyBmb3IgY29udGFjdCBhbmQgbG9naW4gbW9kdWxlcyAqL1xuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tY29udGFjdCxcbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5lY2hvLWxvZ2luIHtcbiAgICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoMTIwMHB4IDYwMHB4IGF0IDIwJSAwJSwgI2ZmZmZmZiAwJSwgI2YzZjdmZiA1MCUsICNlOGVlZjggMTAwJSk7XG4gICAgY29sb3I6ICMxZjI5Mzc7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5lY2hvLWNvbnRhY3QgLmVjaG8taGVybyBwLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tbG9naW4gLmVjaG8taGVybyBwLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tY29udGFjdCAuZWNoby1tZXRhLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tbG9naW4gLmVjaG8tY2FyZCAuc3VidGl0bGUsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuZWNoby1sb2dpbiAuZWNoby1tZXRhLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tY29udGFjdCAuZWNoby1jYXJkIC5zdWJ0aXRsZSB7XG4gICAgY29sb3I6ICM1MjYxNzM7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5lY2hvLWNvbnRhY3QgLmVjaG8taGVybyAuYWNjZW50LFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tbG9naW4gLmVjaG8taGVybyAuYWNjZW50IHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoNDIsIDEyMSwgNzEsIDAuNDUpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNDcsIDE1OCwgOTgsIDAuMTQpO1xuICAgIGNvbG9yOiAjMmE3OTQ3O1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuZWNoby1jb250YWN0IC5lY2hvLWNoaXAge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43Nik7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE1LCAyMywgNDIsIDAuMTQpO1xufVxuXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuZWNoby1jb250YWN0IC5lY2hvLWNhcmQsXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuZWNoby1sb2dpbiAuZWNoby1jYXJkIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTYpLCByZ2JhKDI0NiwgMjUwLCAyNTUsIDAuOTIpKTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTUsIDIzLCA0MiwgMC4xMik7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDMycHggcmdiYSgxNSwgMjMsIDQyLCAwLjEyKTtcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tY29udGFjdCAuZWNoby1jYXJkIGxhYmVsLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tbG9naW4gLmVjaG8tY2FyZCBsYWJlbCB7XG4gICAgY29sb3I6ICMzMjQyNTU7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5lY2hvLWNvbnRhY3QgLmVjaG8tY2FyZCAuZm9ybS1jb250cm9sLFxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tbG9naW4gLmVjaG8tY2FyZCAuZm9ybS1jb250cm9sIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTYpO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgxNSwgMjMsIDQyLCAwLjE4KTtcbiAgICBjb2xvcjogIzFmMjkzNztcbn1cblxuYm9keVtkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmVjaG8tbG9naW4gLmVjaG8tY2FyZCAuaW5wdXQtZ3JvdXAgLnBhc3N3b3JkLWJ0biB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk2KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTUsIDIzLCA0MiwgMC4xOCk7XG4gICAgY29sb3I6ICMyYTc5NDc7XG59XG5cbmJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgLmlucHV0LWdyb3VwIC5wYXNzd29yZC1idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjQzLCAyNDcsIDI1NSwgMC45OCk7XG59XG5cbi8qIGJvZHlbZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5lY2hvLWNvbnRhY3QgLmVjaG8tY2FyZCAuYnRuLWVjaG8sXG5ib2R5W2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuZWNoby1sb2dpbiAuZWNoby1jYXJkIC5idG4tZWNobyB7XG4gICAgYmFja2dyb3VuZDogIzJmOWU2MjtcbiAgICBib3JkZXItY29sb3I6ICMyYTc5NDc7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDI0cHggcmdiYSg0MiwgMTIxLCA3MSwgMC4yOCk7XG59ICovXG4iLCJAbWVkaWEgKHdpZHRoIDw9IDU3NnB4KSB7IFxuXHQuZWNoby1oZWFkZXJfX25hdiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aW5zZXQ6IDcwcHggY2xhbXAoMXJlbSwgMnZ3LCAyLjc1cmVtKSBhdXRvIGNsYW1wKDFyZW0sIDJ2dywgMi43NXJlbSk7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1zaXRlLXN1cmZhY2UpO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNpdGUtYm9yZGVyKTtcblx0XHRib3JkZXItcmFkaXVzOiAxNnB4O1xuXHRcdHBhZGRpbmc6IDFyZW07XG5cdFx0Ym94LXNoYWRvdzogMCAxMnB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHR9XG5cblx0LmVjaG8taGVhZGVyX19uYXYuaXMtb3BlbiB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdC5lY2hvLWhlYWRlcl9fYnVyZ2VyIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0fVxuXG5cdC5lY2hvLWhlYWRlcl9fY3RhLFxuXHQuZWNoby10aGVtZS10b2dnbGUsXG5cdC5lY2hvLWhlYWRlcl9fY2FydCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR9XG5cblx0LnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWdhbGxlcnkge1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcblx0fVxuXG5cdC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1rdiB7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdH1cblxuXHQuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtbWV0YS1ncmlkIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0fVxuXG5cdC5lY2hvLWxhbmRpbmcgLmZlYXR1cmUge1xuXHRcdGdyaWQtY29sdW1uOiBzcGFuIDEyO1xuXHR9XG5cblx0LmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQge1xuXHRcdHBhZGRpbmc6IDQuOHJlbSAxcmVtIDJyZW07XG5cdH1cblxuXHQuZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodCAuY29udGFpbmVyIHtcblx0XHRwYWRkaW5nOiAxLjRyZW07XG5cdH1cblxuXHQuZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodCBoMSB7XG5cdFx0Zm9udC1zaXplOiBjbGFtcCgxLjU1cmVtLCA4LjZ2dywgMi4ycmVtKTtcblx0fVxuXG5cdC5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LWhlYWQge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdH1cblxuXHQuZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodC1hY3Rpb25zIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXHR9XG5cblx0LmVjaG8tbGFuZGluZyAuc2hvcC1zcG90bGlnaHQtY29udHJvbHMge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdH1cblxuXHQuZWNoby1sYW5kaW5nIC5zaG9wLXNwb3RsaWdodCAuYnRuIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5lY2hvLWxhbmRpbmcgLnNob3Atc3BvdGxpZ2h0LXNsaWRlciB7XG5cdFx0cGFkZGluZy1ib3R0b206IDEuN3JlbTtcblx0fVxuXG5cdC5lY2hvLWxhbmRpbmcgLnZpZGVvLWNhcmQge1xuXHRcdGdyaWQtY29sdW1uOiBzcGFuIDEyO1xuXHR9XG5cblx0LmVjaG8tZm9vdGVyX190b3AsXG5cdC5lY2hvLWZvb3Rlcl9fYm90dG9tIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXHR9XG5cblx0LmVjaG8tZm9vdGVyX19saW5rcy1ncmlkIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0fVxuXG5cdC5lY2hvLWZvb3Rlcl9fY3RhIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQuc2hvcC1jYXJ0LXBhZ2UgLnNob3AtY2FydC1pdGVtIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0fVxuXG5cdC5lY2hvLWNvbnRhY3QsXG5cdC5lY2hvLWxvZ2luIHtcblx0XHRwYWRkaW5nOiAzcmVtIDEuMjVyZW07XG5cdH1cblxuXHQuZWNoby1jb250YWN0IC5lY2hvLWNhcmQsXG5cdC5lY2hvLWxvZ2luIC5lY2hvLWNhcmQsXG5cdC5lY2hvLWNvbnRhY3QgLmVjaG8taGVybyxcblx0LmVjaG8tbG9naW4gLmVjaG8taGVybyB7XG5cdFx0Z3JpZC1jb2x1bW46IHNwYW4gMTI7XG5cdH1cblxuXHQuZWNoby1jb250YWN0IC5lY2hvLWNhcmQsXG5cdC5lY2hvLWxvZ2luIC5lY2hvLWNhcmQge1xuXHRcdHBhZGRpbmc6IDEuNXJlbTtcblx0fVxuXG5cdC5lY2hvLWxvZ2luIC5lY2hvLWNhcmQgLmlucHV0LWdyb3VwIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHR9XG5cblx0LmVjaG8tbG9naW4gLmVjaG8tY2FyZCAucGFzc3dvcmQtYnRuIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxufVxuIiwiQG1lZGlhICg1NzZweCA8PSB3aWR0aCA8PSA3NjdweCkgeyBcblx0LmVjaG8taGVhZGVyX19uYXYge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGluc2V0OiA3MHB4IGNsYW1wKDFyZW0sIDJ2dywgMi43NXJlbSkgYXV0byBjbGFtcCgxcmVtLCAydncsIDIuNzVyZW0pO1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tc2l0ZS1zdXJmYWNlKTtcblx0XHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1zaXRlLWJvcmRlcik7XG5cdFx0Ym9yZGVyLXJhZGl1czogMTZweDtcblx0XHRwYWRkaW5nOiAxcmVtO1xuXHRcdGJveC1zaGFkb3c6IDAgMTJweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcblx0fVxuXG5cdC5lY2hvLWhlYWRlcl9fbmF2LmlzLW9wZW4ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cblxuXHQuZWNoby1oZWFkZXJfX2J1cmdlciB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdH1cblxuXHQuZWNoby1oZWFkZXJfX2N0YSxcblx0LmVjaG8tdGhlbWUtdG9nZ2xlLFxuXHQuZWNoby1oZWFkZXJfX2NhcnQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuXG5cdC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1nYWxsZXJ5IHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCBtaW5tYXgoMCwgMWZyKSk7XG5cdH1cblxuXHQuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3Ata3Yge1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHR9XG5cblx0LnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLW1ldGEtZ3JpZCB7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdH1cblxuXHQuZWNoby1sYW5kaW5nIC5mZWF0dXJlIHtcblx0XHRncmlkLWNvbHVtbjogc3BhbiA2O1xuXHR9XG5cblx0LmVjaG8tbGFuZGluZyAudmlkZW8tY2FyZCB7XG5cdFx0Z3JpZC1jb2x1bW46IHNwYW4gMTI7XG5cdH1cblxuXHQuZWNoby1mb290ZXJfX3RvcCxcblx0LmVjaG8tZm9vdGVyX19ib3R0b20ge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0YWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cdH1cblxuXHQuZWNoby1mb290ZXJfX2xpbmtzLWdyaWQge1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIG1pbm1heCgwLCAxZnIpKTtcblx0fVxuXG5cdC5lY2hvLWZvb3Rlcl9fY3RhIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHQuc2hvcC1jYXJ0LXBhZ2UgLnNob3AtY2FydC1pdGVtIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0fVxuXG5cdC5lY2hvLWNvbnRhY3QsXG5cdC5lY2hvLWxvZ2luIHtcblx0XHRwYWRkaW5nOiAzcmVtIDEuMjVyZW07XG5cdH1cblxuXHQuZWNoby1jb250YWN0IC5lY2hvLWNhcmQsXG5cdC5lY2hvLWxvZ2luIC5lY2hvLWNhcmQsXG5cdC5lY2hvLWNvbnRhY3QgLmVjaG8taGVybyxcblx0LmVjaG8tbG9naW4gLmVjaG8taGVybyB7XG5cdFx0Z3JpZC1jb2x1bW46IHNwYW4gMTI7XG5cdH1cbn1cbiIsIkBtZWRpYSAoNzY4cHggIDw9IHdpZHRoIDw9IDk5MXB4KSB7IFxuXHQuZWNoby1oZWFkZXJfX25hdiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aW5zZXQ6IDcwcHggY2xhbXAoMXJlbSwgMnZ3LCAyLjc1cmVtKSBhdXRvIGNsYW1wKDFyZW0sIDJ2dywgMi43NXJlbSk7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1zaXRlLXN1cmZhY2UpO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNpdGUtYm9yZGVyKTtcblx0XHRib3JkZXItcmFkaXVzOiAxNnB4O1xuXHRcdHBhZGRpbmc6IDFyZW07XG5cdFx0Ym94LXNoYWRvdzogMCAxMnB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHR9XG5cblx0LmVjaG8taGVhZGVyX19uYXYuaXMtb3BlbiB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxuXG5cdC5lY2hvLWhlYWRlcl9fYnVyZ2VyIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0fVxuXG5cdC5lY2hvLWhlYWRlcl9fY3RhLFxuXHQuZWNoby10aGVtZS10b2dnbGUsXG5cdC5lY2hvLWhlYWRlcl9fY2FydCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR9XG5cblx0LnNob3AtcHJvZHVjdC1wYWdlIC5zaG9wLWdhbGxlcnkge1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgwLCAxZnIpKTtcblx0fVxuXG5cdC5zaG9wLXByb2R1Y3QtcGFnZSAuc2hvcC1rdiB7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG5cdH1cblxuXHQuc2hvcC1wcm9kdWN0LXBhZ2UgLnNob3AtbWV0YS1ncmlkIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0fVxuXG5cdC5lY2hvLWxhbmRpbmcgLmZlYXR1cmUge1xuXHRcdGdyaWQtY29sdW1uOiBzcGFuIDY7XG5cdH1cblxuXHQuZWNoby1sYW5kaW5nIC52aWRlby1jYXJkIHtcblx0XHRncmlkLWNvbHVtbjogc3BhbiAxMjtcblx0fVxuXG5cdC5lY2hvLWZvb3Rlcl9fdG9wLFxuXHQuZWNoby1mb290ZXJfX2JvdHRvbSB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcblx0fVxuXG5cdC5lY2hvLWZvb3Rlcl9fbGlua3MtZ3JpZCB7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDAsIDFmcikpO1xuXHR9XG5cblx0LmVjaG8tZm9vdGVyX19jdGEge1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXG5cdC5lY2hvLWNvbnRhY3QsXG5cdC5lY2hvLWxvZ2luIHtcblx0XHRwYWRkaW5nOiAzcmVtIDEuMjVyZW07XG5cdH1cblxuXHQuZWNoby1jb250YWN0IC5lY2hvLWNhcmQsXG5cdC5lY2hvLWxvZ2luIC5lY2hvLWNhcmQsXG5cdC5lY2hvLWNvbnRhY3QgLmVjaG8taGVybyxcblx0LmVjaG8tbG9naW4gLmVjaG8taGVybyB7XG5cdFx0Z3JpZC1jb2x1bW46IHNwYW4gMTI7XG5cdH1cbn1cbiIsIkBtZWRpYSAoOTkycHggPD0gd2lkdGggPD0gMTE5OXB4KSB7IFxuXHQuc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLWNoZWNrb3V0LXN1bW1hcnkge1xuXHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0dG9wOiA2LjVyZW07XG5cdFx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcblx0fVxufVxuIiwiQG1lZGlhICgxMjAwcHggPD0gd2lkdGggPD0gMTM5OXB4KSB7IFxuXHQuc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLWNoZWNrb3V0LXN1bW1hcnkge1xuXHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0dG9wOiA2LjVyZW07XG5cdFx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcblx0fVxufSIsIkBtZWRpYSAoMTQwMHB4IDw9IHdpZHRoKSB7IFxuXHQuc2hvcC1jaGVja291dC1wYWdlIC5zaG9wLWNoZWNrb3V0LXN1bW1hcnkge1xuXHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0dG9wOiA2LjVyZW07XG5cdFx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcblx0fVxufVxuIiwiLyogQ09MT1JTIFpPTkUtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbltkYXRhLXRoZW1lPVwibGlnaHRcIl0ge1xuICAgIC0td2hpdGUxOiAjRkZGO1xuICAgIC0td2hpdGUyOiAjRjlGOUY5O1xuICAgIC0td2hpdGUzOiAjZTFlMWUxO1xuICAgIC0tYmxhY2sxOiMyOTJFM0Q7XG4gICAgLS1ibGFjazI6IzIxMjUyOTtcbiAgICAtLWJsYWNrMzojMTgxNjE2O1xuICAgIC8qIC0tcHJpbWFyeTojMDUyODI1OyAqL1xuICAgIC0tcHJpbWFyeTojQzA1ODlFO1xuICAgIC0tc2Vjb25kYXJ5OiNDNURDRjk7XG4gICAgLS10ZXJ0aWFyeTojMUE3M0U4O1xuICAgIC0tcXVhdGVybmFyeTojMjcyNjI2O1xuICAgIC0tcXVpbmFyeTogbm9uZTtcbiAgICAtLXJhZGl1czozNXB4O1xuXG59XG5cbltkYXRhLXRoZW1lPVwiZGFya1wiXSB7XG4gICAgLS13aGl0ZTE6ICMwMDAwMDA7XG4gICAgLS13aGl0ZTI6ICMyNzI1MjU7XG4gICAgLS13aGl0ZTM6ICMzZjNiM2I7XG4gICAgLS1ibGFjazE6I2UxZTRmMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbioge1xuICAgIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cbmJvZHl7XG4gICAgYmFja2dyb3VuZDogI0ZBRkFGQTtcbn1cblxuaDF7XG4gICAgZm9udC1mYW1pbHk6IFwiS3JvbmEgT25lXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5oMiwgaDMsIGg0LCBoNSwgaDZ7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5iZy1wcmltYXJ5e1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnkpICFpbXBvcnRhbnQ7XG59XG4uYmctc2Vjb25kYXJ5e1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeSkgIWltcG9ydGFudDtcbn1cbi5iZy13aGl0ZXtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZTEpICFpbXBvcnRhbnQ7XG59XG4uYmctYmxhY2t7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmxhY2sxKSAhaW1wb3J0YW50O1xufVxuXG4uY2xyLXdoaXRle1xuICAgIGNvbG9yOiB2YXIoLS13aGl0ZTEpICFpbXBvcnRhbnQ7XG59XG4uY2xyLWJsYWNre1xuICAgIGNvbG9yOiB2YXIoLS1ibGFjazEpICFpbXBvcnRhbnQ7XG59XG4uY2xyLXByaW1hcnl7XG4gICAgY29sb3I6IHZhcigtLXByaW1hcnkpICFpbXBvcnRhbnQ7XG59XG4uY2xyLXNlY29uZGFyeXtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xufVxuXG5cbi8qIEJVVFRPTiBTVEFSVCovXG4uYnRuLXByaW1hcnl7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJpbWFyeSkgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXByaW1hcnkpICFpbXBvcnRhbnQ7XG59XG4uYnRuLWNpcmNsZXtcbiAgICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgZ2FwOiAxMHB4O1xufVxuLmJ0bi1jaXJjbGUtcHJpbWFyeXtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXNlY29uZGFyeSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeSk7XG59XG4uYnRuLWNpcmNsZS1wcmltYXJ5OmhvdmVye1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXNlY29uZGFyeSk7XG59XG5cbi5idG4tY2lyY2xlLXdoaXRle1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tc2Vjb25kYXJ5KTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLyogQlVUVE9OIEVORCAgKi8iLCIucGFzc3dvcmQgaW5wdXR7XG4gICAgbWFyZ2luOiAwcHggIWltcG9ydGFudDtcbn1cbi5wb3AtdXB7XG4gICAgd2lkdGg6IDI1ZW07XG4gICAgcGFkZGluZzogM2VtO1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZTEpO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDIpLCAwIDZweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wMik7XG4gICAgYm9yZGVyOjNweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG4ucG9wLXVwIC5mb3JtLXNpZ25pbntcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxZW07XG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/