/*
@font-face {
  font-family: 'EurostileStandard';
  //src: url("/assets/Gotham-Ultra.woff") format("woff"), url("//assets/Gotham-Ultra.woff") format("truetype");
  // src: url("/assets/Gotham-Ultra2.woff") format("woff");
  // src: url("/assets/Gotham_UltraItalic.otf") format("opentype");
  //src: url("/assets/Gotham-Ultra.otf") format("opentype");
  src: url("../../dist/assets/fonts/EurostileLTStd-Ex2.otf")
}
*/
.container {
  max-width: 1560px;
  margin: 0 auto;
  padding: 0; }
  @media (max-width: 1659px) {
    .container {
      max-width: calc(100% - 120px); } }
  @media (max-width: 1399px) {
    .container {
      max-width: calc(100% - 100px); } }
  @media (max-width: 1199px) {
    .container {
      max-width: calc(100% - 80px); } }
  @media (max-width: 991px) {
    .container {
      max-width: calc(100% - 60px); } }
  @media (max-width: 767px) {
    .container {
      padding: 0;
      max-width: calc(100% - 40px); } }
  @media (max-width: 575px) {
    .container {
      max-width: calc(100% - 40px); } }

* {
  box-sizing: border-box; }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 0 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }
  .hamburger.is-active:hover {
    opacity: 0.7; }
  .hamburger.is-active .hamburger-inner,
  .hamburger.is-active .hamburger-inner::before,
  .hamburger.is-active .hamburger-inner::after {
    background-color: #000; }

.hamburger-box {
  width: 36px;
  height: 18px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 36px;
    height: 2px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -8px; }
  .hamburger-inner::after {
    bottom: -8px; }

/*@import "types/3dx";
@import "types/3dx-r";
@import "types/3dy";
@import "types/3dy-r";
@import "types/3dxy";
@import "types/3dxy-r";
@import "types/arrow";
@import "types/arrow-r";
@import "types/arrowalt";
@import "types/arrowalt-r";
@import "types/arrowturn";
@import "types/arrowturn-r";
@import "types/boring";
@import "types/collapse";
@import "types/collapse-r";
@import "types/elastic";
@import "types/elastic-r";
@import "types/emphatic";
@import "types/emphatic-r";
@import "types/minus";
@import "types/slider";
@import "types/slider-r";
@import "types/spin";
@import "types/spin-r";*/
/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 1px;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 8px;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring .hamburger-inner::after {
    top: 16px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent !important; }
  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 8px, 0) rotate(45deg); }
  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 8px, 0) rotate(-45deg); }

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring-r .hamburger-inner::after {
    top: -16px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; }
  .hamburger--spring-r .hamburger-inner::before {
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -8px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; }
  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
@import "types/stand";
@import "types/stand-r";
@import "types/squeeze";
@import "types/vortex";
@import "types/vortex-r";
*/
/*
@font-face {
  font-family: 'EurostileStandard';
  //src: url("/assets/Gotham-Ultra.woff") format("woff"), url("//assets/Gotham-Ultra.woff") format("truetype");
  // src: url("/assets/Gotham-Ultra2.woff") format("woff");
  // src: url("/assets/Gotham_UltraItalic.otf") format("opentype");
  //src: url("/assets/Gotham-Ultra.otf") format("opentype");
  src: url("../../dist/assets/fonts/EurostileLTStd-Ex2.otf")
}
*/
/*
@function photoshop-unit-convertsion($unit, $return: 'em', $base: '16') {
  @if $return = 'em' {
    @return ($unit) / 1000;
  } @else {
    @return ($unit * $base) / 1000;
  }
}
*/
/*@mixin max-page-width-l(){
  margin: 0 auto;
  // width: 100%;
  max-width: $page-inner-widthL;
  @include rsp-padding1();
}*/
/*
@mixin background-loader(){
  background: linear-gradient(90deg, #ededed, #ffffff, #ededed);
  animation-name: load;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-direction: forwards;
  animation-timing-function: linear;
  background-size: 200% 100%;
}
*/
@media (max-width: 1199px) {
  > * {
    width: 33.333%; } }

/**
need to add overflow hidden to parent or dreaded horizontal scroll bar
 */
.fade-in-anim {
  opacity: 0;
  transition: opacity 0.4s 0.3s linear; }
  .fade-in-anim.show {
    opacity: 1; }

.fade-in-anim-2000-1000 {
  opacity: 0;
  transition: opacity 2000ms 1000ms linear; }
  .fade-in-anim-2000-1000.show {
    opacity: 1; }

.fade-in-up-anim {
  opacity: 0;
  transition: transform 1.2s 0s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 0.6s linear;
  transform: translate3d(0, 40px, 0); }
  .fade-in-up-anim.show {
    opacity: 1;
    transform: translate3d(0, 0, 0); }

.accord-ct .accord-content, #mobile-menu .menu-item-has-children .accord-content {
  height: 0;
  overflow: hidden;
  transition: height 0.7s cubic-bezier(0, 0.55, 0.45, 1); }

.accord-ct.accord-open .accord-content, #mobile-menu .menu-item-has-children.accord-open .accord-content {
  height: auto; }

.accord-ct svg.down-arrow, #mobile-menu .menu-item-has-children svg.down-arrow {
  transition: 0.4s cubic-bezier(0, 0.55, 0.45, 1); }

.accord-ct svg.down-carat, #mobile-menu .menu-item-has-children svg.down-carat {
  transition: 0.7s cubic-bezier(0, 0.55, 0.45, 1); }

.accord-ct .accord-head, #mobile-menu .menu-item-has-children .accord-head {
  cursor: pointer; }

.accord-open > div > svg {
  transform: rotate(45deg) !important; }

.accord-open svg.down-arrow {
  transform: rotate(360deg) !important; }

.accord-open svg.down-carat {
  transform: rotate(180deg) !important; }

@font-face {
  font-family: "Montserrat";
  src: url("../assets/fonts/Montserrat-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal; }

@font-face {
  font-family: "Montserrat-thin";
  src: url("../assets/fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "Montserrat";
  src: url("../assets/fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "Noto Serif";
  src: url("../assets/fonts/NotoSerif-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal; }

/*
@font-face {
  font-family: "Raleway";
  src: url("../assets/fonts/Raleway-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
*/
h1, h2, h3, h4, h5, h6 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  /* &.noto-font{
    font-family: "Noto Serif";

  }*/ }
  h1 > span, h2 > span, h3 > span, h4 > span, h5 > span, h6 > span {
    font-family: "Montserrat", sans-serif;
    font-weight: 600; }

* {
  color: #262626; }
  *.white {
    color: white; }

p, span, div {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500; }

h1 {
  font-size: 50px;
  line-height: 72px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h2 {
  font-size: 42px;
  line-height: 55px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h3 {
  font-size: 40px;
  line-height: 0;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h4 {
  font-size: 27px;
  line-height: 46px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h5 {
  font-size: 24px;
  line-height: 30px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h6 {
  font-size: 16px;
  line-height: 26px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

/*h1, h2, h3, h4, h5,h6 {
  font-family: "Quattrocento Sans", sans-serif;
  >span{
    font-family: "Quattrocento Sans", sans-serif;

  }
}*/
.nav-font, button, button > span {
  font-size: 18px;
  line-height: 18px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  margin: 0; }

p.body-l, p.body-l p, span.body-l, span.body-l p, div.body-l, div.body-l p {
  font-size: 34px;
  line-height: 44px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  letter-spacing: normal;
  font-weight: 600; }
  @media (max-width: 991px) {
    p.body-l, p.body-l p, span.body-l, span.body-l p, div.body-l, div.body-l p {
      font-size: 26px;
      line-height: 34px;
      /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ } }
  @media (max-width: 767px) {
    p.body-l, p.body-l p, span.body-l, span.body-l p, div.body-l, div.body-l p {
      font-size: 20px;
      line-height: 26px;
      /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ } }

p.body-m, p.body-m p, span.body-m, span.body-m p, div.body-m, div.body-m p {
  font-size: 26px;
  line-height: 36px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

p.body-s, p.body-s p, span.body-s, span.body-s p, div.body-s, div.body-s p {
  font-size: 22px;
  line-height: 36px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

p.body-xs, p.body-xs p, span.body-xs, span.body-xs p, div.body-xs, div.body-xs p {
  font-size: 16px;
  line-height: 24px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

body {
  font-size: 22px;
  line-height: 36px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

.w-500 {
  font-weight: 500; }

p.body-bold, span.body-bold {
  font-size: 18px;
  line-height: 0;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 600; }

/*
p {
  // @include body1-font();
  font-family: "Raleway", sans-serif;
  font-weight: 400;

  span {
    font-weight: 400;
  }
}*/
.f-mont-16 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  line-height: 26px;
  font-size: 16px; }
  @media (max-width: 991px) {
    .f-mont-16 {
      font-size: 12px; } }

.f-mont-20 {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  line-height: 26px;
  font-size: 20px; }
  @media (max-width: 767px) {
    .f-mont-20 {
      font-size: 14px;
      line-height: 18px; } }

.f-mont-18 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  line-height: 22px;
  font-size: 18px; }
  @media (max-width: 991px) {
    .f-mont-18.f-resp {
      font-size: 12px;
      line-height: 15px; } }
  @media (max-width: 991px) {
    .f-mont-18.f-resp-14 {
      font-size: 14px;
      line-height: 20px; } }
  .f-mont-18 h5, .f-mont-18 h6 {
    font-size: inherit;
    line-height: inherit; }

.f-mont-16-thin {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  line-height: 26px;
  font-size: 16px; }
  @media (max-width: 991px) {
    .f-mont-16-thin {
      font-size: 12px; } }

.f-thin {
  font-weight: 400; }

.f-noto-22 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500;
  line-height: 30px;
  font-size: 22px; }
  @media (max-width: 991px) {
    .f-noto-22 {
      font-size: 20px;
      line-height: 28px; } }
  .f-noto-22 p {
    font-size: inherit;
    line-height: inherit;
    font-family: inherit; }

.f-noto-20 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500;
  line-height: 27px;
  font-size: 20px; }
  @media (max-width: 991px) {
    .f-noto-20 {
      font-size: 19px;
      line-height: 26px; } }
  .f-noto-20 p {
    font-size: inherit;
    line-height: inherit;
    font-family: inherit; }

.f-noto-28 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 400;
  line-height: 35px;
  font-size: 28px; }
  @media (max-width: 991px) {
    .f-noto-28 {
      font-size: 22px;
      line-height: 26px; } }

.f-noto-18 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500;
  line-height: 25px;
  font-size: 18px; }
  @media (max-width: 991px) {
    .f-noto-18 {
      font-size: 14px;
      line-height: 20px; } }
  .f-noto-18 p {
    font-size: inherit;
    line-height: inherit;
    font-family: inherit; }

/*
@font-face {
  font-family: 'EurostileStandard';
  //src: url("/assets/Gotham-Ultra.woff") format("woff"), url("//assets/Gotham-Ultra.woff") format("truetype");
  // src: url("/assets/Gotham-Ultra2.woff") format("woff");
  // src: url("/assets/Gotham_UltraItalic.otf") format("opentype");
  //src: url("/assets/Gotham-Ultra.otf") format("opentype");
  src: url("../../dist/assets/fonts/EurostileLTStd-Ex2.otf")
}
*/
/*
@function photoshop-unit-convertsion($unit, $return: 'em', $base: '16') {
  @if $return = 'em' {
    @return ($unit) / 1000;
  } @else {
    @return ($unit * $base) / 1000;
  }
}
*/
/*@mixin max-page-width-l(){
  margin: 0 auto;
  // width: 100%;
  max-width: $page-inner-widthL;
  @include rsp-padding1();
}*/
/*
@mixin background-loader(){
  background: linear-gradient(90deg, #ededed, #ffffff, #ededed);
  animation-name: load;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-direction: forwards;
  animation-timing-function: linear;
  background-size: 200% 100%;
}
*/
@media (max-width: 1199px) {
  > * {
    width: 33.333%; } }

/**
need to add overflow hidden to parent or dreaded horizontal scroll bar
 */
/*header{
  display: none;
}*/
/*footer{
  display: none;
}*/
#wrapper-navbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 100;
  height: 160px;
  font-size: 18px;
  line-height: 18px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  margin: 0; }
  #wrapper-navbar:after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    content: "";
    background: white;
    transition: opacity 0.2s 0.2s linear;
    z-index: -1; }
  #wrapper-navbar .search {
    visibility: hidden; }
  #wrapper-navbar .hamburger-inner, #wrapper-navbar .hamburger-inner::before, #wrapper-navbar .hamburger-inner::after {
    background: white;
    transition: background-color 0s 0.13s linear; }
  #wrapper-navbar .logo.for-touch-device {
    position: absolute;
    top: 13px;
    left: 50%;
    transform: translateX(-50%); }
    #wrapper-navbar .logo.for-touch-device svg {
      width: 49px;
      fill: white; }
  #wrapper-navbar .logo.for-desktop {
    /*svg{
      fill: $font-primary-100;
      width: 328px;
    }*/ }
    #wrapper-navbar .logo.for-desktop svg {
      width: 328px; }
  @media (hover: hover) {
    #wrapper-navbar:hover:after {
      opacity: 1;
      transition: opacity 0.2s linear; }
    #wrapper-navbar:hover .dark-cover {
      opacity: 1; }
    #wrapper-navbar:hover .logo.for-desktop svg {
      width: 328px;
      fill: #262626; }
    #wrapper-navbar:hover .logo.for-touch-device svg {
      fill: #353535; }
    #wrapper-navbar:hover .book-now.for-desktop {
      opacity: 1; }
    #wrapper-navbar:hover .hamburger-inner, #wrapper-navbar:hover .hamburger-inner::before, #wrapper-navbar:hover .hamburger-inner::after {
      background-color: #000; } }
  #wrapper-navbar.opaque:after, #wrapper-navbar.opaque-at-top:after, #wrapper-navbar.mob-menu-active:after, #wrapper-navbar.is-closing:after {
    opacity: 1;
    box-sizing: border-box; }
  #wrapper-navbar.opaque nav.touch-menu .touch-dropdown-cover, #wrapper-navbar.opaque nav.touch-menu .touch-dropdown-cover:after, #wrapper-navbar.opaque-at-top nav.touch-menu .touch-dropdown-cover, #wrapper-navbar.opaque-at-top nav.touch-menu .touch-dropdown-cover:after, #wrapper-navbar.mob-menu-active nav.touch-menu .touch-dropdown-cover, #wrapper-navbar.mob-menu-active nav.touch-menu .touch-dropdown-cover:after, #wrapper-navbar.is-closing nav.touch-menu .touch-dropdown-cover, #wrapper-navbar.is-closing nav.touch-menu .touch-dropdown-cover:after {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.2s linear, transform 0.6s cubic-bezier(0.33, 1, 0.68, 1); }
  #wrapper-navbar.opaque nav.touch-menu .logo.for-desktop svg, #wrapper-navbar.opaque-at-top nav.touch-menu .logo.for-desktop svg, #wrapper-navbar.mob-menu-active nav.touch-menu .logo.for-desktop svg, #wrapper-navbar.is-closing nav.touch-menu .logo.for-desktop svg {
    fill: #262626; }
  #wrapper-navbar.opaque nav.touch-menu .logo.for-touch-device svg, #wrapper-navbar.opaque-at-top nav.touch-menu .logo.for-touch-device svg, #wrapper-navbar.mob-menu-active nav.touch-menu .logo.for-touch-device svg, #wrapper-navbar.is-closing nav.touch-menu .logo.for-touch-device svg {
    fill: #353535; }
  #wrapper-navbar.opaque nav.touch-menu .book-now.for-desktop, #wrapper-navbar.opaque-at-top nav.touch-menu .book-now.for-desktop, #wrapper-navbar.mob-menu-active nav.touch-menu .book-now.for-desktop, #wrapper-navbar.is-closing nav.touch-menu .book-now.for-desktop {
    opacity: 1; }
  #wrapper-navbar.opaque .hamburger-inner, #wrapper-navbar.opaque .hamburger-inner::before, #wrapper-navbar.opaque .hamburger-inner::after, #wrapper-navbar.opaque-at-top .hamburger-inner, #wrapper-navbar.opaque-at-top .hamburger-inner::before, #wrapper-navbar.opaque-at-top .hamburger-inner::after, #wrapper-navbar.mob-menu-active .hamburger-inner, #wrapper-navbar.mob-menu-active .hamburger-inner::before, #wrapper-navbar.mob-menu-active .hamburger-inner::after, #wrapper-navbar.is-closing .hamburger-inner, #wrapper-navbar.is-closing .hamburger-inner::before, #wrapper-navbar.is-closing .hamburger-inner::after {
    background: #000; }
  #wrapper-navbar.opaque:not(.mob-menu-active) nav.touch-menu {
    /*
      .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after{
        transition: 0.2s linear;
      }*/ }
  #wrapper-navbar:before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 1px;
    background: black;
    width: 100%;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity 0.2s linear; }
  #wrapper-navbar.mob-menu-active:before {
    opacity: 1;
    transition: opacity 0.3s 0.6s linear; }
  #wrapper-navbar.mob-menu-active .dark-cover, #wrapper-navbar.is-closing .dark-cover {
    opacity: 1; }
  #wrapper-navbar.mob-menu-active .hamburger--spring .hamburger-inner, #wrapper-navbar.is-closing .hamburger--spring .hamburger-inner {
    top: 1px;
    transition: background-color 0s 0.13s linear; }
    #wrapper-navbar.mob-menu-active .hamburger--spring .hamburger-inner::before, #wrapper-navbar.is-closing .hamburger--spring .hamburger-inner::before {
      top: 8px;
      transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
    #wrapper-navbar.mob-menu-active .hamburger--spring .hamburger-inner::after, #wrapper-navbar.is-closing .hamburger--spring .hamburger-inner::after {
      top: 16px;
      transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  #wrapper-navbar.mob-menu-active .hamburger--spring.is-active .hamburger-inner, #wrapper-navbar.is-closing .hamburger--spring.is-active .hamburger-inner {
    transition-delay: 0.22s;
    background-color: transparent !important; }
    #wrapper-navbar.mob-menu-active .hamburger--spring.is-active .hamburger-inner::before, #wrapper-navbar.is-closing .hamburger--spring.is-active .hamburger-inner::before {
      top: 0;
      transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
      transform: translate3d(0, 8px, 0) rotate(45deg); }
    #wrapper-navbar.mob-menu-active .hamburger--spring.is-active .hamburger-inner::after, #wrapper-navbar.is-closing .hamburger--spring.is-active .hamburger-inner::after {
      top: 0;
      transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
      transform: translate3d(0, 8px, 0) rotate(-45deg); }
  #wrapper-navbar .dark-cover {
    pointer-events: none;
    position: fixed;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.42);
    opacity: 0;
    transition: opacity 0.2s linear;
    z-index: -1; }
  @media (max-width: 1199px) {
    #wrapper-navbar:not(.mob-menu-active) .dark-cover {
      opacity: 0 !important; } }

nav.touch-menu {
  display: none;
  height: 160px; }
  nav.touch-menu .logo.for-desktop {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    /*h3, h5{
      margin:15px;
      color: white;
      transition: color 0.2s linear;
    }*/ }
    nav.touch-menu .logo.for-desktop svg {
      fill: white; }
  nav.touch-menu .book-now.for-desktop {
    opacity: 0;
    transition: 0.2s linear; }

.menu-c0 > .container {
  display: flex;
  justify-content: space-between; }

.menu-c0 .end {
  font-size: 18px;
  line-height: 18px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end; }
  .menu-c0 .end > * {
    padding: 10px; }
    .menu-c0 .end > *:last-child {
      padding-right: 0; }
    .menu-c0 .end > *:first-child {
      margin-right: 50px; }
  .menu-c0 .end svg {
    width: 20px; }

.menu-c0 img.logo {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 140px;
  top: 48px; }

.booking-panel {
  max-width: 1100px;
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  background: white;
  transform: translate3d(-100%, 0, 0);
  transition: transform 0.6s cubic-bezier(0.61, 1, 0.88, 1); }

#wrapper-navbar.booking-panel-open .booking-panel {
  transform: translate3d(0, 0, 0); }
  #wrapper-navbar.booking-panel-open .booking-panel:after {
    opacity: 1; }
  #wrapper-navbar.booking-panel-open .booking-panel:before {
    opacity: 1; }

@media (max-width: 1199px) {
  nav.touch-menu {
    display: flex; }
  nav.desktop-menu {
    display: none; }
  .top-bar-c0 {
    display: none; }
  .end > *:first-child {
    display: none; }
  .menu-c0 img.logo {
    top: 18px; } }

@media (min-width: 992px) {
  nav.touch-menu .touch-dropdown-cover button {
    display: none; }
  nav.touch-menu .logo.for-touch-device {
    display: none; } }

@media (max-width: 991px) {
  #wrapper-navbar {
    height: 80px; }
  nav.touch-menu {
    height: 80px; }
    nav.touch-menu .touch-dropdown-c0 {
      top: 80px !important; }
    nav.touch-menu .book-now.for-desktop {
      display: none; }
    nav.touch-menu .logo.for-desktop {
      display: none; } }

body.privacy-policy {
  padding-top: 160px; }
  @media (max-width: 991px) {
    body.privacy-policy {
      padding-top: 110px; } }
  @media (max-width: 767px) {
    body.privacy-policy {
      padding-top: 110px; } }

#wrapper-navbar.mob-menu-active nav.touch-menu {
  /*.touch-dropdown-c0{
        transform: translate3d(0,0,0);
        transition: transform 0.6s 0.3s cubic-bezier(0.33, 1, 0.68, 1);
        opacity: 1;
        pointer-events: all;
      }*/ }
  #wrapper-navbar.mob-menu-active nav.touch-menu .touch-dropdown-c0 {
    pointer-events: all; }
  #wrapper-navbar.mob-menu-active nav.touch-menu .touch-dropdown-cover {
    transition: transform 0.6s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.2s linear; }
  #wrapper-navbar.mob-menu-active nav.touch-menu .touch-dropdown-c1 {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition: transform 0.6s 0.3s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.3s 0.3s linear; }

nav.touch-menu {
  flex-grow: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  overflow: hidden; }
  nav.touch-menu svg {
    width: 20px;
    cursor: pointer; }
  nav.touch-menu .touch-dropdown-c0 {
    position: absolute;
    left: 0;
    top: 160px;
    pointer-events: none;
    width: 100%;
    z-index: -1; }
    nav.touch-menu .touch-dropdown-c0 .menu-page-2-c0 {
      height: auto;
      transition: opacity 0.2s linear, transform 0.5s ease-in;
      transform: translate3d(0, 0, 0); }
    nav.touch-menu .touch-dropdown-c0 .menu-page-1-c0 .menu {
      transition: opacity 0.3s 0.4s linear; }
    nav.touch-menu .touch-dropdown-c0.show-children .menu-page-2-c0 {
      transition: transform 0.6s 0.3s cubic-bezier(0.33, 1, 0.68, 1);
      opacity: 1;
      transform: translate3d(-100%, 0, 0); }
    nav.touch-menu .touch-dropdown-c0.show-children .menu-page-1-c0 .menu {
      transition: opacity 0.3s linear;
      opacity: 0; }
  nav.touch-menu .touch-dropdown-c1 {
    opacity: 0;
    transform: translate3d(0, calc(-100%), 0);
    transition: opacity 0.3s linear, transform 0.5s ease-in; }
  nav.touch-menu .touch-dropdown-cover {
    height: calc(100vh - 80px);
    position: absolute;
    width: 100%;
    top: 0;
    visibility: hidden;
    box-sizing: content-box;
    opacity: 0;
    transition-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
    pointer-events: none;
    z-index: -1; }
    nav.touch-menu .touch-dropdown-cover:after {
      position: absolute;
      background: white;
      transform: translateY(-100%);
      height: 400%;
      top: 0;
      left: 0;
      width: 100%;
      content: "";
      opacity: 0; }
    nav.touch-menu .touch-dropdown-cover:before {
      height: 100px;
      background: transparent;
      width: 100%;
      content: "";
      position: absolute;
      top: -100px;
      box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); }
    nav.touch-menu .touch-dropdown-cover button {
      width: 100%;
      z-index: 100;
      pointer-events: all;
      cursor: pointer;
      height: 40px; }
      nav.touch-menu .touch-dropdown-cover button span {
        width: 100%;
        height: 40px;
        padding: unset;
        padding-top: 14px;
        padding-bottom: 13px; }
  nav.touch-menu .menu-page-1-c0, nav.touch-menu .menu-page-2-c0 {
    width: 100%; }
    nav.touch-menu .menu-page-1-c0 ul.menu, nav.touch-menu .menu-page-2-c0 ul.menu {
      padding: 30px 0 40px 0; }
    nav.touch-menu .menu-page-1-c0 a, nav.touch-menu .menu-page-2-c0 a {
      font-size: 22px;
      display: inline-block;
      padding: 4px 0; }
    nav.touch-menu .menu-page-1-c0 li, nav.touch-menu .menu-page-2-c0 li {
      padding: 10px 0; }
    nav.touch-menu .menu-page-1-c0 .group-label, nav.touch-menu .menu-page-2-c0 .group-label {
      display: flex;
      align-items: center;
      justify-content: space-between; }
  nav.touch-menu .menu-page-1-c0 {
    /*li{
      padding: 10px 0;
    }
    .group-label{

      a{
        padding: 10px 0;
      }
    }*/ }
    nav.touch-menu .menu-page-1-c0 svg {
      box-sizing: content-box;
      transform: rotate(-90deg); }
    nav.touch-menu .menu-page-1-c0 #mobile-menu li {
      display: flex;
      justify-content: center;
      position: relative; }
    nav.touch-menu .menu-page-1-c0 #mobile-menu svg {
      position: absolute;
      right: 0; }
  nav.touch-menu .menu-page-2-c0 {
    background-color: white;
    left: 100%;
    position: absolute;
    top: 0;
    opacity: 0; }
    nav.touch-menu .menu-page-2-c0 svg.accord-head {
      transition: transform 0.3s ease-in-out; }
    nav.touch-menu .menu-page-2-c0 button#back-to-page-1 {
      height: 50px; }
    nav.touch-menu .menu-page-2-c0 .children-c0 {
      overflow-y: scroll;
      max-height: calc(100vh - 30px);
      padding-right: 17px;
      box-sizing: content-box;
      width: 100%; }
    nav.touch-menu .menu-page-2-c0 ul.sub-menu {
      padding-bottom: 30px;
      padding-left: 40px; }
    nav.touch-menu .menu-page-2-c0 ul.menu {
      position: relative;
      left: 50%;
      transform: translateX(calc(-50% - 24px));
      display: inline-block; }
      nav.touch-menu .menu-page-2-c0 ul.menu li {
        padding: 4px 0; }
      nav.touch-menu .menu-page-2-c0 ul.menu > li > .group-label {
        justify-content: flex-start; }
        nav.touch-menu .menu-page-2-c0 ul.menu > li > .group-label a {
          order: 2;
          pointer-events: none; }
        nav.touch-menu .menu-page-2-c0 ul.menu > li > .group-label svg {
          padding: 10px;
          box-sizing: content-box;
          order: 1;
          transform: translateX(-10px) rotate(90deg);
          transition: none; }
      nav.touch-menu .menu-page-2-c0 ul.menu a, nav.touch-menu .menu-page-2-c0 ul.menu p {
        text-transform: none;
        padding: 5px 0;
        font-family: 'Noto Serif', sans-serif;
        font-weight: 500 !important;
        margin-left: 20px; }
      nav.touch-menu .menu-page-2-c0 ul.menu p {
        margin: 0; }
      nav.touch-menu .menu-page-2-c0 ul.menu .group-label a, nav.touch-menu .menu-page-2-c0 ul.menu .group-label p {
        font-weight: 500 !important;
        padding: 15px 0;
        margin-left: 0; }
    nav.touch-menu .menu-page-2-c0 .accord-content ul.sub-menu {
      padding-left: 10px; }
      nav.touch-menu .menu-page-2-c0 .accord-content ul.sub-menu li:first-child a {
        opacity: 0.5; }

@media (max-width: 991px) {
  nav.touch-menu .touch-dropdown-cover:before {
    top: -60px; } }

.booking-panel {
  padding-bottom: 0 !important;
  background: white;
  z-index: 1000;
  /*  .head{
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    padding: 40px 20px 20px 20px;
    position: relative;
    h5{
      margin: 0;
      position: relative;
      // top: 6px;
      text-align: center;
      flex-grow: 1;
      pointer-events: none;
      //text-transform: uppercase;
    }
    background: $active-color2;
  }*/
  display: flex;
  flex-direction: column; }
  .booking-panel .y-scroll {
    overflow-y: scroll; }
  .booking-panel iframe {
    display: block;
    border: none;
    /* Reset default border */
    height: 100vh;
    /* Viewport-relative units */
    width: calc(100% + 17px); }
  .booking-panel div {
    overflow-x: hidden; }
  .booking-panel .top {
    height: 80px;
    position: relative; }
  .booking-panel .logo-booking {
    width: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    padding: 0;
    transform: translate(-50%, -50%); }
  .booking-panel .helper-text {
    margin: 30px 0px; }
    .booking-panel .helper-text p {
      font-size: 14px;
      margin: 15px 0; }
  .booking-panel h5 {
    background: #262626;
    width: 100%;
    text-align: center;
    color: white;
    text-transform: uppercase;
    font-size: 12px;
    line-height: 15px;
    padding: 14px 0;
    margin: 0; }
  .booking-panel button.close-book-now {
    width: 30px;
    height: 30px;
    background: transparent;
    cursor: pointer;
    position: absolute;
    top: 50%;
    left: 30px;
    transform: translateY(-50%);
    margin-right: 20px; }
    .booking-panel button.close-book-now svg {
      width: 20px;
      transform: rotate(90deg);
      stroke-width: 2px;
      stroke: black; }
  .booking-panel > div {
    flex-grow: 1; }
    .booking-panel > div h4 {
      transform: translateY(40vh);
      text-align: center; }
  .booking-panel:after {
    position: absolute;
    left: 100%;
    top: 0;
    background: rgba(0, 0, 0, 0.51);
    opacity: 0;
    width: 100vw;
    content: "";
    height: 100vh;
    pointer-events: none;
    transition: opacity 0.2s 0.66s linear; }
  .booking-panel:before {
    position: absolute;
    right: 0px;
    top: 0;
    opacity: 0;
    width: 100%;
    content: "";
    height: 100vh;
    pointer-events: none;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
    z-index: -1; }
  .booking-panel #apartmentIframeAll {
    border-top: 1px solid #262626;
    border-bottom: 1px solid #262626;
    margin: 40px 0;
    padding: 40px 0; }
  @media (max-width: 767px) {
    .booking-panel {
      /* padding-top: 120px !important;
      svg{
        top: 0 !important;
      }*/ }
      .booking-panel .container-fixed .footer-c0, .booking-panel .container-fixed #copyright {
        display: none; } }

footer#footer, .booking-panel {
  padding: 0 0 80px 0; }
  footer#footer .footer-c0, .booking-panel .footer-c0 {
    padding-bottom: 100px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    footer#footer .footer-c0 > svg, .booking-panel .footer-c0 > svg {
      width: 70px; }
    footer#footer .footer-c0 .footer-c1, .booking-panel .footer-c0 .footer-c1 {
      display: flex;
      align-items: flex-start; }
      footer#footer .footer-c0 .footer-c1 > *, .booking-panel .footer-c0 .footer-c1 > * {
        padding-right: 100px;
        display: flex;
        flex-direction: column; }
        footer#footer .footer-c0 .footer-c1 > * p, .booking-panel .footer-c0 .footer-c1 > * p {
          margin: 0; }
        @media (max-width: 575px) {
          footer#footer .footer-c0 .footer-c1 > *.social-c0, .booking-panel .footer-c0 .footer-c1 > *.social-c0 {
            padding-right: 0px; } }
        footer#footer .footer-c0 .footer-c1 > * ul, .booking-panel .footer-c0 .footer-c1 > * ul {
          display: flex;
          flex-direction: column; }
        footer#footer .footer-c0 .footer-c1 > * li, .booking-panel .footer-c0 .footer-c1 > * li {
          display: inline-block;
          line-height: 20px; }
        footer#footer .footer-c0 .footer-c1 > * a, footer#footer .footer-c0 .footer-c1 > * p, .booking-panel .footer-c0 .footer-c1 > * a, .booking-panel .footer-c0 .footer-c1 > * p {
          display: inline-block;
          padding: 0 0;
          font-size: 16px;
          line-height: 24px;
          /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
          font-weight: 400;
          font-family: 'Montserrat-thin', sans-serif; }
  footer#footer section.links, .booking-panel section.links {
    border-top: 1px solid black; }
  footer#footer section.image-banner, .booking-panel section.image-banner {
    margin-bottom: 80px; }
  footer#footer a:hover, .booking-panel a:hover {
    color: #d3c9a0; }
    footer#footer a:hover p, .booking-panel a:hover p {
      color: #d3c9a0; }
  footer#footer #copyright, .booking-panel #copyright {
    display: flex; }
    footer#footer #copyright > :first-child, .booking-panel #copyright > :first-child {
      order: 1; }
    footer#footer #copyright > :last-child, .booking-panel #copyright > :last-child {
      margin-left: 30px;
      order: 2; }
  @media (max-width: 767px) {
    footer#footer .footer-c0, .booking-panel .footer-c0 {
      padding-top: 100px;
      position: relative; }
      footer#footer .footer-c0 svg, .booking-panel .footer-c0 svg {
        position: absolute;
        top: -20px;
        left: 0; }
    footer#footer #copyright, .booking-panel #copyright {
      flex-direction: column; }
      footer#footer #copyright a, footer#footer #copyright p, .booking-panel #copyright a, .booking-panel #copyright p {
        margin: 2px; }
      footer#footer #copyright > :first-child, .booking-panel #copyright > :first-child {
        order: 1; }
      footer#footer #copyright > :last-child, .booking-panel #copyright > :last-child {
        margin-left: 0px;
        order: 2; } }

.growing-logo-anim #top-stroke, .growing-logo-anim #bottom-stroke, .growing-logo-anim #left-stroke, .growing-logo-anim #right-stroke, .growing-logo-anim #top-right-stroke, .growing-logo-anim #bottom-left-stroke, .growing-logo-anim #top-left-stroke, .growing-logo-anim #bottom-right-stroke {
  stroke-dasharray: 28;
  stroke-dashoffset: 28;
  stroke: white; }

.growing-logo-anim.show #top-stroke, .growing-logo-anim.show #bottom-stroke, .growing-logo-anim.show #left-stroke, .growing-logo-anim.show #right-stroke, .growing-logo-anim.show #top-right-stroke, .growing-logo-anim.show #bottom-left-stroke, .growing-logo-anim.show #top-left-stroke, .growing-logo-anim.show #bottom-right-stroke {
  animation: dash 2s 0.2s cubic-bezier(0.11, 0, 0.5, 0) forwards; }

@keyframes dash {
  0% {
    stroke-dashoffset: 28; }
  100% {
    stroke-dashoffset: 0; } }

.tippy-box[data-animation=fade][data-state=hidden] {
  opacity: 0; }

[data-tippy-root] {
  max-width: calc(100vw - 10px); }

.tippy-box {
  position: relative;
  background-color: #333;
  color: #fff;
  border-radius: 4px;
  font-size: 14px;
  line-height: 1.4;
  outline: 0;
  transition-property: transform, visibility, opacity; }

.tippy-box[data-placement^=top] > .tippy-arrow {
  bottom: 0; }

.tippy-box[data-placement^=top] > .tippy-arrow:before {
  bottom: -7px;
  left: 0;
  border-width: 8px 8px 0;
  border-top-color: initial;
  transform-origin: center top; }

.tippy-box[data-placement^=bottom] > .tippy-arrow {
  top: 0; }

.tippy-box[data-placement^=bottom] > .tippy-arrow:before {
  top: -7px;
  left: 0;
  border-width: 0 8px 8px;
  border-bottom-color: initial;
  transform-origin: center bottom; }

.tippy-box[data-placement^=left] > .tippy-arrow {
  right: 0; }

.tippy-box[data-placement^=left] > .tippy-arrow:before {
  border-width: 8px 0 8px 8px;
  border-left-color: initial;
  right: -7px;
  transform-origin: center left; }

.tippy-box[data-placement^=right] > .tippy-arrow {
  left: 0; }

.tippy-box[data-placement^=right] > .tippy-arrow:before {
  left: -7px;
  border-width: 8px 8px 8px 0;
  border-right-color: initial;
  transform-origin: center right; }

.tippy-box[data-inertia][data-state=visible] {
  transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11); }

.tippy-arrow {
  width: 16px;
  height: 16px;
  color: #333; }

.tippy-arrow:before {
  content: "";
  position: absolute;
  border-color: transparent;
  border-style: solid; }

.tippy-content {
  position: relative;
  padding: 5px 9px;
  z-index: 1; }

.tippy-box[data-animation=scale][data-placement^=top] {
  transform-origin: bottom; }

.tippy-box[data-animation=scale][data-placement^=bottom] {
  transform-origin: top; }

.tippy-box[data-animation=scale][data-placement^=left] {
  transform-origin: right; }

.tippy-box[data-animation=scale][data-placement^=right] {
  transform-origin: left; }

.tippy-box[data-animation=scale][data-state=hidden] {
  transform: scale(0.5);
  opacity: 0; }

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

:root {
  --swiper-theme-color: #007aff; }

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

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

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

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

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

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

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

.swiper-container-pointer-events {
  touch-action: pan-y; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */ }

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

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

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto; }

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

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto; }

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

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff; }

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000; }

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

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */ }

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

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

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%; }

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

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

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

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

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

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

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

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

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2; }

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

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

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

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

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

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

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

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right; }

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progressbar .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-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

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

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

.swiper-pagination-white {
  --swiper-pagination-color: #ffffff; }

.swiper-pagination-black {
  --swiper-pagination-color: #000000; }

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

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

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

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

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

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

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

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

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

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

/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */ }

.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%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/*!
 * baguetteBox.js
 * @author  feimosi
 * @version 1.11.1
 * @url https://github.com/feimosi/baguetteBox.js
 */
#baguetteBox-overlay {
  display: none;
  opacity: 0;
  position: fixed;
  overflow: hidden;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000000;
  background-color: #222;
  background-color: rgba(0, 0, 0, 0.8);
  -webkit-transition: opacity .5s ease;
  transition: opacity .5s ease; }

#baguetteBox-overlay.visible {
  opacity: 1; }

#baguetteBox-overlay .full-image {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center; }

#baguetteBox-overlay .full-image figure {
  display: inline;
  margin: 0;
  height: 100%; }

#baguetteBox-overlay .full-image img {
  display: inline-block;
  width: auto;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  vertical-align: middle;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  -moz-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); }

#baguetteBox-overlay .full-image figcaption {
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  line-height: 1.8;
  white-space: normal;
  color: #ccc;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.6);
  font-family: sans-serif; }

#baguetteBox-overlay .full-image:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px; }

#baguetteBox-slider {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  white-space: nowrap;
  -webkit-transition: left .4s ease, -webkit-transform .4s ease;
  transition: left .4s ease, -webkit-transform .4s ease;
  transition: left .4s ease, transform .4s ease;
  transition: left .4s ease, transform .4s ease, -webkit-transform .4s ease, -moz-transform .4s ease; }

#baguetteBox-slider.bounce-from-right {
  -webkit-animation: bounceFromRight .4s ease-out;
  animation: bounceFromRight .4s ease-out; }

#baguetteBox-slider.bounce-from-left {
  -webkit-animation: bounceFromLeft .4s ease-out;
  animation: bounceFromLeft .4s ease-out; }

@-webkit-keyframes bounceFromRight {
  0% {
    margin-left: 0; }
  50% {
    margin-left: -30px; }
  100% {
    margin-left: 0; } }

@keyframes bounceFromRight {
  0% {
    margin-left: 0; }
  50% {
    margin-left: -30px; }
  100% {
    margin-left: 0; } }

@-webkit-keyframes bounceFromLeft {
  0% {
    margin-left: 0; }
  50% {
    margin-left: 30px; }
  100% {
    margin-left: 0; } }

@keyframes bounceFromLeft {
  0% {
    margin-left: 0; }
  50% {
    margin-left: 30px; }
  100% {
    margin-left: 0; } }

.baguetteBox-button#next-button, .baguetteBox-button#previous-button {
  top: 50%;
  top: calc(50% - 30px);
  width: 44px;
  height: 60px; }

.baguetteBox-button {
  position: absolute;
  cursor: pointer;
  outline: none;
  padding: 0;
  margin: 0;
  border: 0;
  -moz-border-radius: 15%;
  border-radius: 15%;
  background-color: #323232;
  background-color: rgba(50, 50, 50, 0.5);
  color: #ddd;
  font: 1.6em sans-serif;
  -webkit-transition: background-color .4s ease;
  transition: background-color .4s ease; }

.baguetteBox-button:focus, .baguetteBox-button:hover {
  background-color: rgba(50, 50, 50, 0.9); }

.baguetteBox-button#next-button {
  right: 2%; }

.baguetteBox-button#previous-button {
  left: 2%; }

.baguetteBox-button#close-button {
  top: 20px;
  right: 2%;
  right: calc(2% + 6px);
  width: 30px;
  height: 30px; }

.baguetteBox-button svg {
  position: absolute;
  left: 0;
  top: 0; }

/*
    Preloader
    Borrowed from http://tobiasahlin.com/spinkit/
*/
.baguetteBox-spinner {
  width: 40px;
  height: 40px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -20px;
  margin-left: -20px; }

.baguetteBox-double-bounce1,
.baguetteBox-double-bounce2 {
  width: 100%;
  height: 100%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  background-color: #fff;
  opacity: .6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: bounce 2s infinite ease-in-out;
  animation: bounce 2s infinite ease-in-out; }

.baguetteBox-double-bounce2 {
  -webkit-animation-delay: -1s;
  animation-delay: -1s; }

@-webkit-keyframes bounce {
  0%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0); }
  50% {
    -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes bounce {
  0%, 100% {
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    transform: scale(0); }
  50% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    transform: scale(1); } }

body.page-template-page-home {
  min-height: 250vh; }
  body.page-template-page-home section.feature-video {
    width: calc(100vw - var(--scrollbar-width));
    height: 100vh;
    background-color: black; }
    body.page-template-page-home section.feature-video .logo-name-c0, body.page-template-page-home section.feature-video .name {
      left: 50%;
      transform: translateX(-50%); }
    body.page-template-page-home section.feature-video .growing-logo-anim {
      top: 20vh;
      left: 50%;
      transform: translateX(-50%); }
      body.page-template-page-home section.feature-video .growing-logo-anim svg {
        width: 100px;
        height: 100px;
        fill: white; }
      body.page-template-page-home section.feature-video .growing-logo-anim.show {
        opacity: 1; }
    body.page-template-page-home section.feature-video .name {
      top: calc(20vh + 130px); }
      body.page-template-page-home section.feature-video .name svg {
        fill: white;
        width: 328px; }
      body.page-template-page-home section.feature-video .name h1, body.page-template-page-home section.feature-video .name h2, body.page-template-page-home section.feature-video .name h3, body.page-template-page-home section.feature-video .name h4, body.page-template-page-home section.feature-video .name h5 {
        margin: 15px; }
      body.page-template-page-home section.feature-video .name h4 {
        min-width: calc 100vw-var(--scrollbar-width); }
    body.page-template-page-home section.feature-video #iframe-container {
      position: absolute;
      max-width: 100%;
      height: 100vh;
      max-height: 100vh;
      pointer-events: none;
      overflow: hidden;
      width: 100%;
      left: 0;
      top: 0; }
      body.page-template-page-home section.feature-video #iframe-container iframe {
        width: 100vw;
        height: calc(100vw * 0.5625);
        /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
        min-height: 100vh;
        min-width: calc(177.77vh);
        /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        opacity: 0;
        transition: opacity 2s linear; }
        body.page-template-page-home section.feature-video #iframe-container iframe.show {
          opacity: 1; }
    body.page-template-page-home section.feature-video .tag {
      font-size: 30px;
      line-height: 41px;
      font-family: "Noto Serif", sans-serif; }
  body.page-template-page-home section.description {
    background: #EFECE9; }
    body.page-template-page-home section.description p {
      margin-top: 0; }
    body.page-template-page-home section.description .desc p {
      font-weight: 400;
      margin: 0; }
    body.page-template-page-home section.description .lat-lng-c0 {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 50px;
      margin-bottom: -10px; }
      body.page-template-page-home section.description .lat-lng-c0 svg {
        width: 36px; }
      body.page-template-page-home section.description .lat-lng-c0 *:first-child, body.page-template-page-home section.description .lat-lng-c0 *:last-child {
        padding: 20px 60px; }
      body.page-template-page-home section.description .lat-lng-c0 h5, body.page-template-page-home section.description .lat-lng-c0 h6 {
        margin-top: 0;
        margin-bottom: 0; }
  body.page-template-page-home section.usps {
    background: #EFECE9; }
    body.page-template-page-home section.usps h6 {
      opacity: 0;
      transition: opacity 0.4s 1.2s linear; }
    body.page-template-page-home section.usps svg {
      stroke: #1E1E1C;
      opacity: 0;
      transition: 1s opacity cubic-bezier(0.32, 0, 0.67, 0); }
    body.page-template-page-home section.usps .usp-c0 {
      display: flex;
      flex-direction: column; }
      body.page-template-page-home section.usps .usp-c0 svg#border-only {
        position: absolute;
        width: 100%; }
      body.page-template-page-home section.usps .usp-c0.show svg {
        opacity: 1; }
      body.page-template-page-home section.usps .usp-c0.show h6 {
        margin-top: 40px;
        margin-bottom: 0;
        opacity: 1; }
    body.page-template-page-home section.usps .camp-fire svg, body.page-template-page-home section.usps .usp-c0 svg {
      /* #flame-stroke {
          stroke-dasharray: 15.26;
          stroke-dashoffset: 15.26;
        }*/ }
      body.page-template-page-home section.usps .camp-fire svg #border-stroke, body.page-template-page-home section.usps .usp-c0 svg #border-stroke {
        stroke-dasharray: 212.86;
        stroke-dashoffset: 212.86; }
      body.page-template-page-home section.usps .camp-fire svg .flame, body.page-template-page-home section.usps .usp-c0 svg .flame {
        opacity: 0;
        transition: all 1s 1s cubic-bezier(0.11, 0, 0.5, 0); }
      body.page-template-page-home section.usps .camp-fire svg #wood-br-stroke, body.page-template-page-home section.usps .usp-c0 svg #wood-br-stroke {
        stroke-dasharray: 25.318;
        stroke-dashoffset: 25.318; }
      body.page-template-page-home section.usps .camp-fire svg #wood-bl-stroke, body.page-template-page-home section.usps .usp-c0 svg #wood-bl-stroke {
        stroke-dasharray: 25.318;
        stroke-dashoffset: 25.318; }
    body.page-template-page-home section.usps .camp-fire.show svg .paint, body.page-template-page-home section.usps .usp-c0.show svg .paint {
      animation: svg-anim 1s 0.2s cubic-bezier(0.11, 0, 0.5, 0) forwards; }
    body.page-template-page-home section.usps .camp-fire.show svg .paint-linear, body.page-template-page-home section.usps .usp-c0.show svg .paint-linear {
      animation: svg-anim 1s linear forwards; }
    body.page-template-page-home section.usps .camp-fire.show svg .flame, body.page-template-page-home section.usps .usp-c0.show svg .flame {
      opacity: 1; }
    body.page-template-page-home section.usps .forest .trees-c0 .trees-c1 {
      position: absolute;
      width: 60%;
      height: 39%;
      left: 50%;
      bottom: 16%;
      transform: translateX(-50%);
      overflow: hidden; }
      body.page-template-page-home section.usps .forest .trees-c0 .trees-c1 svg {
        transform: translate3d(0, 100%, 0);
        opacity: 0;
        transition: all 1s 0.3s cubic-bezier(0.11, 0, 0.5, 0); }
    body.page-template-page-home section.usps .forest.show .trees-c0 .trees-c1 svg {
      transform: translate3d(0, 0, 0);
      opacity: 1; }
    body.page-template-page-home section.usps .cabins .cabins-c1 {
      position: absolute;
      width: 70%;
      height: 50%;
      left: 50%;
      bottom: 15%;
      transform: translateX(-50%); }
      body.page-template-page-home section.usps .cabins .cabins-c1 #cabin-stroke {
        stroke-dasharray: 105.784;
        stroke-dashoffset: 105.784; }
      body.page-template-page-home section.usps .cabins .cabins-c1 #fade-in {
        opacity: 0;
        transition: opacity 0.6s 1s linear; }
    body.page-template-page-home section.usps .cabins.show #fade-in {
      opacity: 1; }
    body.page-template-page-home section.usps .orchards #tree-top-stroke {
      stroke-dasharray: 56.865;
      stroke-dashoffset: 56.865; }
    body.page-template-page-home section.usps .orchards #tree-trunk-stroke {
      stroke-dasharray: 18.0567;
      stroke-dashoffset: 18.0567; }
    body.page-template-page-home section.usps .orchards #blobs {
      opacity: 0;
      transition: opacity 0.6s 1.2s linear; }
    body.page-template-page-home section.usps .orchards .orchards-c1 {
      position: absolute;
      width: 72%;
      height: 50%;
      left: 50%;
      bottom: 18%;
      transform: translateX(-50%); }
    body.page-template-page-home section.usps .orchards.show #blobs {
      opacity: 1; }
    body.page-template-page-home section.usps .dartmoor .dartmoor-c1 {
      position: absolute;
      width: 77%;
      height: 50%;
      left: 50%;
      bottom: 9.5%;
      transform: translateX(-50%); }
      body.page-template-page-home section.usps .dartmoor .dartmoor-c1 #d-clip1-stroke {
        stroke-dasharray: 89.737;
        stroke-dashoffset: 89.737; }
      body.page-template-page-home section.usps .dartmoor .dartmoor-c1 #d-clip2-stroke {
        stroke-dasharray: 58.908;
        stroke-dashoffset: 58.908; }
      body.page-template-page-home section.usps .dartmoor .dartmoor-c1 #d-clip3-stroke {
        stroke-dasharray: 265.39;
        stroke-dashoffset: 265.39; }
      body.page-template-page-home section.usps .dartmoor .dartmoor-c1 #d-tree {
        opacity: 0;
        transition: opacity 0.6s 1.2s linear; }
    body.page-template-page-home section.usps .dartmoor.show .dartmoor-c1 #d-clip2-stroke {
      animation: svg-anim 1s 0.4s cubic-bezier(0.11, 0, 0.5, 0) forwards; }
    body.page-template-page-home section.usps .dartmoor.show .dartmoor-c1 #d-clip3-stroke {
      animation: svg-anim 1s 0.7s cubic-bezier(0.11, 0, 0.5, 0) forwards; }
    body.page-template-page-home section.usps .dartmoor.show .dartmoor-c1 #d-tree {
      opacity: 1; }
    body.page-template-page-home section.usps .local-produce .local-produce-c1 {
      position: absolute;
      width: 74%;
      height: 50%;
      left: 50%;
      bottom: 14%;
      transform: translateX(-50%);
      /* #table-top-stroke{
          stroke-dasharray: 26.027;
          stroke-dashoffset: 26.027;
        }
        #table-leg-stroke{
          stroke-dasharray: 13.815;
          stroke-dashoffset: 13.815;
        }*/ }
      body.page-template-page-home section.usps .local-produce .local-produce-c1 #lp-tree {
        opacity: 0;
        transition: opacity 0.6s 1.2s linear; }
      body.page-template-page-home section.usps .local-produce .local-produce-c1 .table {
        opacity: 0;
        transition: opacity 0.6s 1.3s linear; }
    body.page-template-page-home section.usps .local-produce.show .local-produce-c1 #table-leg-stroke {
      animation: svg-anim 1s 0.4s cubic-bezier(0.11, 0, 0.5, 0) forwards; }
    body.page-template-page-home section.usps .local-produce.show .local-produce-c1 #lp-tree {
      opacity: 1; }
    body.page-template-page-home section.usps .local-produce.show .local-produce-c1 .table {
      opacity: 1; }

@keyframes svg-anim {
  to {
    stroke-dashoffset: 0; } }
  body.page-template-page-home section.properties {
    margin: 70px 0; }
  @media (max-width: 1199px) {
    body.page-template-page-home section.usps .usp-c0:nth-child(n+4) {
      margin-top: 60px; } }
  @media (max-width: 991px) {
    body.page-template-page-home {
      /*section.feature-video{
      .growing-logo-anim {
        top: 25vh;
        svg {
          width: 80px;
          height: 80px;
        }
      }
      .name {
        top: calc(25vh + 110px);
      }
      .w-500{
        max-width:320px;
        line-height: 28px;
      }
      .tag{
        font-size: 24px;
        line-height: 28px;
      }
    }*/ }
      body.page-template-page-home section.description .lat-lng-c0 {
        margin-top: 35px;
        margin-bottom: -17px; } }
  @media (max-width: 767px) {
    body.page-template-page-home section.feature-video .growing-logo-anim {
      top: 25vh; }
      body.page-template-page-home section.feature-video .growing-logo-anim svg {
        width: 49px;
        height: 49px; }
    body.page-template-page-home section.feature-video .name {
      top: calc(25vh + 80px); }
      body.page-template-page-home section.feature-video .name svg {
        width: 203px; }
    body.page-template-page-home section.feature-video .w-500 {
      max-width: 320px;
      line-height: 28px; }
    body.page-template-page-home section.feature-video .tag {
      font-size: 24px;
      line-height: 28px; }
    body.page-template-page-home section.description .lat-lng-c0 {
      margin-top: 25px;
      margin-bottom: -15px; }
      body.page-template-page-home section.description .lat-lng-c0 *:first-child, body.page-template-page-home section.description .lat-lng-c0 *:last-child {
        padding: 20px 40px; }
    body.page-template-page-home section.usps .usp-c0:nth-child(n+3) {
      margin-top: 50px; } }

body.page-template-page-activities section.description .title {
  margin: 0; }

body.page-template-page-activities section.description .subhead {
  margin-bottom: 40px; }
  body.page-template-page-activities section.description .subhead * {
    margin: 5px 0; }

body.page-template-page-activities section.description .subheader *:first-child {
  margin-top: 14px; }

body.page-template-page-activities section.activities-map {
  position: relative; }
  body.page-template-page-activities section.activities-map .cc {
    position: absolute;
    top: 0;
    right: 0;
    transform: translateY(-100%);
    font-size: 11px;
    opacity: 0.5;
    margin-right: 10px; }
  body.page-template-page-activities section.activities-map .bg-c0 {
    width: 100%;
    height: 100%;
    overflow: hidden; }
    body.page-template-page-activities section.activities-map .bg-c0 > img:first-child {
      width: 100%;
      position: absolute;
      left: 0;
      right: 0;
      opacity: 0.5;
      height: 100%;
      object-fit: cover;
      filter: brightness(0.325) blur(4px); }
  body.page-template-page-activities section.activities-map .map-c0 {
    position: relative;
    height: 0;
    padding-bottom: 87.65%; }
    body.page-template-page-activities section.activities-map .map-c0 > img {
      height: 100%;
      width: 100%;
      /* position: absolute;
         left: 0;
         right: 0;
         opacity: 0.5;*/
      object-fit: cover; }
  body.page-template-page-activities section.activities-map .nymetwood-pin {
    position: absolute;
    width: 40px;
    height: 40px;
    transform: translate(-50%, -100%); }
    body.page-template-page-activities section.activities-map .nymetwood-pin svg {
      fill: #353535;
      width: 100%; }
  body.page-template-page-activities section.activities-map .map-point {
    position: absolute;
    width: 20px;
    height: 20px;
    z-index: 13;
    transform: translate(-50%, -50%);
    background: transparent; }
    body.page-template-page-activities section.activities-map .map-point svg {
      width: 100%;
      height: 100%;
      fill: #d3c9a0; }
  body.page-template-page-activities section.activities-map .map-items-c0 {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }
  body.page-template-page-activities section.activities-map .swiper-next, body.page-template-page-activities section.activities-map .swiper-prev {
    cursor: pointer; }
  body.page-template-page-activities section.activities-map .activities-swiper {
    width: 100%;
    height: 460px;
    position: absolute;
    bottom: -50px; }
  body.page-template-page-activities section.activities-map .c0, body.page-template-page-activities section.activities-map .container {
    width: 100%;
    height: 100%; }
  body.page-template-page-activities section.activities-map .slide-c0 {
    width: 320px;
    height: 460px;
    position: absolute;
    right: 50px;
    -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
    -moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
    -ms-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
    -o-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); }
  body.page-template-page-activities section.activities-map .buttons-c0 {
    width: 100%;
    height: 100%; }
    body.page-template-page-activities section.activities-map .buttons-c0 .container {
      position: relative; }
  body.page-template-page-activities section.activities-map .swiper-prev, body.page-template-page-activities section.activities-map .swiper-next {
    background: transparent;
    width: 30px;
    height: 30px;
    z-index: 99;
    position: absolute;
    bottom: 5%; }
    body.page-template-page-activities section.activities-map .swiper-prev svg, body.page-template-page-activities section.activities-map .swiper-next svg {
      fill: #353535;
      width: 100%;
      transform: rotate(-90deg); }
  body.page-template-page-activities section.activities-map .swiper-next {
    right: 0; }
    body.page-template-page-activities section.activities-map .swiper-next svg {
      transform: rotate(-90deg); }
  body.page-template-page-activities section.activities-map .swiper-prev {
    left: 0; }
    body.page-template-page-activities section.activities-map .swiper-prev svg {
      transform: rotate(90deg); }

body.page-template-page-activities section.activities-list {
  padding-bottom: 0; }
  body.page-template-page-activities section.activities-list .obj-heading {
    margin: 20px 0; }
  body.page-template-page-activities section.activities-list .cols-2 {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 80px);
    position: relative;
    left: -40px; }
    body.page-template-page-activities section.activities-list .cols-2 > * {
      padding: 40px;
      width: 50%; }
    @media (max-width: 1199px) {
      body.page-template-page-activities section.activities-list .cols-2 {
        /*width: calc(100% + 40px);
    left: -$gap / 2;*/
        /*> * {
      padding: $gap/4;
    }*/ } }
    @media (max-width: 991px) {
      body.page-template-page-activities section.activities-list .cols-2 {
        width: calc(100% + 40px);
        left: -20px; }
        body.page-template-page-activities section.activities-list .cols-2 > * {
          padding: 20px; } }
    @media (max-width: 767px) {
      body.page-template-page-activities section.activities-list .cols-2:not(.no-collapse) {
        left: 0;
        width: 100%; }
        body.page-template-page-activities section.activities-list .cols-2:not(.no-collapse) > * {
          padding: 0;
          width: 100%; } }
    @media (max-width: 575px) {
      body.page-template-page-activities section.activities-list .cols-2 {
        /*> * {

      width: 100%;
    }*/ } }
  body.page-template-page-activities section.activities-list .activity-list-card {
    display: inline-block;
    position: relative; }
    body.page-template-page-activities section.activities-list .activity-list-card .img-c0 {
      height: 0;
      width: 100%;
      padding-bottom: 60%;
      position: relative; }
      body.page-template-page-activities section.activities-list .activity-list-card .img-c0 *:first-child, body.page-template-page-activities section.activities-list .activity-list-card .img-c0 > *:first-child > img, body.page-template-page-activities section.activities-list .activity-list-card .img-c0 > img {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%; }
      body.page-template-page-activities section.activities-list .activity-list-card .img-c0 > *:first-child > img {
        object-fit: cover; }
      body.page-template-page-activities section.activities-list .activity-list-card .img-c0 img {
        object-fit: cover; }
    body.page-template-page-activities section.activities-list .activity-list-card .content {
      padding-bottom: 40px; }
      body.page-template-page-activities section.activities-list .activity-list-card .content h5 {
        margin: 20px 0; }
      body.page-template-page-activities section.activities-list .activity-list-card .content .desc {
        margin-bottom: 16px; }
        body.page-template-page-activities section.activities-list .activity-list-card .content .desc p {
          margin: 0; }
      body.page-template-page-activities section.activities-list .activity-list-card .content > div {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        margin-bottom: 40px; }
        @supports (-webkit-line-clamp: 4) {
          body.page-template-page-activities section.activities-list .activity-list-card .content > div {
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: initial;
            display: -webkit-box;
            -webkit-line-clamp: 4;
            -webkit-box-orient: vertical; } }
    body.page-template-page-activities section.activities-list .activity-list-card button {
      position: absolute;
      bottom: 0; }

@media (min-width: 768px) {
  body.page-template-page-activities section.activities-list .cols-2 .activity-list-card:nth-child(n+3) {
    margin-top: 60px; } }

@media (max-width: 1659px) {
  body.page-template-page-activities section.activities-map > .container {
    margin: 0;
    max-width: unset; }
  body.page-template-page-activities section.activities-map .slide-c0 {
    right: 0; } }

body.page-template-page-activities section.activities-map .activity-swiper-card .content > p {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  /*@supports (-webkit-line-clamp: 3) {

          -webkit-line-clamp: 3;
          overflow: hidden;

        }*/ }
  @supports (-webkit-line-clamp: 5) {
    body.page-template-page-activities section.activities-map .activity-swiper-card .content > p {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: initial;
      display: -webkit-box;
      -webkit-line-clamp: 5;
      -webkit-box-orient: vertical; } }

@media (max-width: 1399px) {
  body.page-template-page-activities section.activities-map .activity-swiper-card .content > p {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    /*@supports (-webkit-line-clamp: 3) {

            -webkit-line-clamp: 3;
            overflow: hidden;

          }*/ }
    @supports (-webkit-line-clamp: 4) {
      body.page-template-page-activities section.activities-map .activity-swiper-card .content > p {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: initial;
        display: -webkit-box;
        -webkit-line-clamp: 4;
        -webkit-box-orient: vertical; } } }

body.page-template-page-activities .activity-swiper-card {
  background: white;
  height: 100%;
  display: flex;
  flex-direction: column; }
  body.page-template-page-activities .activity-swiper-card img {
    width: 100%;
    height: 45%;
    object-fit: cover; }
  body.page-template-page-activities .activity-swiper-card .content {
    padding: 0 20px 20px 20px;
    position: relative;
    flex-grow: 1; }
    body.page-template-page-activities .activity-swiper-card .content > div {
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden; }
      @supports (-webkit-line-clamp: 4) {
        body.page-template-page-activities .activity-swiper-card .content > div {
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: initial;
          display: -webkit-box;
          -webkit-line-clamp: 4;
          -webkit-box-orient: vertical; } }
    body.page-template-page-activities .activity-swiper-card .content h5 {
      margin-bottom: 0; }
    body.page-template-page-activities .activity-swiper-card .content button {
      position: absolute;
      bottom: 20px; }

@media (min-width: 1200px) {
  body.page-template-page-activities section.activities-map .swiper-next, body.page-template-page-activities section.activities-map .swiper-prev {
    bottom: 130px; }
  body.page-template-page-activities section.activities-map .swiper-next {
    right: -35px; }
  body.page-template-page-activities section.activities-map .swiper-prev {
    left: -35px; } }

@media (max-width: 1199px) {
  body.page-template-page-activities section.activities-map {
    flex-direction: row; }
    body.page-template-page-activities section.activities-map .content {
      flex-grow: 1;
      -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      -moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      -ms-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      -o-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      box-shadow: unset; }
    body.page-template-page-activities section.activities-map .activity-swiper-card .content > p {
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden;
      /*@supports (-webkit-line-clamp: 3) {

            -webkit-line-clamp: 3;
            overflow: hidden;

          }*/ }
      @supports (-webkit-line-clamp: 3) {
        body.page-template-page-activities section.activities-map .activity-swiper-card .content > p {
          overflow: hidden;
          text-overflow: ellipsis;
          white-space: initial;
          display: -webkit-box;
          -webkit-line-clamp: 3;
          -webkit-box-orient: vertical; } }
    body.page-template-page-activities section.activities-map .activities-swiper {
      height: 186px;
      bottom: -176px; }
    body.page-template-page-activities section.activities-map .slide-c0 {
      height: 100%;
      width: 600px;
      right: unset;
      left: 50%;
      transform: translateX(-50%); }
    body.page-template-page-activities section.activities-map .swiper-next, body.page-template-page-activities section.activities-map .swiper-prev {
      bottom: -80px; }
    body.page-template-page-activities section.activities-map .activity-swiper-card {
      display: flex;
      flex-direction: row;
      height: 186px; }
      body.page-template-page-activities section.activities-map .activity-swiper-card img {
        height: 100%;
        width: 40%;
        position: absolute;
        top: -80%;
        left: 90%;
        z-index: -1;
        -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
        -moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
        -ms-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
        -o-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); }
      body.page-template-page-activities section.activities-map .activity-swiper-card .content {
        position: relative;
        z-index: 2;
        width: 100%; }
      @supports (-webkit-line-clamp: 2) {
        body.page-template-page-activities section.activities-map .activity-swiper-card .content > div {
          -webkit-line-clamp: 2; } }
  body.page-template-page-activities section.activities-list .container {
    margin-top: 100px; } }

@media (max-width: 991px) {
  body.page-template-page-activities section.activities-map .activities-swiper {
    height: 186px;
    bottom: -176px; }
  body.page-template-page-activities section.activities-map .slide-c0 {
    height: 100%;
    width: 600px;
    right: unset;
    left: 50%;
    transform: translateX(-50%); }
  body.page-template-page-activities section.activities-map .content {
    box-shadow: unset; }
  body.page-template-page-activities section.activities-map .activity-swiper-card {
    display: flex;
    flex-direction: row;
    height: 186px; }
    body.page-template-page-activities section.activities-map .activity-swiper-card img {
      height: 100%;
      width: 38%;
      position: absolute;
      top: -80%;
      left: 75%;
      z-index: -1;
      -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      -moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      -ms-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      -o-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
      box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23); }
    body.page-template-page-activities section.activities-map .activity-swiper-card .content {
      position: relative;
      z-index: 2;
      width: 100%; }
    @supports (-webkit-line-clamp: 2) {
      body.page-template-page-activities section.activities-map .activity-swiper-card .content > div {
        -webkit-line-clamp: 2; } }
  body.page-template-page-activities section.activities-list {
    padding-top: 160px; } }

@media (max-width: 767px) {
  body.page-template-page-activities section.activities-map {
    box-shadow: unset; }
    body.page-template-page-activities section.activities-map .activities-swiper {
      height: 186px;
      bottom: -176px; }
    body.page-template-page-activities section.activities-map .slide-c0 {
      width: 500px;
      left: 50%;
      transform: translateX(-50%); }
    body.page-template-page-activities section.activities-map .swiper-next, body.page-template-page-activities section.activities-map .swiper-prev {
      bottom: -80px; }
      body.page-template-page-activities section.activities-map .swiper-next svg, body.page-template-page-activities section.activities-map .swiper-prev svg {
        width: 15px; }
    body.page-template-page-activities section.activities-map .nymetwood-pin {
      width: 30px;
      height: 30px; }
    body.page-template-page-activities section.activities-map .map-point {
      width: 13px;
      height: 13px; }
    body.page-template-page-activities section.activities-map .activity-swiper-card {
      /*.content{

          padding: 10px 15px 15px 15px;
          h5{
            margin: 0;
            font-size: 15px;
          }
          p{
            margin: 6px 0 0 0 ;
            font-size: 14px;
            line-height: 18px;
          }
          .themed-link{
            bottom: 10px;
            span{
              font-size: 12px;
              padding: 5px 10px;
            }
          }
        }
        img{

          height: 90%;
          width: 35%;
          flex-shrink: 0;

          position: absolute;
          top: -80%;
          right: -10%;
          z-index: -1;
          @include box-shadow();

        }*/
      /*.content > div{
          @supports (-webkit-line-clamp: 2) {

            -webkit-line-clamp: 2;

          }
        }*/ }
      body.page-template-page-activities section.activities-map .activity-swiper-card img {
        height: 70%;
        max-width: 150px;
        top: -66%; }
  body.page-template-page-activities section.activities-list .activity-list-card:not(:last-of-type) {
    margin-bottom: 50px; } }

@media (max-width: 575px) {
  body.page-template-page-activities section.activities-map {
    box-shadow: unset; }
    body.page-template-page-activities section.activities-map .activities-swiper {
      height: 160px;
      bottom: -146px; }
    body.page-template-page-activities section.activities-map .slide-c0 {
      width: 96%;
      height: 100%;
      left: 50%;
      transform: translateX(-50%); }
    body.page-template-page-activities section.activities-map .nymetwood-pin {
      width: 30px;
      height: 30px; }
    body.page-template-page-activities section.activities-map .map-point {
      width: 13px;
      height: 13px; }
    body.page-template-page-activities section.activities-map .swiper-next, body.page-template-page-activities section.activities-map .swiper-prev {
      bottom: -80px !important; }
    body.page-template-page-activities section.activities-map .swiper-next {
      right: -15px; }
    body.page-template-page-activities section.activities-map .swiper-prev {
      left: -15px; }
    body.page-template-page-activities section.activities-map .activity-swiper-card {
      height: 100%;
      box-shadow: unset;
      /*.content{

          padding: 10px 15px 15px 15px;
          h5{
            margin: 0;
            font-size: 15px;
          }
          p{
            margin: 6px 0 0 0 ;
            font-size: 14px;
            line-height: 18px;
          }
          .themed-link{
            bottom: 10px;
            span{
              font-size: 12px;
              padding: 5px 10px;
            }
          }
        }
        img{

          height: 90%;
          width: 35%;
          flex-shrink: 0;

          position: absolute;
          top: -80%;
          right: -10%;
          z-index: -1;
          @include box-shadow();

        }*/
      /*.content > div{
          @supports (-webkit-line-clamp: 2) {

            -webkit-line-clamp: 2;

          }
        }*/ }
      body.page-template-page-activities section.activities-map .activity-swiper-card img {
        height: 70%;
        top: -62%;
        width: 28%;
        right: 20%; }
      body.page-template-page-activities section.activities-map .activity-swiper-card .content {
        padding: 10px; }
        body.page-template-page-activities section.activities-map .activity-swiper-card .content h5 {
          margin-top: 8px; }
      body.page-template-page-activities section.activities-map .activity-swiper-card .themed-link {
        bottom: 10px; }
  body.page-template-page-activities section.activities-list {
    margin-top: -50px; }
    body.page-template-page-activities section.activities-list .activity-list-card:not(:last-of-type) {
      margin-bottom: 50px; } }

@media (min-width: 1200px) {
  body.page-template-page-activities section.activities-map .swiper-prev {
    left: unset;
    right: 326px; } }

@media (min-width: 1660px) {
  body.page-template-page-activities section.activities-map .swiper-prev {
    left: unset;
    right: 426px; } }

body.page-template-page-treehouses section.properties {
  padding-top: 0;
  padding-bottom: 0; }

body.page-template-page-treehouses section.amenities {
  margin-top: 70px; }

body.page-template-page-single-property section.description {
  padding-bottom: 20px; }

body.page-template-page-single-property section.more-info {
  padding-top: 0; }
  body.page-template-page-single-property section.more-info .accord-head > div {
    position: relative;
    display: flex;
    justify-content: center; }
    body.page-template-page-single-property section.more-info .accord-head > div > div {
      position: relative; }
    body.page-template-page-single-property section.more-info .accord-head > div .svg-c0 {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: -40px; }
      body.page-template-page-single-property section.more-info .accord-head > div .svg-c0 svg {
        width: 20px; }
  body.page-template-page-single-property section.more-info .accord-content {
    justify-content: flex-start !important; }

body.page-template-page-single-property section.properties {
  padding: 0 !important;
  margin: 60px 0; }

body.page-template-page-single-property section.more-info {
  margin-bottom: 0; }

body.page-template-page-single-property section.treehouses-availability {
  margin-top: 0; }

@media (max-width: 767px) {
  body.page-template-page-single-property section.properties {
    padding-top: 40px;
    padding-bottom: 40px; } }

body.post-template-default .back, body.activity-template-default .back {
  margin-top: 20px; }
  body.post-template-default .back a, body.activity-template-default .back a {
    align-items: center;
    display: flex; }
  body.post-template-default .back svg, body.activity-template-default .back svg {
    position: relative;
    top: -1px;
    transform: rotate(90deg);
    width: 12px;
    margin-right: 10px; }
  body.post-template-default .back p, body.activity-template-default .back p {
    margin: 0;
    text-transform: uppercase; }

body.post-template-default .extra-c0, body.activity-template-default .extra-c0 {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  align-items: flex-start; }
  body.post-template-default .extra-c0 a, body.activity-template-default .extra-c0 a {
    display: inline-block; }
  body.post-template-default .extra-c0 span, body.activity-template-default .extra-c0 span {
    width: 250px; }

body.post-template-default section.description figure.wp-block-image, body.activity-template-default section.description figure.wp-block-image {
  margin: 40px 0; }
  body.post-template-default section.description figure.wp-block-image img, body.activity-template-default section.description figure.wp-block-image img {
    width: 100%;
    object-fit: cover; }

body.post-template-default section.description .head-sub-c0, body.activity-template-default section.description .head-sub-c0 {
  margin-top: 40px;
  padding: 0 !important; }

body.post-template-default section.description .more-info, body.activity-template-default section.description .more-info {
  display: inline-block;
  margin: 40px 0 0 0; }

body.post-template-default section.gallery, body.activity-template-default section.gallery {
  padding-top: 20px;
  padding-bottom: 0;
  margin-top: 15px; }

body.post-template-default section.more-items .f-noto-22, body.activity-template-default section.more-items .f-noto-22 {
  margin: 0px 0 30px; }

@media (max-width: 767px) {
  body.post-template-default section.properties, body.activity-template-default section.properties {
    padding-top: 40px;
    padding-bottom: 40px; }
  body.post-template-default section.gallery .baguette-gallery > div:not(:last-child), body.activity-template-default section.gallery .baguette-gallery > div:not(:last-child) {
    margin-bottom: 10px; }
  body.post-template-default section.more-items .f-noto-22, body.activity-template-default section.more-items .f-noto-22 {
    margin: 0px 0 50px; } }

@media (max-width: 991px) {
  body.post-template-default .extra-c0, body.activity-template-default .extra-c0 {
    margin-bottom: 30px; }
    body.post-template-default .extra-c0 span, body.activity-template-default .extra-c0 span {
      width: 190px; } }

body.page-template-page-contact section.contact-details {
  margin: 60px 0; }
  body.page-template-page-contact section.contact-details .email-phone p {
    margin: 0; }
  body.page-template-page-contact section.contact-details .address {
    margin: 20px 0; }
    body.page-template-page-contact section.contact-details .address p {
      margin: 0; }
  body.page-template-page-contact section.contact-details .find-header {
    margin: 60px 0 40px; }
  body.page-template-page-contact section.contact-details .cc {
    position: absolute;
    top: 0;
    right: 0;
    transform: translateY(-100%);
    font-size: 11px;
    opacity: 0.5;
    margin-right: 10px; }
  body.page-template-page-contact section.contact-details .map-c0 {
    margin-top: 60px;
    position: relative;
    height: 0;
    padding-bottom: 87.65%; }
    body.page-template-page-contact section.contact-details .map-c0 > img {
      height: 100%;
      width: 100%;
      /* position: absolute;
         left: 0;
         right: 0;
         opacity: 0.5;*/
      object-fit: cover; }
  body.page-template-page-contact section.contact-details .nymetwood-pin {
    position: absolute;
    width: 40px;
    height: 40px;
    transform: translate(-50%, -100%); }
    body.page-template-page-contact section.contact-details .nymetwood-pin svg {
      fill: #353535;
      width: 100%; }
  body.page-template-page-contact section.contact-details .directions {
    display: inline-block;
    margin-top: 30px; }
  body.page-template-page-contact section.contact-details .find-header {
    margin: 40px 0 30px; }
  body.page-template-page-contact section.contact-details .map-c0 {
    display: block; }

body.page-template-page-about .content h3 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 400;
  line-height: 35px;
  font-size: 28px; }
  @media (max-width: 991px) {
    body.page-template-page-about .content h3 {
      font-size: 22px;
      line-height: 26px; } }

body.page-template-page-about .content h5 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  line-height: 22px;
  font-size: 18px; }
  @media (max-width: 991px) {
    body.page-template-page-about .content h5.f-resp {
      font-size: 12px;
      line-height: 15px; } }
  @media (max-width: 991px) {
    body.page-template-page-about .content h5.f-resp-14 {
      font-size: 14px;
      line-height: 20px; } }
  @media (max-width: 991px) {
    body.page-template-page-about .content h5 {
      font-size: 12px;
      line-height: 15px; } }

body.page-template-page-about .content h3 {
  margin: 0; }

body.page-template-page-about .content h5 {
  margin: 5px 0 40px 0; }

body.page-template-page-blog .blog-posts {
  margin-top: 60px; }

@media (min-width: 768px) {
  body.page-template-page-blog .cols-2-gap-l > *:nth-child(1), body.page-template-page-blog .cols-2-gap-l > *:nth-child(2) {
    padding-top: 0; } }

.property-card-c0 .img-c0 {
  height: 0;
  width: 100%;
  padding-bottom: 52.3%;
  position: relative;
  overflow: hidden; }
  .property-card-c0 .img-c0 *:first-child, .property-card-c0 .img-c0 > *:first-child > img, .property-card-c0 .img-c0 > img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%; }
  .property-card-c0 .img-c0 > *:first-child > img {
    object-fit: cover; }
  .property-card-c0 .img-c0 img {
    object-fit: cover;
    transition: transform 3s cubic-bezier(0.15, 0.005, 0, 0.915); }

.property-card-c0 .about-c0 {
  background: #262626;
  padding: 20px;
  /*.bottom{
      p, h6{
        color: white;
      }
    }*/ }
  .property-card-c0 .about-c0 .top, .property-card-c0 .about-c0 .bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end; }
    .property-card-c0 .about-c0 .top p, .property-card-c0 .about-c0 .top h6, .property-card-c0 .about-c0 .bottom p, .property-card-c0 .about-c0 .bottom h6 {
      color: white; }
    .property-card-c0 .about-c0 .top > *, .property-card-c0 .about-c0 .bottom > * {
      margin: 0; }
  .property-card-c0 .about-c0 .bottom {
    margin-top: 40px; }
    .property-card-c0 .about-c0 .bottom button span {
      max-width: 180px;
      padding-left: 19px;
      padding-right: 19px; }

.property-card-c0:hover .img-c0 img {
  transform: scale(1.06); }

@media (max-width: 1399px) {
  .property-card-c0 .about-c0 .bottom h6 {
    width: 50%; } }

@media (max-width: 767px) {
  .property-card-c0 .img-c0 {
    padding-bottom: 110%; }
  .property-card-c0 .about-c0 .top h6 {
    display: none; }
  .property-card-c0 .about-c0 .bottom {
    margin: 10px 0;
    flex-wrap: wrap; }
    .property-card-c0 .about-c0 .bottom h6 {
      width: 100%;
      margin-bottom: 40px; } }

section.amenities {
  background: #EFECE9; }
  section.amenities .amenities-c0 > p {
    margin-top: 0;
    margin-bottom: 60px; }
  section.amenities .amenities-c0 .a-main-c0 .a-c0 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    section.amenities .amenities-c0 .a-main-c0 .a-c0 p {
      margin-top: 25px; }
  section.amenities .amenities-c0 .a-main-c0 svg {
    width: 26px; }
  section.amenities .amenities-c0 .extra-c0 {
    /*.a-main-c0{
        .a-c0{
          flex-direction: row;
          align-items: center;
          justify-content: flex-start;
          margin-bottom: 10px;
          svg{
            margin-right: 20px;
            width: 18px;

          }
          p{
            margin: 0;
          }
        }
      }*/ }
    section.amenities .amenities-c0 .extra-c0 .accord-head {
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 48px; }
      section.amenities .amenities-c0 .extra-c0 .accord-head .svg-c0 {
        position: absolute;
        left: calc(50% - 130px);
        top: 47%;
        transform: translateY(-50%); }
      section.amenities .amenities-c0 .extra-c0 .accord-head svg {
        width: 20px;
        margin-right: 20px; }
    section.amenities .amenities-c0 .extra-c0 .extra-c1 {
      padding-top: 50px; }
  @media (max-width: 767px) {
    section.amenities .amenities-c0 .extra-c0 .a-main-c0 .a-c0 {
      position: relative;
      /*svg{
              position: absolute;
              left: 20%;
              width: 18px;
            }*/ } }

section.newsletter {
  margin: 60px 0 75px 0; }
  section.newsletter .newsletter-c0 p:first-child {
    margin-top: 0; }
  section.newsletter .newsletter-c0 .why {
    max-width: 800px;
    margin: 0 auto; }
  section.newsletter .edit-link {
    display: none; }
  section.newsletter form#mailing-list-1 {
    margin-top: 80px;
    display: flex; }
    section.newsletter form#mailing-list-1 label {
      border-bottom: 1px solid black; }
      section.newsletter form#mailing-list-1 label:nth-of-type(1) {
        width: 28%;
        margin: 0; }
      section.newsletter form#mailing-list-1 label:nth-of-type(2) {
        width: 40%;
        margin: 0 100px 0 20px;
        flex-grow: 1; }
      section.newsletter form#mailing-list-1 label input {
        background: transparent;
        border: none;
        outline: none;
        height: 58px;
        margin: 0;
        padding-bottom: 0;
        padding-left: 0;
        font-family: "Montserrat", sans-serif;
        font-weight: 400;
        line-height: 26px;
        font-size: 16px; }
        @media (max-width: 991px) {
          section.newsletter form#mailing-list-1 label input {
            font-size: 12px; } }
        section.newsletter form#mailing-list-1 label input::placeholder {
          font-family: "Montserrat", sans-serif;
          font-weight: 600;
          line-height: 26px;
          font-size: 16px;
          color: #262626; }
          @media (max-width: 991px) {
            section.newsletter form#mailing-list-1 label input::placeholder {
              font-size: 12px; } }
    section.newsletter form#mailing-list-1 button {
      width: 203px;
      flex-grow: 0;
      flex-shrink: 0;
      margin: 0;
      padding: 0 !important;
      min-height: unset; }
    @media (max-width: 991px) {
      section.newsletter form#mailing-list-1 label input {
        position: relative;
        top: 9px; }
      section.newsletter form#mailing-list-1 button {
        margin-top: 20px;
        width: 110px; }
        section.newsletter form#mailing-list-1 button > span {
          padding-left: 0;
          padding-right: 0; } }
  @media (max-width: 991px) {
    section.newsletter form#mailing-list-1 {
      flex-direction: column; }
      section.newsletter form#mailing-list-1 label {
        width: 100%; }
        section.newsletter form#mailing-list-1 label:nth-of-type(1) {
          width: 100%;
          margin: 0 0px 30px; }
        section.newsletter form#mailing-list-1 label:nth-of-type(2) {
          width: 100%;
          margin: 0 0px 30px; } }

section.image-banner {
  height: 460px;
  position: relative;
  width: 100%; }
  section.image-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  section.image-banner.tall {
    height: 80vh;
    min-height: 600px;
    max-height: 900px; }

.activity-swiper-card h5 {
  margin: 25px 0;
  font-size: 18px !important; }

.activity-swiper-card .content {
  font-size: 12px;
  line-height: 16px; }

.activity-swiper-card .themed-link span, .activity-swiper-card .themed-link p {
  font-size: 12px; }

.activity-swiper-card .themed-link > span, .activity-swiper-card .themed-link > p {
  padding-top: 10px;
  padding-bottom: 12px; }

.blog-post-card {
  /* .img-c0{
    overflow: hidden;
  }
  img {
    transition: transform 3s cubic-bezier(0.150, 0.005, 0.000, 0.915);
  }

  &:hover {

    img {
      transform: scale(1.06);

    }
  }*/ }
  .blog-post-card .img-c0 {
    height: 0;
    width: 100%;
    padding-bottom: 66%;
    position: relative; }
    .blog-post-card .img-c0 *:first-child, .blog-post-card .img-c0 > *:first-child > img, .blog-post-card .img-c0 > img {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      width: 100%;
      height: 100%; }
    .blog-post-card .img-c0 > *:first-child > img {
      object-fit: cover; }
  .blog-post-card .obj-heading {
    margin: 20px 0; }
  .blog-post-card .excerpt p {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden; }
    @supports (-webkit-line-clamp: 3) {
      .blog-post-card .excerpt p {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: initial;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical; } }
  .blog-post-card button {
    margin-top: 19px; }

section.carousel-banner {
  width: 100%;
  height: 60vh;
  max-height: 760px;
  position: relative; }
  section.carousel-banner.fullscreen {
    height: 100vh;
    max-height: unset; }
  section.carousel-banner.tall {
    height: 80vh;
    min-height: 600px;
    max-height: 900px; }
  section.carousel-banner .img-swiper {
    overflow: hidden;
    height: 100%; }
  section.carousel-banner img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
  section.carousel-banner .buttons {
    top: 50%;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 101;
    cursor: pointer; }
  section.carousel-banner button {
    background: transparent;
    cursor: pointer; }
    section.carousel-banner button svg {
      stroke: white;
      width: 40px; }
    section.carousel-banner button.swiper-next {
      transform: rotate(-90deg); }
    section.carousel-banner button.swiper-prev {
      transform: rotate(90deg); }

section.gallery {
  margin: 30px 0; }
  section.gallery .baguette-gallery a {
    height: 0;
    padding-bottom: 67%;
    display: block;
    position: relative; }
    section.gallery .baguette-gallery a .img-c0 {
      width: 100%; }
    section.gallery .baguette-gallery a img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  @media (max-width: 767px) {
    section.gallery {
      margin: 50px 0; }
      section.gallery .baguette-gallery > div:nth-child(n+2) {
        padding-top: 20px; } }

section.insta-feed {
  overflow: hidden; }

.sb_instagram_header {
  display: none; }

.sbi_follow_btn {
  display: none !important; }

#sbi_images {
  display: flex;
  flex-wrap: wrap; }
  #sbi_images > div {
    width: 33.333%; }
  #sbi_images svg.svg-inline--fa {
    fill: white;
    stroke: white; }

.insta-c0 {
  padding-bottom: 40px; }
  .insta-c0 #sbi_images > div {
    width: 33.333%; }
    .insta-c0 #sbi_images > div:nth-child(n+4) {
      display: none; }

#sb_instagram.sbi_col_4 #sbi_images .sbi_item {
  width: 33%;
  padding: 20px !important; }
  @media (max-width: 991px) {
    #sb_instagram.sbi_col_4 #sbi_images .sbi_item {
      width: 50%; } }
  @media (max-width: 575px) {
    #sb_instagram.sbi_col_4 #sbi_images .sbi_item {
      padding: 10px !important; } }

#sb_instagram.sbi_width_resp {
  transform: translateX(-20px);
  width: calc(100% + 40px) !important;
  /*@include respond-below(sm){
    transform: translateX(-$container-below-sm-margin - $padding-l);
    width: calc(100% + 80px) !important;
  }*/ }
  @media (max-width: 575px) {
    #sb_instagram.sbi_width_resp {
      transform: translateX(-10px);
      width: calc(100% + 20px) !important; } }

.sbi_load_btn {
  border-radius: 0px !important; }
  .sbi_load_btn > span:nth-of-type(1) {
    text-transform: uppercase;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 12px;
    color: white; }

@font-face {
  font-family: "Montserrat";
  src: url("../assets/fonts/Montserrat-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal; }

@font-face {
  font-family: "Montserrat-thin";
  src: url("../assets/fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "Montserrat";
  src: url("../assets/fonts/Montserrat-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: "Noto Serif";
  src: url("../assets/fonts/NotoSerif-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal; }

/*
@font-face {
  font-family: "Raleway";
  src: url("../assets/fonts/Raleway-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
}
*/
h1, h2, h3, h4, h5, h6 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  /* &.noto-font{
    font-family: "Noto Serif";

  }*/ }
  h1 > span, h2 > span, h3 > span, h4 > span, h5 > span, h6 > span {
    font-family: "Montserrat", sans-serif;
    font-weight: 600; }

* {
  color: #262626; }
  *.white {
    color: white; }

p, span, div {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500; }

h1 {
  font-size: 50px;
  line-height: 72px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h2 {
  font-size: 42px;
  line-height: 55px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h3 {
  font-size: 40px;
  line-height: 0;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h4 {
  font-size: 27px;
  line-height: 46px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h5 {
  font-size: 24px;
  line-height: 30px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

h6 {
  font-size: 16px;
  line-height: 26px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ }

/*h1, h2, h3, h4, h5,h6 {
  font-family: "Quattrocento Sans", sans-serif;
  >span{
    font-family: "Quattrocento Sans", sans-serif;

  }
}*/
.nav-font, button, button > span {
  font-size: 18px;
  line-height: 18px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  margin: 0; }

p.body-l, p.body-l p, span.body-l, span.body-l p, div.body-l, div.body-l p {
  font-size: 34px;
  line-height: 44px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  letter-spacing: normal;
  font-weight: 600; }
  @media (max-width: 991px) {
    p.body-l, p.body-l p, span.body-l, span.body-l p, div.body-l, div.body-l p {
      font-size: 26px;
      line-height: 34px;
      /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ } }
  @media (max-width: 767px) {
    p.body-l, p.body-l p, span.body-l, span.body-l p, div.body-l, div.body-l p {
      font-size: 20px;
      line-height: 26px;
      /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/ } }

p.body-m, p.body-m p, span.body-m, span.body-m p, div.body-m, div.body-m p {
  font-size: 26px;
  line-height: 36px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

p.body-s, p.body-s p, span.body-s, span.body-s p, div.body-s, div.body-s p {
  font-size: 22px;
  line-height: 36px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

p.body-xs, p.body-xs p, span.body-xs, span.body-xs p, div.body-xs, div.body-xs p {
  font-size: 16px;
  line-height: 24px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

body {
  font-size: 22px;
  line-height: 36px;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 400; }

.w-500 {
  font-weight: 500; }

p.body-bold, span.body-bold {
  font-size: 18px;
  line-height: 0;
  /*@if $resize{

    @include respond-below(lg){
      font-size: $font-size / nth($resize, 1);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 1));
      @include leading-to-line-height($leading / nth($resize, 1), $font-size / nth($resize, 1));
    }
    @include respond-below(md){
      font-size: $font-size / nth($resize, 2);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 2));
      @include leading-to-line-height($leading / nth($resize, 2), $font-size / nth($resize, 2));
    }
    @include respond-below(sm){
      font-size: $font-size / nth($resize, 3);
      // font-weight: normal;
      @include tracking-to-letter-spacing($tracking / nth($resize, 3));
      @include leading-to-line-height($leading / nth($resize, 3), $font-size / nth($resize, 3));
    }
   !* @include respond-below(sm){
      font-size: $font-size / nth($resize, 2);;
      // font-weight: normal;
      letter-spacing: $letter-spacing / nth($resize, 2);
      line-height: $line-height/ nth($resize, 2);
    }*!
  }*/
  font-weight: 600; }

/*
p {
  // @include body1-font();
  font-family: "Raleway", sans-serif;
  font-weight: 400;

  span {
    font-weight: 400;
  }
}*/
.f-mont-16 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  line-height: 26px;
  font-size: 16px; }
  @media (max-width: 991px) {
    .f-mont-16 {
      font-size: 12px; } }

.f-mont-20 {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  line-height: 26px;
  font-size: 20px; }
  @media (max-width: 767px) {
    .f-mont-20 {
      font-size: 14px;
      line-height: 18px; } }

.f-mont-18 {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  line-height: 22px;
  font-size: 18px; }
  @media (max-width: 991px) {
    .f-mont-18.f-resp {
      font-size: 12px;
      line-height: 15px; } }
  @media (max-width: 991px) {
    .f-mont-18.f-resp-14 {
      font-size: 14px;
      line-height: 20px; } }
  .f-mont-18 h5, .f-mont-18 h6 {
    font-size: inherit;
    line-height: inherit; }

.f-mont-16-thin {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  line-height: 26px;
  font-size: 16px; }
  @media (max-width: 991px) {
    .f-mont-16-thin {
      font-size: 12px; } }

.f-thin {
  font-weight: 400; }

.f-noto-22 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500;
  line-height: 30px;
  font-size: 22px; }
  @media (max-width: 991px) {
    .f-noto-22 {
      font-size: 20px;
      line-height: 28px; } }
  .f-noto-22 p {
    font-size: inherit;
    line-height: inherit;
    font-family: inherit; }

.f-noto-20 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500;
  line-height: 27px;
  font-size: 20px; }
  @media (max-width: 991px) {
    .f-noto-20 {
      font-size: 19px;
      line-height: 26px; } }
  .f-noto-20 p {
    font-size: inherit;
    line-height: inherit;
    font-family: inherit; }

.f-noto-28 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 400;
  line-height: 35px;
  font-size: 28px; }
  @media (max-width: 991px) {
    .f-noto-28 {
      font-size: 22px;
      line-height: 26px; } }

.f-noto-18 {
  font-family: "Noto Serif", sans-serif;
  font-weight: 500;
  line-height: 25px;
  font-size: 18px; }
  @media (max-width: 991px) {
    .f-noto-18 {
      font-size: 14px;
      line-height: 20px; } }
  .f-noto-18 p {
    font-size: inherit;
    line-height: inherit;
    font-family: inherit; }

/*
@font-face {
  font-family: 'EurostileStandard';
  //src: url("/assets/Gotham-Ultra.woff") format("woff"), url("//assets/Gotham-Ultra.woff") format("truetype");
  // src: url("/assets/Gotham-Ultra2.woff") format("woff");
  // src: url("/assets/Gotham_UltraItalic.otf") format("opentype");
  //src: url("/assets/Gotham-Ultra.otf") format("opentype");
  src: url("../../dist/assets/fonts/EurostileLTStd-Ex2.otf")
}
*/
.treehouses-availability {
  margin-top: 70px;
  background: #FFFFFF;
  padding-top: 30px;
  margin-bottom: 70px; }
  .treehouses-availability .name {
    font-weight: 500 !important; }
  .treehouses-availability > div {
    display: flex;
    justify-content: space-evenly;
    align-items: center; }
    .treehouses-availability > div > div {
      width: 100%; }
      @media (min-width: 1200px) {
        .treehouses-availability > div > div {
          width: 80%; }
          .treehouses-availability > div > div > div:nth-child(1) {
            padding-right: 100px; }
          .treehouses-availability > div > div > div:nth-child(2) {
            padding-left: 100px; } }
      @media (max-width: 991px) {
        .treehouses-availability > div > div {
          width: 100%; } }
      @media (max-width: 767px) {
        .treehouses-availability > div > div > div:nth-child(2) {
          padding-top: 60px; } }
  .treehouses-availability .calendarWidget {
    font-size: 14px; }
  .treehouses-availability .multiCalendarWidget {
    background: #FFFFFF !important; }
    .treehouses-availability .multiCalendarWidget h2 {
      padding-top: 20px;
      font-family: "Noto Serif", sans-serif !important;
      font-weight: 500 !important;
      line-height: 25px !important;
      font-size: 18px !important; }
      @media (max-width: 991px) {
        .treehouses-availability .multiCalendarWidget h2 {
          font-size: 14px !important;
          line-height: 20px !important; } }
    .treehouses-availability .multiCalendarWidget .fullCalendar:nth-child(1) {
      width: 100% !important; }
    .treehouses-availability .multiCalendarWidget .fullCalendar:nth-child(2) {
      display: none !important; }
  .treehouses-availability .multiCalendarWidget .btn-next {
    /* right: 26px !important; */
    right: 0; }
  .treehouses-availability .multiCalendarWidget .btn-next.first {
    display: block !important; }
  .treehouses-availability .logo {
    display: none; }
  .treehouses-availability .multiCalendarWidget .singleCalendarWidget table td.departure, .treehouses-availability .multiCalendarWidget .singleCalendarWidget h2 table td.departure {
    background: linear-gradient(to right bottom, #ffbfbf 50%, #FFFFFF 50%) !important; }
  .treehouses-availability .multiCalendarWidget .singleCalendarWidget table td.arrival, .treehouses-availability .multiCalendarWidget .singleCalendarWidget h2 table td.arrival {
    background: linear-gradient(to right bottom, #FFFFFF 50%, #ffbfbf 50%) !important; }

/*
.booking-search-content{
  display: flex;
  flex-wrap: wrap;

  > *:nth-child(1), *:nth-child(2){
    display: none;
  }
  > *:nth-child(3), *:nth-child(4){
    width: 50%;
    margin-left: unset !important;
    margin-right: unset !important;
  }
}*/
body, html {
  margin: 0; }

#wpadminbar {
  display: none; }

li, a, a:visited {
  text-decoration: none; }

.show-markers li, .show-markers ul {
  list-style: initial; }

.show-markers *::marker {
  content: normal;
  display: block; }

.show-markers ul {
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin: 1em; }

ul {
  margin-block-start: 0;
  margin-block-end: 0;
  margin: 0; }

ul, li {
  list-style: none;
  list-style-type: none; }

button {
  border: none;
  outline: none;
  padding: 0; }

button.themed-link {
  display: inline-flex;
  justify-content: center;
  cursor: pointer;
  text-transform: uppercase;
  background: transparent; }
  button.themed-link > div, button.themed-link > span {
    display: block;
    padding: 14px 42px 16px 42px; }
    @media (max-width: 991px) {
      button.themed-link > div, button.themed-link > span {
        padding-top: 10px;
        padding-bottom: 12px; } }
  button.themed-link p, button.themed-link span {
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    line-height: 22px;
    font-size: 18px;
    color: white; }
    @media (max-width: 991px) {
      button.themed-link p.f-resp, button.themed-link span.f-resp {
        font-size: 12px;
        line-height: 15px; } }
    @media (max-width: 991px) {
      button.themed-link p.f-resp-14, button.themed-link span.f-resp-14 {
        font-size: 14px;
        line-height: 20px; } }
    @media (max-width: 991px) {
      button.themed-link p, button.themed-link span {
        font-size: 12px;
        line-height: 15px; } }
  button.themed-link br {
    display: none; }
  button.themed-link.primary > div, button.themed-link.primary > span {
    background: #353535; }
  button.themed-link.light {
    background: white; }
    button.themed-link.light > div, button.themed-link.light > span {
      background: white; }
    button.themed-link.light p, button.themed-link.light span {
      color: #262626; }
  button.themed-link:hover > div, button.themed-link:hover > span, button.themed-link.themed-link-active > div, button.themed-link.themed-link-active > span {
    transition: background 0.4s linear; }
  button.themed-link:hover.primary > div, button.themed-link:hover.primary > span, button.themed-link.themed-link-active.primary > div, button.themed-link.themed-link-active.primary > span {
    background: #d3c9a0; }
  button.themed-link:hover.primary p, button.themed-link:hover.primary span, button.themed-link.themed-link-active.primary p, button.themed-link.themed-link-active.primary span {
    color: white; }
  button.themed-link:hover.light > div, button.themed-link:hover.light > span, button.themed-link.themed-link-active.light > div, button.themed-link.themed-link-active.light > span {
    background: #d3c9a0; }

body.page-template-page-home nav.touch-menu .logo.for-desktop {
  opacity: 0;
  transition: opacity 0.3s linear; }

body.page-template-page-home nav.touch-menu .logo.for-touch-device {
  opacity: 0;
  transition: opacity 0.3s linear; }

body.page-template-page-home #wrapper-navbar:hover nav.touch-menu .logo.for-desktop, body.page-template-page-home #wrapper-navbar.opaque nav.touch-menu .logo.for-desktop, body.page-template-page-home #wrapper-navbar.mob-menu-active nav.touch-menu .logo.for-desktop, body.page-template-page-home #wrapper-navbar.is-closing nav.touch-menu .logo.for-desktop, body.page-template-page-home #wrapper-navbar.logo-at-top nav.touch-menu .logo.for-desktop {
  opacity: 1; }

body.page-template-page-home #wrapper-navbar:hover nav.touch-menu .logo.for-touch-device, body.page-template-page-home #wrapper-navbar.opaque nav.touch-menu .logo.for-touch-device, body.page-template-page-home #wrapper-navbar.mob-menu-active nav.touch-menu .logo.for-touch-device, body.page-template-page-home #wrapper-navbar.is-closing nav.touch-menu .logo.for-touch-device, body.page-template-page-home #wrapper-navbar.logo-at-top nav.touch-menu .logo.for-touch-device {
  opacity: 1; }

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

.v-padding-xxl {
  padding-top: 170px;
  padding-bottom: 170px; }
  @media (max-width: 1199px) {
    .v-padding-xxl.v-padding-resp {
      padding-top: 130px;
      padding-bottom: 130px; } }
  @media (max-width: 991px) {
    .v-padding-xxl.v-padding-resp {
      padding-top: 110px;
      padding-bottom: 110px; } }
  @media (max-width: 767px) {
    .v-padding-xxl.v-padding-resp {
      padding-top: 80px;
      padding-bottom: 80px; } }

.v-padding-xl {
  padding-top: 110px;
  padding-bottom: 110px; }
  @media (max-width: 991px) {
    .v-padding-xl.v-padding-resp {
      padding-top: 80px;
      padding-bottom: 80px; } }
  @media (max-width: 767px) {
    .v-padding-xl.v-padding-resp {
      padding-top: 50px;
      padding-bottom: 50px; } }

.v-padding-l {
  padding-top: 80px;
  padding-bottom: 80px; }

.v-padding-m {
  padding-top: 60px;
  padding-bottom: 60px; }

.v-padding-s {
  padding-top: 50px;
  padding-bottom: 50px; }

.pos-rel {
  position: relative; }

.pos-abs, .pos-abs-0-0-0-0 {
  position: absolute; }

.w-h-100 {
  width: 100%;
  height: 100%; }

.pos-abs-0-0-0-0 {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.d-flex {
  display: flex; }

.t-0 {
  top: 0; }

.r-0 {
  right: 0; }

.b-0 {
  bottom: 0; }

.l-0 {
  left: 0; }

.w-md-c0 {
  max-width: 70%;
  margin-left: auto;
  margin-right: auto; }

p.font-mont-thin, div.font-mont-thin, span.font-mont-thin {
  font-family: 'Montserrat-thin', sans-serif; }

p.font-mont, div.font-mont, span.font-mont {
  font-family: 'Montserrat', sans-serif; }

.square {
  height: 0;
  width: 100%;
  padding-bottom: 100%;
  position: relative; }
  .square *:first-child, .square > *:first-child > img, .square > img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%; }
  .square > *:first-child > img {
    object-fit: cover; }

@media (max-width: 991px) {
  .w-md-c0 {
    max-width: 90%; } }

@media (max-width: 767px) {
  .w-md-c0 {
    max-width: unset; }
  .below-sm--v-padding-sm {
    padding-top: 50px;
    padding-bottom: 50px; }
  .below-sm--v-padding-m {
    padding-top: 60px;
    padding-bottom: 60px; } }

.cols-6 {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 15.4px);
  position: relative;
  left: -7.7px;
  /*@include respond-below(md){
    width: calc(100% + 7.7px);
    left: -$gap / 2;
    > * {
      //width: 50%;
      padding: $gap/2;
    }
  }*/
  /* @include respond-below(xs){
    width: 100%;
    left: 0;
    > * {
      width: 100%;
      padding: 0;
    }
  }*/ }
  .cols-6 > * {
    box-sizing: border-box;
    width: calc(100% / 6);
    padding: 7.7px; }
  @media (max-width: 1199px) {
    .cols-6 > * {
      width: 33.333%; } }
  @media (max-width: 767px) {
    .cols-6 {
      /*> * {
      //width: 50%;
      padding: $gap/2;
    }*/ }
      .cols-6 > * {
        width: 50%; } }
  @media (min-width: 1200px) and (max-width: 1399px) {
    .cols-6.early-collapse > * {
      width: 33.333%; } }

.cols-2 {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 20px);
  position: relative;
  left: -10px;
  justify-content: center; }
  .cols-2 > * {
    padding: 10px;
    width: 50%; }
  @media (max-width: 1199px) {
    .cols-2 {
      /*width: calc(100% + 10px);
    left: -$gap / 2;*/
      /*> * {
      padding: $gap/4;
    }*/ } }
  @media (max-width: 991px) {
    .cols-2 {
      width: calc(100% + 10px);
      left: -5px; }
      .cols-2 > * {
        padding: 5px; } }
  @media (max-width: 767px) {
    .cols-2:not(.no-collapse) {
      left: 0;
      width: 100%; }
      .cols-2:not(.no-collapse) > * {
        padding: 0;
        width: 100%; } }
  @media (max-width: 575px) {
    .cols-2 {
      /*> * {

      width: 100%;
    }*/ } }
  @media (min-width: 768px) and (max-width: 991px) {
    .cols-2.for-properties {
      width: 80%;
      left: calc(10% - 5px); }
      .cols-2.for-properties > * {
        width: 100%; }
        .cols-2.for-properties > *:not(:last-child) {
          margin-bottom: 50px; } }
  @media (max-width: 767px) {
    .cols-2.for-properties > *:not(:last-child) {
      margin-bottom: 50px; } }

.dummy-item {
  height: 0; }

.cols-2-gap-l {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 80px);
  position: relative;
  left: -40px; }
  .cols-2-gap-l > * {
    padding: 40px;
    width: 50%; }
  @media (max-width: 1199px) {
    .cols-2-gap-l {
      /*width: calc(100% + 40px);
    left: -$gap / 2;*/
      /*> * {
      padding: $gap/4;
    }*/ } }
  @media (max-width: 991px) {
    .cols-2-gap-l {
      width: calc(100% + 40px);
      left: -20px; }
      .cols-2-gap-l > * {
        padding: 20px; } }
  @media (max-width: 767px) {
    .cols-2-gap-l:not(.no-collapse) {
      left: 0;
      width: 100%; }
      .cols-2-gap-l:not(.no-collapse) > * {
        padding: 0;
        width: 100%; } }
  @media (max-width: 575px) {
    .cols-2-gap-l {
      /*> * {

      width: 100%;
    }*/ } }
  @media (max-width: 767px) {
    .cols-2-gap-l > *:not(:last-child) {
      margin-bottom: 30px; } }

.todo {
  opacity: 0.3;
  padding: 10px;
  margin: 20px;
  outline: 1px solid crimson; }

ul {
  padding-inline-start: 0; }
  ul a:hover {
    color: #d3c9a0; }
  ul li.current_page_item > a {
    color: #d3c9a0; }
  ul li.current_page_item .group-label > a {
    color: #d3c9a0; }

.tippy-box[data-theme~='custom'] {
  background-color: #d3c9a0;
  color: white;
  font-size: 14px;
  z-index: 14; }
  .tippy-box[data-theme~='custom'] .tippy-content {
    color: white;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    font-size: 13px; }
  .tippy-box[data-theme~='custom'] .tippy-arrow {
    color: #d3c9a0; }

.tippy-box[data-theme~='nymet'] {
  background-color: #353535;
  color: white;
  font-size: 14px; }
  .tippy-box[data-theme~='nymet'] .tippy-content {
    color: white;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    font-size: 12px; }
  .tippy-box[data-theme~='nymet'] .tippy-arrow {
    color: #353535; }

.obj-heading {
  font-weight: 400;
  font-family: "Noto Serif", sans-serif;
  font-size: 22px;
  line-height: 26px;
  letter-spacing: normal; }

.f-subheading {
  font-weight: 600;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  line-height: 26px;
  letter-spacing: normal; }

.head-sub-c0 {
  margin: 60px 0 36px; }
  .head-sub-c0 h3 {
    margin: 0; }
  .head-sub-c0 h6 {
    margin: 3px 0 0; }
  @media (max-width: 767px) {
    .head-sub-c0 {
      margin-bottom: 25px; } }

.f-noto-28.title {
  margin-top: 60px; }

.m-b-60 {
  margin-bottom: 60px; }

.m-t-60 {
  margin-top: 60px; }

.m-60 {
  margin-bottom: 60px;
  margin-top: 60px; }

.baguetteBox-button {
  background: transparent; }
  .baguetteBox-button:hover, .baguetteBox-button:focus, .baguetteBox-button:active {
    background: transparent; }

.no-b-padding {
  padding-bottom: 0; }

.no-t-padding {
  padding-top: 0; }

.img-hover-anim .img-c0 {
  overflow: hidden; }

.img-hover-anim img {
  transition: transform 3s cubic-bezier(0.15, 0.005, 0, 0.915); }

.img-hover-anim:hover img {
  transform: scale(1.06); }

.yikes-easy-mc-success-message {
  text-align: center;
  background: transparent !important;
  color: #d3c9a0 !important; }

.container-fixed {
  padding-left: 60px;
  padding-right: 60px; }
  @media (max-width: 767px) {
    .container-fixed {
      padding-left: 20px;
      padding-right: 20px; } }

.day:not(.disabled) {
  color: red; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzLmNzcyIsInNvdXJjZXMiOlsic3R5bGVzLnNjc3MiLCJtLWdyaWQuc2NzcyIsImxpYi9fdmFyaWFibGVzLnNjc3MiLCJsaWIvX21lZGlhLXF1ZXJpZXMuc2NzcyIsImxpYi9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsImxpYi9oYW1idXJnZXJzL19iYXNlLnNjc3MiLCJsaWIvaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLnNjc3MiLCJsaWIvaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLXIuc2NzcyIsImxpYi9vYnNlcnZlci10cmlnZ2VyZWQtYW5pbWF0aW9ucy5zY3NzIiwibGliL19taXhpbnMuc2NzcyIsImxpYi9hY2NvcmRpYW4uc2NzcyIsInR5cG9ncmFwaHkuc2NzcyIsImhlYWRlci5zY3NzIiwiaGVhZGVyLXRvdWNoLWRldmljZS5zY3NzIiwiYm9va2luZy1wYW5lbC5zY3NzIiwiZm9vdGVyLnNjc3MiLCJhbmltLWxvZ28uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy90aXBweS5qcy9kaXN0L3RpcHB5LmNzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy90aXBweS5qcy9hbmltYXRpb25zL3NjYWxlLmNzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvc3dpcGVyLWJ1bmRsZS5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvc3dpcGVyL2NvbXBvbmVudHMvZWZmZWN0LWZhZGUvZWZmZWN0LWZhZGUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9iYWd1ZXR0ZWJveC5qcy9kaXN0L2JhZ3VldHRlQm94LmNzcyIsInBhZ2UtaG9tZS5zY3NzIiwicGFnZS1hY3Rpdml0aWVzLnNjc3MiLCJwYWdlLWNhYmlucy5zY3NzIiwicGFnZS1zaW5nbGUtcHJvcGVydHkuc2NzcyIsInBhZ2Utc2luZ2xlLWJsb2ctcG9zdC5zY3NzIiwicGFnZS1jb250YWN0LnNjc3MiLCJwYWdlLWFib3V0LnNjc3MiLCJwYWdlLWJsb2cuc2NzcyIsInRlbXBsYXRlLXBhcnRzL3Byb3BlcnR5LWNhcmQuc2NzcyIsInRlbXBsYXRlLXBhcnRzL2FtZW5pdGllcy5zY3NzIiwidGVtcGxhdGUtcGFydHMvbmV3c2xldHRlci5zY3NzIiwidGVtcGxhdGUtcGFydHMvaW1hZ2UtYmFubmVyLnNjc3MiLCJ0ZW1wbGF0ZS1wYXJ0cy9hY3Rpdml0eS1zd2lwZXItY2FyZC5zY3NzIiwidGVtcGxhdGUtcGFydHMvYmxvZy1wb3N0LWNhcmQuc2NzcyIsInRlbXBsYXRlLXBhcnRzL2Nhcm91c2VsLWJhbm5lci5zY3NzIiwidGVtcGxhdGUtcGFydHMvY29scy1nYWxsZXJ5LnNjc3MiLCJ0ZW1wbGF0ZS1wYXJ0cy9pbnN0YWdyYW0tZmVlZC5zY3NzIiwidGVtcGxhdGUtcGFydHMvYXZhaWxhYmlsaXR5LWNhbGVuZGFyLnNjc3MiLCJsb2RnaWZ5LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm0tZ3JpZFwiO1xuQGltcG9ydCBcImxpYi9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2Nzc1wiO1xuQGltcG9ydCBcImxpYi9vYnNlcnZlci10cmlnZ2VyZWQtYW5pbWF0aW9uc1wiO1xuQGltcG9ydCBcImxpYi9hY2NvcmRpYW5cIjtcbkBpbXBvcnQgXCJ0eXBvZ3JhcGh5XCI7XG5AaW1wb3J0IFwiaGVhZGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJoZWFkZXItdG91Y2gtZGV2aWNlXCI7XG5AaW1wb3J0IFwiYm9va2luZy1wYW5lbFwiO1xuQGltcG9ydCBcImZvb3RlclwiO1xuQGltcG9ydCBcImFuaW0tbG9nb1wiO1xuXG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL3RpcHB5LmpzL2Rpc3QvdGlwcHlcIjtcbi8vIEBpbXBvcnQgXCJub2RlX21vZHVsZXMvdGlwcHkuanMvZGlzdC9zdmctYXJyb3cuY3NzXCI7XG5AaW1wb3J0IFwibm9kZV9tb2R1bGVzL3RpcHB5LmpzL2FuaW1hdGlvbnMvc2NhbGVcIjtcbkBpbXBvcnQgXCJub2RlX21vZHVsZXMvc3dpcGVyL3N3aXBlci1idW5kbGVcIjtcbkBpbXBvcnQgXCJub2RlX21vZHVsZXMvc3dpcGVyL2NvbXBvbmVudHMvZWZmZWN0LWZhZGUvZWZmZWN0LWZhZGVcIjtcblxuQGltcG9ydCBcIm5vZGVfbW9kdWxlcy9iYWd1ZXR0ZWJveC5qcy9kaXN0L2JhZ3VldHRlQm94XCI7XG5cbi8vUEFHRVNcbkBpbXBvcnQgXCJwYWdlLWhvbWVcIjtcbkBpbXBvcnQgXCJwYWdlLWFjdGl2aXRpZXNcIjtcbkBpbXBvcnQgXCJwYWdlLWNhYmluc1wiO1xuQGltcG9ydCBcInBhZ2Utc2luZ2xlLXByb3BlcnR5XCI7XG5AaW1wb3J0IFwicGFnZS1zaW5nbGUtYmxvZy1wb3N0XCI7XG5AaW1wb3J0IFwicGFnZS1jb250YWN0XCI7XG5AaW1wb3J0IFwicGFnZS1hYm91dFwiO1xuQGltcG9ydCBcInBhZ2UtYmxvZ1wiO1xuXG4vL1RFTVBMQVRFLVBBUlRTXG5AaW1wb3J0IFwidGVtcGxhdGUtcGFydHMvcHJvcGVydHktY2FyZC5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGUtcGFydHMvYW1lbml0aWVzLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS1wYXJ0cy9uZXdzbGV0dGVyLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS1wYXJ0cy9pbWFnZS1iYW5uZXIuc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlLXBhcnRzL2FjdGl2aXR5LXN3aXBlci1jYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS1wYXJ0cy9ibG9nLXBvc3QtY2FyZFwiO1xuQGltcG9ydCBcInRlbXBsYXRlLXBhcnRzL2Nhcm91c2VsLWJhbm5lclwiO1xuQGltcG9ydCBcInRlbXBsYXRlLXBhcnRzL2NvbHMtZ2FsbGVyeVwiO1xuQGltcG9ydCBcInRlbXBsYXRlLXBhcnRzL2luc3RhZ3JhbS1mZWVkLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZS1wYXJ0cy9hdmFpbGFiaWxpdHktY2FsZW5kYXJcIjtcblxuQGltcG9ydCBcImxvZGdpZnkuc2Nzc1wiO1xuXG5ib2R5e1xuICAvLyBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5LCBodG1se1xuICBtYXJnaW46IDA7XG59XG5cbiN3cGFkbWluYmFye1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5cbmxpLGEsIGE6dmlzaXRlZHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2hvdy1tYXJrZXJze1xuXG4gIGxpLCB1bHtcbiAgICBsaXN0LXN0eWxlOiBpbml0aWFsO1xuICB9XG4gICo6Om1hcmtlcntcbiAgICBjb250ZW50OiBub3JtYWw7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgdWx7XG4gICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW07XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogMWVtO1xuICAgIG1hcmdpbjogMWVtO1xuICB9XG59XG5cbnVse1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxudWwsIGxpe1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbmgxLGgyLGgzLGg0LGg1LGg2LHB7XG4gIC8vbWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xuICAvLyBtYXJnaW4tYmxvY2stZW5kOiAwO1xufVxuXG5idXR0b257XG4gIGJvcmRlcjpub25lO1xuICBvdXRsaW5lOm5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5idXR0b24udGhlbWVkLWxpbmt7XG4gIEBpbmNsdWRlIHRoZW1lZC1saW5rKCk7XG59XG5cblxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtaG9tZXtcbiAgQGluY2x1ZGUgaGlkZS1kZXN0b3AtbG9nby1hdC1wYWdlLXRvcCgpO1xufVxuXG5cbi50ZXh0LWFsaWduLWN7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnYtcGFkZGluZy14eGx7XG4gIHBhZGRpbmctdG9wOiAkdi1wYWRkaW5nLXh4bDtcbiAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmcteHhsO1xuICAmLnYtcGFkZGluZy1yZXNwe1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgICAgcGFkZGluZy10b3A6ICR2LXBhZGRpbmcteHhsLWxnO1xuICAgICAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmcteHhsLWxnO1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgcGFkZGluZy10b3A6ICR2LXBhZGRpbmcteHhsLW1kO1xuICAgICAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmcteHhsLW1kO1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuXG4gICAgICBwYWRkaW5nLXRvcDogJHYtcGFkZGluZy14eGwtc207XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJHYtcGFkZGluZy14eGwtc207XG5cbiAgICB9XG4gIH1cbn1cblxuXG4udi1wYWRkaW5nLXhse1xuICBwYWRkaW5nLXRvcDogJHYtcGFkZGluZy14bDtcbiAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmcteGw7XG4gICYudi1wYWRkaW5nLXJlc3B7XG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICBwYWRkaW5nLXRvcDogJHYtcGFkZGluZy14bC1tZDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkdi1wYWRkaW5nLXhsLW1kO1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuXG4gICAgICBwYWRkaW5nLXRvcDogJHYtcGFkZGluZy14bC1zbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkdi1wYWRkaW5nLXhsLXNtO1xuXG4gICAgfVxuICB9XG59XG5cbi52LXBhZGRpbmctbHtcbiAgcGFkZGluZy10b3A6ICR2LXBhZGRpbmctbDtcbiAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmctbDtcbn1cbi52LXBhZGRpbmctbXtcbiAgcGFkZGluZy10b3A6ICR2LXBhZGRpbmctbTtcbiAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmctbTtcbn1cbi52LXBhZGRpbmctc3tcbiAgcGFkZGluZy10b3A6ICR2LXBhZGRpbmctcztcbiAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmctcztcbn1cblxuLnBvcy1yZWx7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnBvcy1hYnMsIC5wb3MtYWJzLTAtMC0wLTB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnctaC0xMDB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5wb3MtYWJzLTAtMC0wLTB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLmQtZmxleHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLnQtMHtcbiAgdG9wOiAwO1xufVxuLnItMHtcbiAgcmlnaHQ6IDA7XG59XG4uYi0we1xuICBib3R0b206IDA7XG59XG4ubC0we1xuICBsZWZ0OiAwO1xufVxuXG5cbi53LW1kLWMwe1xuICBtYXgtd2lkdGg6IDcwJTtcbiAgbWFyZ2luLWxlZnQ6ICBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbn1cblxucCxkaXYsc3BhbntcbiAgJi5mb250LW1vbnQtdGhpbntcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQtdGhpbicsIHNhbnMtc2VyaWY7XG4gIH1cbiAgJi5mb250LW1vbnR7XG4gICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiAgfVxufVxuXG5cbi5zcXVhcmV7XG4gIEBpbmNsdWRlIGFzcGVjdCgxMDAlKTtcbiAgLy8gYmFja2dyb3VuZDogcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjQyKTtcbn1cblxuQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gIC53LW1kLWMwe1xuICAgIG1heC13aWR0aDogOTAlO1xuICB9XG59XG5cbkBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuICAudy1tZC1jMHtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICB9XG4gIC5iZWxvdy1zbS0tdi1wYWRkaW5nLXNte1xuICAgIHBhZGRpbmctdG9wOiAkdi1wYWRkaW5nLXM7XG4gICAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmctcztcbiAgfVxuICAuYmVsb3ctc20tLXYtcGFkZGluZy1te1xuICAgIHBhZGRpbmctdG9wOiAkdi1wYWRkaW5nLW07XG4gICAgcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmctbTtcbiAgfVxufVxuXG4uY29scy02e1xuICBAaW5jbHVkZSBzaXgtY29scyg3LjdweCk7XG4gICYuZWFybHktY29sbGFwc2V7XG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZXR3ZWVuKGxnLHhsKXtcbiAgICAgID4gKiB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMlO1xuICAgICAgICAvLyBwYWRkaW5nOiAkZ2FwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNvbHMtMntcbiAgJGdhcDogMTBweDtcbiAgQGluY2x1ZGUgdHdvLWNvbHMoJGdhcCk7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAmLmZvci1wcm9wZXJ0aWVze1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZXR3ZWVuKHNtLCBtZCl7XG4gICAgICB3aWR0aDogODAlO1xuICAgICAgbGVmdDogY2FsYygxMCUgLSAjeyRnYXAvMn0pO1xuICAgICAgPiAqIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKXtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG4gICAgICA+ICoge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAmLm5vLWNvbGxhcHNle1xuXG4gIH1cbn1cblxuLmR1bW15LWl0ZW17XG4gIGhlaWdodDogMDtcbn1cblxuLmNvbHMtMi1nYXAtbHtcbiAgJGdhcDogNDBweDtcbiAgQGluY2x1ZGUgdHdvLWNvbHMoJGdhcCk7XG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuICAgID4gKiB7XG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRvZG97XG4gIG9wYWNpdHk6IDAuMztcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luOiAyMHB4O1xuICBvdXRsaW5lOiAxcHggc29saWQgY3JpbXNvbjtcbn1cblxudWx7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICBhe1xuICAgICY6aG92ZXJ7XG4gICAgICBjb2xvcjogJGFjdGl2ZS1jb2xvcjI7XG4gICAgfVxuICB9XG4gIGxpLmN1cnJlbnRfcGFnZV9pdGVte1xuICAgID4gYXtcbiAgICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yMjtcbiAgICB9XG4gICAgLmdyb3VwLWxhYmVse1xuICAgICAgPiBhe1xuICAgICAgICBjb2xvcjogJGFjdGl2ZS1jb2xvcjI7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRpcHB5LWJveFtkYXRhLXRoZW1lfj0nY3VzdG9tJ10ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWNvbG9yMztcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHotaW5kZXg6IDE0O1xuICAvLyBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvci0xMDA7XG4gIC50aXBweS1jb250ZW50e1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICAgIC8vQGluY2x1ZGUgbmF2LWZvbnQoKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIC8vYm9yZGVyOiAycHggc29saWQgJHByaW1hcnktY29sb3ItMTAwO1xuICB9XG4gIC50aXBweS1hcnJvd3tcbiAgICBjb2xvcjogJGFjdGl2ZS1jb2xvcjM7XG4gIH1cbn1cbi50aXBweS1ib3hbZGF0YS10aGVtZX49J255bWV0J10ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvci0xMDA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICAvLyBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvci0xMDA7XG4gIC50aXBweS1jb250ZW50e1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LWZhbWlseTogJ01vbnRzZXJyYXQnLCBzYW5zLXNlcmlmO1xuICAgIC8vQGluY2x1ZGUgbmF2LWZvbnQoKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAvL2JvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yLTEwMDtcbiAgfVxuICAudGlwcHktYXJyb3d7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yLTEwMDtcbiAgfVxufVxuXG5cbi5vYmotaGVhZGluZ3tcbiAgQGluY2x1ZGUgaGVhZGluZ0ZvbnQtTm90bygpO1xufVxuXG4uZi1zdWJoZWFkaW5ne1xuXG4gIEBpbmNsdWRlIHN1YmhlYWRpbmdGb250LU1vbnRzZXJyYXQoKTtcbn1cblxuLmhlYWQtc3ViLWMwIHtcblxuICAvL3BhZGRpbmc6IDcwcHggMCAwcHggMDtcblxuICBtYXJnaW46IDYwcHggMCAzNnB4O1xuICAvLyBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBoM3tcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgaDZ7XG4gICAgbWFyZ2luOiAzcHggMCAwIDtcbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICAvL3BhZGRpbmc6IDQwcHggMCAwcHggMDtcblxuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cblxufVxuXG4uZi1ub3RvLTI4LnRpdGxle1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuXG5cbi5tLWItNjB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG4ubS10LTYwe1xuICBtYXJnaW4tdG9wOiA2MHB4O1xufVxuLm0tNjB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIG1hcmdpbi10b3A6IDYwcHg7XG59XG4uYmFndWV0dGVCb3gtYnV0dG9ue1xuICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZXtcblxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4ubm8tYi1wYWRkaW5ne1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5uby10LXBhZGRpbmd7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uaW1nLWhvdmVyLWFuaW17XG4gIC5pbWctYzB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICBpbWcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzcyBjdWJpYy1iZXppZXIoMC4xNTAsIDAuMDA1LCAwLjAwMCwgMC45MTUpO1xuICB9XG5cbiAgJjpob3ZlciB7XG5cbiAgICBpbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA2KTtcblxuICAgIH1cbiAgfVxuXG59XG5cblxuLnlpa2VzLWVhc3ktbWMtc3VjY2Vzcy1tZXNzYWdlIHtcblxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAkYWN0aXZlLWNvbG9yICFpbXBvcnRhbnQ7XG5cbn1cblxuLmNvbnRhaW5lci1maXhlZHtcbiAgcGFkZGluZy1sZWZ0OiA2MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxuXG59XG5cblxuLmRheTpub3QoLmRpc2FibGVkKXtcbiAgY29sb3I6IHJlZDtcbn0iLCJcbkBpbXBvcnQgXCJsaWIvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwibGliL21lZGlhLXF1ZXJpZXNcIjtcblxuXG4uY29udGFpbmVye1xuICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMDsvLyA2MHB4O1xuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeHhsKXtcbiAgICAvLyBwYWRkaW5nOiAwIDIwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAjeyRjb250YWluZXItYmVsb3cteHhsLW1hcmdpbiAqIDJ9KTtcbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhsKXtcbiAgICAvLyBwYWRkaW5nOiAwIDIwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAjeyRjb250YWluZXItYmVsb3cteGwtbWFyZ2luICogMn0pO1xuICB9XG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgIC8vIHBhZGRpbmc6IDAgMjBweDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICN7JGNvbnRhaW5lci1iZWxvdy1sZy1tYXJnaW4gKiAyfSk7XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgLy8gcGFkZGluZzogMCAyMHB4O1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gI3skY29udGFpbmVyLWJlbG93LW1kLW1hcmdpbiAqIDJ9KTtcbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gI3skY29udGFpbmVyLWJlbG93LXNtLW1hcmdpbiAqIDJ9KTtcbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhzKXtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICN7JGNvbnRhaW5lci1iZWxvdy14cy1tYXJnaW4gKiAyfSk7XG4gIH1cblxufVxuKntcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn0iLCIvKlxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnRXVyb3N0aWxlU3RhbmRhcmQnO1xuICAvL3NyYzogdXJsKFwiL2Fzc2V0cy9Hb3RoYW0tVWx0cmEud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvL2Fzc2V0cy9Hb3RoYW0tVWx0cmEud29mZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgLy8gc3JjOiB1cmwoXCIvYXNzZXRzL0dvdGhhbS1VbHRyYTIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvLyBzcmM6IHVybChcIi9hc3NldHMvR290aGFtX1VsdHJhSXRhbGljLm90ZlwiKSBmb3JtYXQoXCJvcGVudHlwZVwiKTtcbiAgLy9zcmM6IHVybChcIi9hc3NldHMvR290aGFtLVVsdHJhLm90ZlwiKSBmb3JtYXQoXCJvcGVudHlwZVwiKTtcbiAgc3JjOiB1cmwoXCIuLi8uLi9kaXN0L2Fzc2V0cy9mb250cy9FdXJvc3RpbGVMVFN0ZC1FeDIub3RmXCIpXG59XG4qL1xuXG5cbiRwYWdlLWlubmVyLXdpZHRoWEw6IDE0ODBweDtcbiRwYWdlLWlubmVyLXdpZHRoWFhMOiAxODAwcHg7XG4kcGFnZS1pbm5lci13aWR0aEw6IDEzNjBweDtcbiRwYWdlLWlubmVyLXdpZHRoTTogMTEwMHB4O1xuXG4kY29udGFpbmVyLW1heC13aWR0aDogMTU2MHB4O1xuLy8gJGNvbnRhaW5lci1sci1wYWRkaW5nOiA2MHB4O1xuXG4kY29udGFpbmVyLWJlbG93LXh4bC1tYXJnaW46IDYwcHg7XG4kY29udGFpbmVyLWJlbG93LXhsLW1hcmdpbjogNTBweDtcbiRjb250YWluZXItYmVsb3ctbGctbWFyZ2luOiA0MHB4O1xuJGNvbnRhaW5lci1iZWxvdy1tZC1tYXJnaW46IDMwcHg7XG4kY29udGFpbmVyLWJlbG93LXNtLW1hcmdpbjogMjBweDtcbiRjb250YWluZXItYmVsb3cteHMtbWFyZ2luOiAyMHB4O1xuXG5cbiR2LXBhZGRpbmcteHhsOiAxNzBweDtcbiR2LXBhZGRpbmcteHhsLWxnOiAxMzBweDtcbiR2LXBhZGRpbmcteHhsLW1kOiAxMTBweDtcbiR2LXBhZGRpbmcteHhsLXNtOiA4MHB4O1xuXG5cbiR2LXBhZGRpbmcteGw6IDExMHB4O1xuJHYtcGFkZGluZy14bC1tZDogODBweDtcbiR2LXBhZGRpbmcteGwtc206IDUwcHg7XG5cbiR2LXBhZGRpbmctbDogODBweDtcbiR2LXBhZGRpbmctbTo2MHB4O1xuJHYtcGFkZGluZy1zOiA1MHB4O1xuXG4vLyAkY29udGFpbmVyLWxyLXBhZGRpbmctc20teGw6IDYwcHg7XG5cblxuJHBhZ2UtbHItcGFkZGluZ0w6IDUwcHg7XG4kcGFnZS1sci1wYWRkaW5nTTogMzBweDtcbiRwYWdlLWxyLXBhZGRpbmdTOiAyMHB4O1xuXG5cblxuJGhlYWRlci1oZWlnaHQtZGVza3RvcDogMTYwcHg7XG4kaGVhZGVyLWhlaWdodC10YWJsZXQ6IDgwcHg7XG4kaGVhZGVyLWhlaWdodC1tb2JpbGU6IDgwcHg7XG5cbiR0b3AtYmFyLWhlaWdodDogMzBweDtcblxuJGJyZWFkY3J1bWItaGVpZ2h0OiA3MHB4O1xuXG4kaGVhZGVyLWhlaWdodC1kZXNrdG9wLXN1Ym1lbnUtY29udGFpbmVyczogNTIwcHg7XG5cblxuJHNlY3Rpb24tdC1iLXBhZGRpbmc6IDgwcHg7XG4kc2VjdGlvbi10LWItcGFkZGluZy1MOiAxMDBweDtcbiRzZWN0aW9uLXQtYi1wYWRkaW5nLVM6IDMwcHg7XG5cblxuXG4vLyRsaWdodC1ncmV5MTogI0Y3RjNFRDtcbiRsaWdodC1ncmV5MTogI0Y3RjNFRDtcbiRsaWdodC1ncmV5MjogI2U0ZTFkYTtcbiRwbGFjZWhvbGRlci1ncmV5MTAwOiAjZTllOWU5O1xuJHBsYWNlaG9sZGVyLWdyZXkyMDA6ICNjZGNkY2Q7XG4kcGxhY2Vob2xkZXItZ3JleTMwMDogI2I5YjliOTtcbiRwbGFjZWhvbGRlci1ncmV5NDAwOiAjODU4NTg1O1xuXG5cblxuLy9jb2xvcnNcblxuJHllbGxvdzE6ICNGN0UzQjk7XG4kYmFja2dyb3VuZC1jb2xvcjogI0ZFRkRGOTtcbiRncmVlbjE6ICM2Nzc1NjI7XG4kZ3JlZW4yOiAjODE5MDdEO1xuJGJyb3duMTogIzY4NTczNTtcbiRicm93bjI6ICNCMzQ5MUY7XG4vLyRicm93bjM6ICNCQTc2Mjg7XG4kYnJvd24zOiAjRDI2RTAwO1xuXG5cblxuJGJsYWNraXNoOiAjMEYwRTBCO1xuXG4kZ29sZDE6ICNEQkFGNTc7XG4kZ29sZDI6ICNhYzkyNTE7XG5cbiRncmV5MSA6ICMyQjJBMjc7XG4kZGFyay1ncmV5MTogIzIzMjMyMztcbiRkYXJrLWdyZXkyOiAjMTYxNjEyO1xuXG4kcHVycGxlMTojN0E1NTU3O1xuJHB1cnBsZTI6ICM4QTZCNkM7XG5cblxuLy8vaG9tZS1wYWdlIHNsaWRlc1xuJHNsaWRlLWxlYXZlLWR1cmF0aW9uOiAzNDBtcztcbiRzbGlkZS1zaGlmdC1kdXJhdGlvbjogMzEwbXM7XG5cblxuJGhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiRwcmltYXJ5LWNvbG9yLTEwMDogIzM1MzUzNTtcblxuJGZvbnQtcHJpbWFyeS0xMDA6ICAjMjYyNjI2O1xuJGZvbnQtcHJpbWFyeS0yMDA6ICAjMUUxRTFDO1xuJGJnLTEwMDp3aGl0ZTtcbiRiZy0yMDA6ICNFRkVDRTk7XG5cbiRiZy1kYXJrLTEwMDogIzI2MjYyNjtcblxuJGFjdGl2ZS1jb2xvcjogI2QzYzlhMDtcbiRhY3RpdmUtY29sb3IyOiAjZDNjOWEwO1xuJGFjdGl2ZS1jb2xvcjM6ICNkM2M5YTA7XG4vLyRhY3RpdmUtY29sb3IyOiAjZmY1MDQ4O1xuXG5cblxuJGJ1dHRvbi1kZXNrdG9wLWhlaWdodDogNDlweDsiLCIvL1xuLy8gIE1FRElBIFFVRVJJRVNcbi8v4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCT4oCTXG5cbi8vIEEgbWFwIG9mIGJyZWFrcG9pbnRzLlxuJGJyZWFrcG9pbnRzOiAoXG4gICAgICAgIHhzOiA1NzZweCxcbiAgICAgICAgc206IDc2OHB4LFxuICAgICAgICBzbS1tZDogODcwcHgsXG4gICAgICAgIG1kOiA5OTJweCxcbiAgICAgICAgdzEwMjQ6IDEwMjRweCxcbiAgICAgICAgbWQtbGc6IDEwODBweCxcbiAgICAgICAgbGc6IDEyMDBweCxcbiAgICAgICAgeGw6IDE0MDBweCxcbiAgICAgICAgeHhsOiAxNjYwcHgsXG4gICAgICAgIC8veHh4bDogMTY2MHB4XG4pO1xuXG5cbi8vXG4vLyAgUkVTUE9ORCBBQk9WRVxuLy/igJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJNcblxuLy8gQGluY2x1ZGUgcmVzcG9uZC1hYm92ZShzbSkge31cbkBtaXhpbiByZXNwb25kLWFib3ZlKCRicmVha3BvaW50KSB7XG5cbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgZXhpc3RzIGluIHRoZSBtYXAuXG4gIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSB7XG5cbiAgICAvLyBHZXQgdGhlIGJyZWFrcG9pbnQgdmFsdWUuXG4gICAgJGJyZWFrcG9pbnQtdmFsdWU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBXcml0ZSB0aGUgbWVkaWEgcXVlcnkuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXZhbHVlKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBkb2Vzbid0IGV4aXN0IGluIHRoZSBtYXAuXG4gIH0gQGVsc2Uge1xuXG4gICAgLy8gTG9nIGEgd2FybmluZy5cbiAgICBAd2FybiAnSW52YWxpZCBicmVha3BvaW50OiAjeyRicmVha3BvaW50fS4nO1xuICB9XG59XG5cblxuLy9cbi8vICBSRVNQT05EIEJFTE9XXG4vL+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk+KAk1xuXG4vLyBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKSB7fVxuQG1peGluIHJlc3BvbmQtYmVsb3coJGJyZWFrcG9pbnQpIHtcblxuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBleGlzdHMgaW4gdGhlIG1hcC5cbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJyZWFrcG9pbnQpIHtcblxuICAgIC8vIEdldCB0aGUgYnJlYWtwb2ludCB2YWx1ZS5cbiAgICAkYnJlYWtwb2ludC12YWx1ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KTtcblxuICAgIC8vIFdyaXRlIHRoZSBtZWRpYSBxdWVyeS5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogKCRicmVha3BvaW50LXZhbHVlIC0gMSkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGRvZXNuJ3QgZXhpc3QgaW4gdGhlIG1hcC5cbiAgfSBAZWxzZSB7XG5cbiAgICAvLyBMb2cgYSB3YXJuaW5nLlxuICAgIEB3YXJuICdJbnZhbGlkIGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9Lic7XG4gIH1cbn1cblxuXG4vL1xuLy8gIFJFU1BPTkQgQkVUV0VFTlxuLy/igJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJPigJNcblxuLy8gQGluY2x1ZGUgcmVzcG9uZC1iZXR3ZWVuKHNtLCBtZCkge31cbkBtaXhpbiByZXNwb25kLWJldHdlZW4oJGxvd2VyLCAkdXBwZXIpIHtcblxuICAvLyBJZiBib3RoIHRoZSBsb3dlciBhbmQgdXBwZXIgYnJlYWtwb2ludHMgZXhpc3QgaW4gdGhlIG1hcC5cbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGxvd2VyKSBhbmQgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdXBwZXIpIHtcblxuICAgIC8vIEdldCB0aGUgbG93ZXIgYW5kIHVwcGVyIGJyZWFrcG9pbnRzLlxuICAgICRsb3dlci1icmVha3BvaW50OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGxvd2VyKTtcbiAgICAkdXBwZXItYnJlYWtwb2ludDogbWFwLWdldCgkYnJlYWtwb2ludHMsICR1cHBlcik7XG5cbiAgICAvLyBXcml0ZSB0aGUgbWVkaWEgcXVlcnkuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRsb3dlci1icmVha3BvaW50KSBhbmQgKG1heC13aWR0aDogKCR1cHBlci1icmVha3BvaW50IC0gMSkpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIElmIG9uZSBvciBib3RoIG9mIHRoZSBicmVha3BvaW50cyBkb24ndCBleGlzdC5cbiAgfSBAZWxzZSB7XG5cbiAgICAvLyBJZiBsb3dlciBicmVha3BvaW50IGlzIGludmFsaWQuXG4gICAgQGlmIChtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRsb3dlcikgPT0gZmFsc2UpIHtcblxuICAgICAgLy8gTG9nIGEgd2FybmluZy5cbiAgICAgIEB3YXJuICdZb3VyIGxvd2VyIGJyZWFrcG9pbnQgd2FzIGludmFsaWQ6ICN7JGxvd2VyfS4nO1xuICAgIH1cblxuICAgIC8vIElmIHVwcGVyIGJyZWFrcG9pbnQgaXMgaW52YWxpZC5cbiAgICBAaWYgKG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHVwcGVyKSA9PSBmYWxzZSkge1xuXG4gICAgICAvLyBMb2cgYSB3YXJuaW5nLlxuICAgICAgQHdhcm4gJ1lvdXIgdXBwZXIgYnJlYWtwb2ludCB3YXMgaW52YWxpZDogI3skdXBwZXJ9Lic7XG4gICAgfVxuICB9XG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gKiBIYW1idXJnZXJzXG4gKiBAZGVzY3JpcHRpb24gVGFzdHkgQ1NTLWFuaW1hdGVkIGhhbWJ1cmdlcnNcbiAqIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWhcbiAqIEBzaXRlIGh0dHBzOi8vam9uc3VoLmNvbS9oYW1idXJnZXJzXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vam9uc3VoL2hhbWJ1cmdlcnNcbiAqL1xuXG4vLyBTZXR0aW5nc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItcGFkZGluZy14ICAgICAgICAgICA6IDAgMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItcGFkZGluZy15ICAgICAgICAgICA6IDE1cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgOiAzNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgIDogMnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgIDogNnB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgIDogIzAwMCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyA6IDRweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItaG92ZXItb3BhY2l0eSAgICAgICA6IDAuNyAhZGVmYXVsdDtcbiRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yICA6ICRoYW1idXJnZXItbGF5ZXItY29sb3IgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5OiAkaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4kaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgICA6IGZhbHNlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1maWx0ZXI6ICRoYW1idXJnZXItaG92ZXItZmlsdGVyICFkZWZhdWx0O1xuXG4vLyBUeXBlcyAoUmVtb3ZlIG9yIGNvbW1lbnQgb3V0IHdoYXQgeW91IGRvbuKAmXQgbmVlZClcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXR5cGVzOiAoXG4gIDNkeCxcbiAgM2R4LXIsXG4gIDNkeSxcbiAgM2R5LXIsXG4gIDNkeHksXG4gIDNkeHktcixcbiAgYXJyb3csXG4gIGFycm93LXIsXG4gIGFycm93YWx0LFxuICBhcnJvd2FsdC1yLFxuICBhcnJvd3R1cm4sXG4gIGFycm93dHVybi1yLFxuICBib3JpbmcsXG4gIGNvbGxhcHNlLFxuICBjb2xsYXBzZS1yLFxuICBlbGFzdGljLFxuICBlbGFzdGljLXIsXG4gIGVtcGhhdGljLFxuICBlbXBoYXRpYy1yLFxuICBtaW51cyxcbiAgc2xpZGVyLFxuICBzbGlkZXItcixcbiAgc3BpbixcbiAgc3Bpbi1yLFxuICBzcHJpbmcsXG4gIHNwcmluZy1yLFxuICBzdGFuZCxcbiAgc3RhbmQtcixcbiAgc3F1ZWV6ZSxcbiAgdm9ydGV4LFxuICB2b3J0ZXgtclxuKSAhZGVmYXVsdDtcblxuLy8gQmFzZSBIYW1idXJnZXIgKFdlIG5lZWQgdGhpcylcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5AaW1wb3J0IFwiYmFzZVwiO1xuXG4vLyBIYW1idXJnZXIgdHlwZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vKkBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbkBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG5AaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG5AaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7Ki9cbkBpbXBvcnQgXCJ0eXBlcy9zcHJpbmdcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcHJpbmctclwiO1xuLypcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcbiovXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb29raW5nIHVwIGFkZGl0aW9uYWwgdHlwZXM6XG4vL1xuLy8gVGhlIFNhc3MgZm9yIGVhY2ggaGFtYnVyZ2VyIHR5cGUgc2hvdWxkIGJlIG5lc3RlZFxuLy8gaW5zaWRlIGFuIEBpZiBkaXJlY3RpdmUgdG8gY2hlY2sgd2hldGhlciBvciBub3Rcbi8vIGl0IGV4aXN0cyBpbiAkaGFtYnVyZ2VyLXR5cGVzIHNvIG9ubHkgdGhlIENTUyBmb3Jcbi8vIGluY2x1ZGVkIHR5cGVzIGFyZSBnZW5lcmF0ZWQuXG4vL1xuLy8gZS5nLiBoYW1idXJnZXJzL3R5cGVzL19uZXctdHlwZS5zY3NzXG4vL1xuLy8gQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG5ldy10eXBlKSB7XG4vLyAgIC5oYW1idXJnZXItLW5ldy10eXBlIHtcbi8vICAgICAuLi5cbi8vICAgfVxuLy8gfVxuIiwiLy8gSGFtYnVyZ2VyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLmhhbWJ1cmdlciB7XG4gIHBhZGRpbmc6ICRoYW1idXJnZXItcGFkZGluZy15ICRoYW1idXJnZXItcGFkZGluZy14O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCBmaWx0ZXI7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuXG4gIC8vIE5vcm1hbGl6ZSAoPGJ1dHRvbj4pXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAmOmhvdmVyIHtcbiAgICBAaWYgJGhhbWJ1cmdlci1ob3Zlci11c2UtZmlsdGVyID09IHRydWUge1xuICAgICAgZmlsdGVyOiAkaGFtYnVyZ2VyLWhvdmVyLWZpbHRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgb3BhY2l0eTogJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpZiAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgPT0gdHJ1ZSB7XG4gICAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1hY3RpdmUtaG92ZXItZmlsdGVyO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBvcGFjaXR5OiAkaGFtYnVyZ2VyLWFjdGl2ZS1ob3Zlci1vcGFjaXR5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIsXG4gICAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLFxuICAgIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItYWN0aXZlLWxheWVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uaGFtYnVyZ2VyLWJveCB7XG4gIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMyArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIC0yO1xuXG4gICYsXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoO1xuICAgIGhlaWdodDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1sYXllci1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAkaGFtYnVyZ2VyLWxheWVyLWJvcmRlci1yYWRpdXM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KSAqIC0xO1xuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nKSB7XG4gIC8qXG4gICAqIFNwcmluZ1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tc3ByaW5nIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAyO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmc7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nLXIpIHtcbiAgLypcbiAgICogU3ByaW5nIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNwcmluZy1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE1cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaW1wb3J0IFwibWl4aW5zXCI7XG5cbi5mYWRlLWluLWFuaW17XG5cbiAgQGluY2x1ZGUgZmFkZS1pbi1hbmltKCk7XG59XG5cbi5mYWRlLWluLWFuaW0tMjAwMC0xMDAwe1xuICBAaW5jbHVkZSBmYWRlLWluLWFuaW0oMjAwMG1zLDEwMDBtcyk7XG59XG5cbi5mYWRlLWluLXVwLWFuaW17XG5cbiAgQGluY2x1ZGUgZmFkZS1pbi11cC1hbmltKCk7XG59IiwiQGltcG9ydCBcImxpYi92YXJpYWJsZXNcIjtcblxuQG1peGluIG1heC1wYWdlLXdpZHRoLWwoKXtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIC8vIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRwYWdlLWlubmVyLXdpZHRoTDtcbiAgQGluY2x1ZGUgcnNwLXBhZGRpbmcxKCk7XG59XG5AbWl4aW4gbWF4LXBhZ2Utd2lkdGgteGwoKXtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIC8vIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6ICRwYWdlLWlubmVyLXdpZHRoWEw7XG4gIEBpbmNsdWRlIHJzcC1wYWRkaW5nMSgpO1xufVxuXG5AbWl4aW4gbWF4LXBhZ2Utd2lkdGgteHhsLXBhZGRpbmdsZXNzKCl7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAvLyB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAkcGFnZS1pbm5lci13aWR0aFhYTDtcblxufVxuQG1peGluIGJveC1zaGFkb3d7XG5cbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMTkpLCAwIDZweCA2cHggcmdiYSgwLCAwLCAwLCAwLjIzKTtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMTkpLCAwIDZweCA2cHggcmdiYSgwLCAwLCAwLCAwLjIzKTtcbiAgLW1zLWJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xOSksIDAgNnB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMjMpO1xuICAtby1ib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMTkpLCAwIDZweCA2cHggcmdiYSgwLCAwLCAwLCAwLjIzKTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjE5KSwgMCA2cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4yMyk7XG59XG5cbkBtaXhpbiByc3AtcGFkZGluZzF7XG4gIC8vIHBhZGRpbmc6ICAwIDUwcHg7XG4gIHBhZGRpbmctbGVmdDogJHBhZ2UtbHItcGFkZGluZ0w7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWdlLWxyLXBhZGRpbmdMO1xuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWdlLWxyLXBhZGRpbmdNO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWdlLWxyLXBhZGRpbmdNO1xuICB9XG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuICAgIC8vIHBhZGRpbmc6IDAgIDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFnZS1sci1wYWRkaW5nUztcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFnZS1sci1wYWRkaW5nUztcbiAgfVxufVxuXG5cblxuXG5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW1iZXIpIHtcbiAgQGlmIHR5cGUtb2YoJG51bWJlcikgPT0gJ251bWJlcicgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSB7XG4gICAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XG4gIH1cblxuICBAcmV0dXJuICRudW1iZXI7XG59XG5cbi8qXG5AZnVuY3Rpb24gcGhvdG9zaG9wLXVuaXQtY29udmVydHNpb24oJHVuaXQsICRyZXR1cm46ICdlbScsICRiYXNlOiAnMTYnKSB7XG4gIEBpZiAkcmV0dXJuID0gJ2VtJyB7XG4gICAgQHJldHVybiAoJHVuaXQpIC8gMTAwMDtcbiAgfSBAZWxzZSB7XG4gICAgQHJldHVybiAoJHVuaXQgKiAkYmFzZSkgLyAxMDAwO1xuICB9XG59XG4qL1xuXG5cbkBtaXhpbiBsZWFkaW5nLXRvLWxpbmUtaGVpZ2h0KCRsZWFkaW5nLCAkZm9udC1zaXplKXtcbiAgQGlmICRsZWFkaW5nID09IDB7XG4gICAgbGluZS1oZWlnaHQ6ICAkZm9udC1zaXplICogMS4yO1xuICB9XG4gIEBlbHNlIHtcbiAgICBsaW5lLWhlaWdodDogKCRmb250LXNpemUgLyAyKSArICgkbGVhZGluZyAvIDIpO1xuICB9XG59XG5AbWl4aW4gdHJhY2tpbmctdG8tbGV0dGVyLXNwYWNpbmcoJHRyYWNraW5nKXtcbiAgbGV0dGVyLXNwYWNpbmc6IChzdHJpcC11bml0KCR0cmFja2luZykgLyAxMDAwKSArIGVtO1xufVxuXG4kZGVmYXVsdC1yZXNpemU6IDEuMSwxLjIsMS4zO1xuXG5AbWl4aW4gZG8tZm9udCgkZm9udC1zaXplLCAkbGVhZGluZywgJHRyYWNraW5nLCAkcmVzaXplOiAkZGVmYXVsdC1yZXNpemUpe1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIC8vIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIC8vIGxldHRlci1zcGFjaW5nOiAoc3RyaXAtdW5pdCgkdHJhY2tpbmcpIC8gMTAwMCkgKyBlbTtcbiAgLy8gQGluY2x1ZGUgdHJhY2tpbmctdG8tbGV0dGVyLXNwYWNpbmcoJHRyYWNraW5nKTtcbiAgbGluZS1oZWlnaHQ6ICRsZWFkaW5nO1xuICAvLyBAaW5jbHVkZSBsZWFkaW5nLXRvLWxpbmUtaGVpZ2h0KCRsZWFkaW5nLCAkZm9udC1zaXplKTtcbiAgLy8gZm9udC1mYW1pbHk6IFwiRXVyb3N0aWxlU3RhbmRhcmRcIiwgc2Fucy1zZXJpZiA7XG4gIC8qQGlmICRyZXNpemV7XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZSAvIG50aCgkcmVzaXplLCAxKTtcbiAgICAgIC8vIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBAaW5jbHVkZSB0cmFja2luZy10by1sZXR0ZXItc3BhY2luZygkdHJhY2tpbmcgLyBudGgoJHJlc2l6ZSwgMSkpO1xuICAgICAgQGluY2x1ZGUgbGVhZGluZy10by1saW5lLWhlaWdodCgkbGVhZGluZyAvIG50aCgkcmVzaXplLCAxKSwgJGZvbnQtc2l6ZSAvIG50aCgkcmVzaXplLCAxKSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplIC8gbnRoKCRyZXNpemUsIDIpO1xuICAgICAgLy8gZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIEBpbmNsdWRlIHRyYWNraW5nLXRvLWxldHRlci1zcGFjaW5nKCR0cmFja2luZyAvIG50aCgkcmVzaXplLCAyKSk7XG4gICAgICBAaW5jbHVkZSBsZWFkaW5nLXRvLWxpbmUtaGVpZ2h0KCRsZWFkaW5nIC8gbnRoKCRyZXNpemUsIDIpLCAkZm9udC1zaXplIC8gbnRoKCRyZXNpemUsIDIpKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemUgLyBudGgoJHJlc2l6ZSwgMyk7XG4gICAgICAvLyBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgQGluY2x1ZGUgdHJhY2tpbmctdG8tbGV0dGVyLXNwYWNpbmcoJHRyYWNraW5nIC8gbnRoKCRyZXNpemUsIDMpKTtcbiAgICAgIEBpbmNsdWRlIGxlYWRpbmctdG8tbGluZS1oZWlnaHQoJGxlYWRpbmcgLyBudGgoJHJlc2l6ZSwgMyksICRmb250LXNpemUgLyBudGgoJHJlc2l6ZSwgMykpO1xuICAgIH1cbiAgICEqIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplIC8gbnRoKCRyZXNpemUsIDIpOztcbiAgICAgIC8vIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBsZXR0ZXItc3BhY2luZzogJGxldHRlci1zcGFjaW5nIC8gbnRoKCRyZXNpemUsIDIpO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC8gbnRoKCRyZXNpemUsIDIpO1xuICAgIH0qIVxuICB9Ki9cblxufVxuXG5cbkBtaXhpbiBoMS1mb250KCl7XG4gICRyZXNpemU6IDEuNCwgMS43O1xuICAvL0BpbmNsdWRlIGRvLWZvbnQoNTZweCwgMC4wM2VtLCA1NnB4LCAgJHJlc2l6ZSk7XG4gIEBpbmNsdWRlIGRvLWZvbnQoNTBweCwgNzJweCwgMCk7XG5cbn1cbkBtaXhpbiBoMi1mb250KCl7XG4gICRyZXNpemU6IDEuMDUsIDEuMTtcbiAgLy9AaW5jbHVkZSBkby1mb250KDU5cHgsIDAuMDNlbSwgNTlweCwgICRyZXNpemUpO1xuICBAaW5jbHVkZSBkby1mb250KDQycHgsIDU1cHgsIDI1KTtcblxufVxuQG1peGluIGgzLWZvbnQoKXtcbiAgJHJlc2l6ZTogMS4wNSwgMS4xO1xuICAvL0BpbmNsdWRlIGRvLWZvbnQoMzVweCwgMC4wM2VtLCAzNXB4LCAgJHJlc2l6ZSk7XG4gIEBpbmNsdWRlIGRvLWZvbnQoNDBweCwwLCAyNSk7XG5cbn1cbkBtaXhpbiBoMy1mb250LWhpZ2gtbGluZS1zcGFjaW5nKCl7XG4gICRyZXNpemU6IDEuMDUsIDEuMTtcbiAgLy9AaW5jbHVkZSBkby1mb250KDM1cHgsIDAuMDNlbSwgNTBweCwgICRyZXNpemUpO1xuICBAaW5jbHVkZSBkby1mb250KDM1cHgsIDM1cHgsIDI1ICk7XG5cbn1cbkBtaXhpbiBoNC1mb250KCl7XG4gICRyZXNpemU6IDEuMSwgMS4yO1xuICAvL0BpbmNsdWRlIGRvLWZvbnQoMjJweCwgMC4wM2VtLCAyMnB4LCAgJHJlc2l6ZSk7XG4gIEBpbmNsdWRlIGRvLWZvbnQoMjdweCwgNDZweCwgMjUgKTtcblxufVxuQG1peGluIGg1LWZvbnQoKXtcbiAgJHJlc2l6ZTogMS4xLCAxLjI7XG4gIC8vQGluY2x1ZGUgZG8tZm9udCgxOXB4LCAwLjAzZW0sIDE5cHgsICAkcmVzaXplKTtcbiAgQGluY2x1ZGUgZG8tZm9udCgyNHB4LCAzMHB4LCAyNSAgKTtcblxufVxuQG1peGluIGg2LWZvbnQoKXtcbiAgLy8gJHJlc2l6ZTogMS4xLCAxLjE1LCAxLjI7XG4gIC8vQGluY2x1ZGUgZG8tZm9udCgxOXB4LCAwLjAzZW0sIDE5cHgsICAkcmVzaXplKTtcbiAgQGluY2x1ZGUgZG8tZm9udCgxNnB4LCAyNnB4LCAwKTtcblxufVxuXG5AbWl4aW4gbmF2LWZvbnQoKXtcbiAgJHJlc2l6ZTogMS4wMSwxLjAyLDEuMDM7XG4gIEBpbmNsdWRlIGRvLWZvbnQoMThweCwgMThweCwgNDAsJHJlc2l6ZSk7XG4gIC8vZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBzYW5zLXNlcmlmO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIC8vZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luOiAwO1xuICAvLyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWl4aW4gYm9keUJvbGQtZm9udCgpe1xuICAkcmVzaXplOiAxLjA1LCAxLjE7XG4gIEBpbmNsdWRlIGRvLWZvbnQoMThweCwgMCAsICAxMjApO1xuICBmb250LXdlaWdodDogNjAwO1xuICAvL2ZvbnQtZmFtaWx5OiBcIlJhbGV3YXlcIiwgc2Fucy1zZXJpZjtcblxufUBtaXhpbiBib2R5TC1mb250KCl7XG4gIC8vJHJlc2l6ZTogMS4wNSwgMS4xO1xuICBAaW5jbHVkZSBkby1mb250KDM0cHgsIDQ0cHggLCAgNTApO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICBAaW5jbHVkZSBkby1mb250KDI2cHgsIDM0cHgsIDUwKTtcbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICBAaW5jbHVkZSBkby1mb250KDIwcHgsIDI2cHgsNTApO1xuICB9XG4gIC8vZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBzYW5zLXNlcmlmO1xufVxuQG1peGluIGJvZHlNLWZvbnQoKXtcbiAgLy8gJHJlc2l6ZTogMS4wNSwgMS4xO1xuICBAaW5jbHVkZSBkby1mb250KDI2cHgsIDM2cHgsIDUwKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgLy9mb250LWZhbWlseTogXCJSYWxld2F5XCIsIHNhbnMtc2VyaWY7XG59XG5AbWl4aW4gYm9keVMtZm9udCgpe1xuICAkcmVzaXplOiAxLjA1LCAxLjE7XG4gIEBpbmNsdWRlIGRvLWZvbnQoMjJweCwgMzZweCwgNTAsIGZhbHNlKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgLy9mb250LWZhbWlseTogXCJSYWxld2F5XCIsIHNhbnMtc2VyaWY7XG59XG5AbWl4aW4gYm9keVhTLWZvbnQoKXtcbiAgJHJlc2l6ZTogMS4wNSwgMS4xO1xuICBAaW5jbHVkZSBkby1mb250KDE2cHgsIDI0cHgsIDUwLCBmYWxzZSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIC8vZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBzYW5zLXNlcmlmO1xufVxuXG5cblxuXG4vKkBtaXhpbiBtYXgtcGFnZS13aWR0aC1sKCl7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAvLyB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAkcGFnZS1pbm5lci13aWR0aEw7XG4gIEBpbmNsdWRlIHJzcC1wYWRkaW5nMSgpO1xufSovXG5cbkBtaXhpbiBtYXgtcGFnZS13aWR0aC1tKCl7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAvLyB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAkcGFnZS1pbm5lci13aWR0aE07XG4gIEBpbmNsdWRlIHJzcC1wYWRkaW5nMSgpO1xufVxuXG5AbWl4aW4gdW5kby1idXR0b24oKXtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblxuICAmOmFjdGl2ZSwgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbn1cblxuXG4vKlxuQG1peGluIGJhY2tncm91bmQtbG9hZGVyKCl7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2VkZWRlZCwgI2ZmZmZmZiwgI2VkZWRlZCk7XG4gIGFuaW1hdGlvbi1uYW1lOiBsb2FkO1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24tZGlyZWN0aW9uOiBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbn1cbiovXG5cblxuJGVhc2VPdXRDdWJpYzogY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpO1xuJGVhc2VOb3RTdXJlOiBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuXG4vLy8vIEFOSU1TXG5AbWl4aW4gZmFkZS1pbi1hbmltKCRkdXJhdGlvbjogMC40cywgJGRlbGF5OiAwcywgJGVhc2luZzogbGluZWFyKXtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAkZHVyYXRpb24gJGRlbGF5ICRlYXNpbmcgO1xuICAmLnNob3d7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5AbWl4aW4gZmFkZS1pbi1hbmltKCRkdXJhdGlvbjogMC40cywgJGRlbGF5OiAwLjNzLCAkZWFzaW5nOiBsaW5lYXIpe1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRkdXJhdGlvbiAkZGVsYXkgJGVhc2luZyA7XG4gICYuc2hvd3tcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5AbWl4aW4gZmFkZS1pbi11cC1hbmltKCRkdXJhdGlvbjogMS4ycywgJGRlbGF5OiAwcywgJGVhc2luZzogJGVhc2VOb3RTdXJlKXtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRkdXJhdGlvbiAkZGVsYXkgJGVhc2luZyAsIG9wYWNpdHkgMC42cyBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDBweCwwKTtcbiAgJi5zaG93e1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLDApO1xuICB9XG59XG5cblxuXG5cbkBtaXhpbiBlbGlwc2lzKCRtYXgtbGluZToyKXtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIG1hcmdpbi10b3A6IDIwcHg7XG5cblxuICBAc3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDogJG1heC1saW5lKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogaW5pdGlhbDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6ICRtYXgtbGluZTtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICB9XG59XG5cblxuXG5AbWl4aW4gYXNwZWN0KCRhc3BlY3Qpe1xuXG4gIGhlaWdodDogMDtcbiAgd2lkdGg6MTAwJTtcbiAgcGFkZGluZy1ib3R0b206ICRhc3BlY3QgO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICo6Zmlyc3QtY2hpbGQsID4qOmZpcnN0LWNoaWxkICA+IGltZywgPmltZ3tcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICB9XG4gID4qOmZpcnN0LWNoaWxkICA+IGltZ3tcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuXG59IEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuXG4gID4gKiB7XG4gICAgd2lkdGg6IDMzLjMzMyU7XG4gICAgLy8gcGFkZGluZzogJGdhcDtcbiAgfVxufVxuXG4vKipcbm5lZWQgdG8gYWRkIG92ZXJmbG93IGhpZGRlbiB0byBwYXJlbnQgb3IgZHJlYWRlZCBob3Jpem9udGFsIHNjcm9sbCBiYXJcbiAqL1xuXG5AbWl4aW4gc2l4LWNvbHMoJGdhcCl7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGdhcCAqIDJ9KTtcbiAgLy93aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtJGdhcDtcblxuICA+ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDYpO1xuICAgIHBhZGRpbmc6ICRnYXA7XG5cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICAgIC8vIHBhZGRpbmc6ICRnYXA7XG4gICAgfVxuICB9XG4gIC8qQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGdhcH0pO1xuICAgIGxlZnQ6IC0kZ2FwIC8gMjtcbiAgICA+ICoge1xuICAgICAgLy93aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogJGdhcC8yO1xuICAgIH1cbiAgfSovXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuICAgID4gKntcblxuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgLy9sZWZ0OiAtJGdhcCAvIDI7XG4gICAgLyo+ICoge1xuICAgICAgLy93aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogJGdhcC8yO1xuICAgIH0qL1xuICB9XG4gLyogQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4cyl7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICA+ICoge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfSovXG59XG5cbkBtaXhpbiBmaXZlLWNvbHMoJGdhcCl7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGdhcCAqIDJ9KTtcbiAgLy93aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtJGdhcDtcblxuICA+ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDUpO1xuICAgIHBhZGRpbmc6ICRnYXA7XG5cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kLWxnKXtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgLy8gcGFkZGluZzogJGdhcDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGdhcH0pO1xuICAgIGxlZnQ6IC0kZ2FwIC8gMjtcbiAgICA+ICoge1xuICAgICAgLy93aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogJGdhcC8yO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhzKXtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgID4gKiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VyLWNvbHMoJGdhcCl7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGdhcCAqIDJ9KTtcbiAgLy93aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtJGdhcDtcblxuICA+ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xuICAgIHBhZGRpbmc6ICRnYXA7XG5cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kLWxnKXtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgLy8gcGFkZGluZzogJGdhcDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGdhcH0pO1xuICAgIGxlZnQ6IC0kZ2FwIC8gMjtcbiAgICA+ICoge1xuICAgICAgLy93aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogJGdhcC8yO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhzKXtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgID4gKiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5AbWl4aW4gdGhyZWUtY29scygkZ2FwKXtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogY2FsYygxMDAlICsgI3skZ2FwICogMn0pO1xuICAvL3dpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBsZWZ0OiAtJGdhcDtcblxuICA+ICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICAgIHBhZGRpbmc6ICRnYXA7XG5cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcblxuICAgID4gKiB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgLy8gcGFkZGluZzogJGdhcDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICN7JGdhcH0pO1xuICAgIGxlZnQ6IC0kZ2FwIC8gMjtcbiAgICA+ICoge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6ICRnYXAvMjtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4cyl7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICA+ICoge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxufVxuQG1peGluIHR3by1jb2xzKCRnYXApe1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRnYXAgKjIgfSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLSRnYXA7XG5cblxuICA+ICoge1xuICAgIHBhZGRpbmc6ICRnYXAgO1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhsZyl7XG4gICAgLyp3aWR0aDogY2FsYygxMDAlICsgI3skZ2FwIH0pO1xuICAgIGxlZnQ6IC0kZ2FwIC8gMjsqL1xuICAgIC8qPiAqIHtcbiAgICAgIHBhZGRpbmc6ICRnYXAvNDtcbiAgICB9Ki9cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgI3skZ2FwICB9KTtcbiAgICBsZWZ0OiAtJGdhcCAvIDI7XG4gICAgPiAqIHtcbiAgICAgIHBhZGRpbmc6ICRnYXAvMjtcbiAgICB9XG4gIH1cbiAgJjpub3QoLm5vLWNvbGxhcHNlKXtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgPiAqIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeHMpe1xuICAgIC8qPiAqIHtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfSovXG4gIH1cbn1cblxuXG5cblxuQG1peGluIHRoZW1lZC1saW5rKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLy9iYWNrZ3JvdW5kOiByZ2IoMTEsIDE5LCA0MSkgIWltcG9ydGFudDtcbiAvLyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMTEsIDE5LCA0MSwgMC45NSkgMCUsIHJnYmEoMjQ3LCAyMjcsIDE4NSwgMSkgMCUsIHJnYmEoMjQ3LCAyMjcsIDE4NSwgMSkgMjUlLCByZ2JhKDk5LCA4MCwgNDIsIDEpIDUxJSwgcmdiYSg5NywgODIsIDUzLCAxKSA2NCUsIHJnYmEoMjQ3LCAyMjcsIDE4NSwgMSkgMTAwJSkgIWltcG9ydGFudDtcbiAgLy9wYWRkaW5nOiAycHggIWltcG9ydGFudDtcbiAgLy9ib3JkZXItcmFkaXVzOiA1cHggIWltcG9ydGFudDtcbiAgLy9kaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xuXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgO1xuXG4gLy8gYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KC0yZGVnLHJnYmEoMTEsMTksNDEsLjk1KSAwLCNmN2UzYjkgMCwjZjdlM2I5IDE1JSwjNjM1MDJhIDUwJSwjNjE1MjM1IDQlLCNmN2UzYjkgMTAwJSkgIWltcG9ydGFudDtcblxuICA+IGRpdiwgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvLyBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwYWRkaW5nOiAxNHB4IDQycHggMTZweCA0MnB4O1xuICAgIC8vYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgLy8gcGFkZGluZzogMTBweCA1cHggMTJweCA1cHg7XG4gICAgICAvLyBwYWRkaW5nOiAxMHB4IDVweCAxMnB4IDVweDtcbiAgICB9XG4gIH1cblxuICBwLCBzcGFue1xuICAgIEBpbmNsdWRlIGZvbnQtbW9udC0xOHB4KCk7XG4gICAgY29sb3I6IHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICB9XG4gIH1cbiAgYnJ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAmLnByaW1hcnl7XG4gICAgPiBkaXYsID5zcGFue1xuXG4gICAgICAvL3RyYW5zaXRpb246IGJhY2tncm91bmQgMC40cyBsaW5lYXI7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvci0xMDA7XG4gICAgfVxuICB9XG4gICYubGlnaHR7XG5cbiAgICA+IGRpdiwgPnNwYW57XG5cbiAgICAgIC8vdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjRzIGxpbmVhcjtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIH1cbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBwLCBzcGFue1xuICAgICAgY29sb3I6ICRmb250LXByaW1hcnktMTAwO1xuICAgIH1cbiAgfVxuICAmOmhvdmVyLCAmLnRoZW1lZC1saW5rLWFjdGl2ZXtcbiAgICA+IGRpdiwgPnNwYW57XG4gICAgICAvLyBiYWNrZ3JvdW5kOiAkZGFyay1ncmV5MiFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNHMgbGluZWFyO1xuICAgIH1cbiAgICBwLCBzcGFue1xuICAgICAgLy8gY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgICAmLnByaW1hcnl7XG4gICAgICAvL2JhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yLTEwMDtcbiAgICAgID4gZGl2LCA+c3BhbntcbiAgICAgICAgYmFja2dyb3VuZDogJGFjdGl2ZS1jb2xvcjtcbiAgICAgICAgLy90cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNHMgbGluZWFyO1xuICAgICAgfVxuICAgICAgcCwgc3BhbntcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmxpZ2h0e1xuXG4gICAgICA+IGRpdiwgPnNwYW57XG5cbiAgICAgICAgLy90cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuNHMgbGluZWFyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWN0aXZlLWNvbG9yMjtcbiAgICAgIH1cbiAgICAgLy8gYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICBwLCBzcGFue1xuICAgICAgICAvL2NvbG9yOiAkZm9udC1wcmltYXJ5LTEwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5cbkBtaXhpbiBoZXJvX2NvbG9yKCR0b3AsICRib3R0b20pe1xuICAucGFnZS1oZXJve1xuICAgIGJhY2tncm91bmQ6ICR0b3A7XG4gICAgJjphZnRlcntcbiAgICAgIGJhY2tncm91bmQ6ICRib3R0b207XG4gICAgfVxuICB9XG5cbn1cbkBtaXhpbiBmb3JfYWZ0ZXJfaGVybygpe1xuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobGcpe1xuICAgIC5hZnRlci1oZXJvIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyMDBweDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4cyl7XG4gICAgLmFmdGVyLWhlcm97XG4gICAgICBwYWRkaW5nLXRvcDogMjQwcHg7XG4gICAgfVxuICB9XG59XG5cblxuXG5AbWl4aW4gc2xpZGluZ190aGluZ3NfZW5kX2ZhZGVfZWZmZWN0KCl7XG4gICY6YWZ0ZXJ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMjU0LDI1MywyNDkpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTQsMjUzLDI0OSwwKSAwJSwgcmdiYSgyNTQsMjUzLDI0OSwwLjg3MDE4NTU3NDIyOTY5MTkpIDc4JSwgcmdiYSgyNTQsMjUzLDI0OSwxKSAxMDAlKTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGluZ190aGluZ3NfYnV0dG9uX25leHQoKXtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDIwO1xuXG4gICY6YmVmb3JlLCAmOmFmdGVye1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgJjphZnRlcntcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uLy4uL2Rpc3QvYXNzZXRzL2ltZy9yaWdodC1hcnJvdy1pbi1jaXJjbGUuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICAvL2JhY2tncm91bmQ6IHVybChcIi4uLy4uL2Rpc3QvYXNzZXRzL2ltZy9yaWdodC1hcnJvdy1pbi1jaXJjbGUuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zOnN2Zz0naHR0cCAvc3ZnJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA3NCA3NCcgdmVyc2lvbj0nMS4xJyUzRSUzQ2RlZnMgaWQ9J2RlZnM4NiclM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nLTEuMTEwMjIzMDJlLTE0JTI1JyB5MT0nNTAlMjUnIHgyPScxMDAlMjUnIHkyPSc1MCUyNScgaWQ9J2xpbmVhckdyYWRpZW50LTEnJTNFJTNDc3RvcCBzdG9wLWNvbG9yPSclMjNEQkFGNTcnIG9mZnNldD0nMCUyNScgaWQ9J3N0b3A3NicgLyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNkY1MjFCJyBvZmZzZXQ9JzEwMCUyNScgaWQ9J3N0b3A3OCcgLyUzRSUzQy9saW5lYXJHcmFkaWVudCUzRSUzQ2xpbmVhckdyYWRpZW50IHgxPSctMS4xMTAyMjMwMmUtMTQlMjUnIHkxPSc1MCUyNScgeDI9JzEwMCUyNScgeTI9JzUwJTI1JyBpZD0nbGluZWFyR3JhZGllbnQtMiclM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyM0RCQUY1Nycgb2Zmc2V0PScwJTI1JyBpZD0nc3RvcDgxJyAvJTNFJTNDc3RvcCBzdG9wLWNvbG9yPSclMjM2RjUyMUInIG9mZnNldD0nMTAwJTI1JyBpZD0nc3RvcDgzJyAvJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDL2RlZnMlM0UlM0NnIGlkPSdEZXNrdG9wLTE0NDAnIHN0cm9rZT0nbm9uZScgc3Ryb2tlLXdpZHRoPScxJyBmaWxsPSdub25lJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnJTNFJTNDZyBpZD0nUm91dGUtMl8xNDQwX0hvbWVwYWdlJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMTMxMi4wMDAwMDAsIC0xODk4LjAwMDAwMCknJTNFJTNDZyBpZD0nMS1Db2x1bW4tSXRlbS1DYXJvdXNlbCcgdHJhbnNmb3JtPSd0cmFuc2xhdGUoOTE4LjAwMDAwMCwgMTYwMi4wMDAwMDApJyUzRSUzQ2cgaWQ9J0dyb3VwLTIwJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgzOTUuMDAwMDAwLCAyOTcuMDAwMDAwKSclM0UlM0NjaXJjbGUgaWQ9J092YWwnIHN0cm9rZT0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTEpJyBmaWxsPSclMjMwRjBFMEInIGN4PSczNicgY3k9JzM2JyByPSczNicgLyUzRSUzQ3BvbHlsaW5lIGlkPSdQYXRoJyBzdHJva2U9J3VybCglMjNsaW5lYXJHcmFkaWVudC0yKScgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMzcuNTAwMDAwLCAzNi4wMDAwMDApIHJvdGF0ZSgtMjcwLjAwMDAwMCkgdHJhbnNsYXRlKC0zNy41MDAwMDAsIC0zNi4wMDAwMDApICcgcG9pbnRzPScyNS41IDQ0IDM3LjUgMjggNDkuNSA0NCcgLyUzRSUzQy9nJTNFJTNDL2clM0UlM0MvZyUzRSUzQy9nJTNFJTNDL3N2ZyUzRSUwQVwiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICAvLyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxuczpzdmc9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA3NCA3NCcgdmVyc2lvbj0nMS4xJyUzRSUzQ2RlZnMgaWQ9J2RlZnM2MCclM0UlM0NsaW5lYXJHcmFkaWVudCB4MT0nLTEuMTEwMjIzMDJlLTE0JTI1JyB5MT0nNTAlMjUnIHgyPScxMDAlMjUnIHkyPSc1MCUyNScgaWQ9J2xpbmVhckdyYWRpZW50LTEnJTNFJTNDc3RvcCBzdG9wLWNvbG9yPSclMjNEQkFGNTcnIG9mZnNldD0nMCUyNScgaWQ9J3N0b3A1MCcgLyUzRSUzQ3N0b3Agc3RvcC1jb2xvcj0nJTIzNkY1MjFCJyBvZmZzZXQ9JzEwMCUyNScgaWQ9J3N0b3A1MicgLyUzRSUzQy9saW5lYXJHcmFkaWVudCUzRSUzQ2xpbmVhckdyYWRpZW50IHgxPSctMS4xMTAyMjMwMmUtMTQlMjUnIHkxPSc1MCUyNScgeDI9JzEwMCUyNScgeTI9JzUwJTI1JyBpZD0nbGluZWFyR3JhZGllbnQtMiclM0UlM0NzdG9wIHN0b3AtY29sb3I9JyUyM0RCQUY1Nycgb2Zmc2V0PScwJTI1JyBpZD0nc3RvcDU1JyAvJTNFJTNDc3RvcCBzdG9wLWNvbG9yPSclMjM2RjUyMUInIG9mZnNldD0nMTAwJTI1JyBpZD0nc3RvcDU3JyAvJTNFJTNDL2xpbmVhckdyYWRpZW50JTNFJTNDL2RlZnMlM0UlM0NnIGlkPSdEZXNrdG9wLTE0NDAnIHN0cm9rZT0nbm9uZScgc3Ryb2tlLXdpZHRoPScxJyBmaWxsPSdub25lJyBmaWxsLXJ1bGU9J2V2ZW5vZGQnJTNFJTNDZyBpZD0nUm91dGUtMl8xNDQwX0hvbWVwYWdlJyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgtMTMxMi4wMDAwMDAsIC0xODk4LjAwMDAwMCknJTNFJTNDZyBpZD0nMS1Db2x1bW4tSXRlbS1DYXJvdXNlbCcgdHJhbnNmb3JtPSd0cmFuc2xhdGUoOTE4LjAwMDAwMCwgMTYwMi4wMDAwMDApJyUzRSUzQ2cgaWQ9J0dyb3VwLTE4JyB0cmFuc2Zvcm09J3RyYW5zbGF0ZSgzOTUuMDAwMDAwLCAyOTcuMDAwMDAwKSclM0UlM0NjaXJjbGUgaWQ9J092YWwnIHN0cm9rZT0ndXJsKCUyM2xpbmVhckdyYWRpZW50LTEpJyBmaWxsPSclMjNGRkZGRkYnIGN4PSczNicgY3k9JzM2JyByPSczNicgLyUzRSUzQ3BvbHlsaW5lIGlkPSdQYXRoJyBzdHJva2U9J3VybCglMjNsaW5lYXJHcmFkaWVudC0yKScgdHJhbnNmb3JtPSd0cmFuc2xhdGUoMzcuNTAwMDAwLCAzNi4wMDAwMDApIHJvdGF0ZSgtMjcwLjAwMDAwMCkgdHJhbnNsYXRlKC0zNy41MDAwMDAsIC0zNi4wMDAwMDApICcgcG9pbnRzPScyNS41IDQ0IDM3LjUgMjggNDkuNSA0NCcgLyUzRSUzQy9nJTNFJTNDL2clM0UlM0MvZyUzRSUzQy9nJTNFJTNDL3N2ZyUzRSUwQVwiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgfVxuICAmOmhvdmVye1xuICAgICY6YWZ0ZXJ7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4gO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbm9fc2VsZWN0KCl7XG4gIC5ub3NlbGVjdCB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyAvKiBpT1MgU2FmYXJpICovXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgLyogU2FmYXJpICovXG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTsgLyogT2xkIHZlcnNpb25zIG9mIEZpcmVmb3ggKi9cbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IC8qIEludGVybmV0IEV4cGxvcmVyL0VkZ2UgKi9cbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgLyogTm9uLXByZWZpeGVkIHZlcnNpb24sIGN1cnJlbnRseVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cHBvcnRlZCBieSBDaHJvbWUsIEVkZ2UsIE9wZXJhIGFuZCBGaXJlZm94ICovXG4gIH1cbn1cblxuQG1peGluIGdvbGQtYm94LXNoYWRvdygpe1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDNweCByZ2JhKDIxOSwgMTc1LCA4NywgMC4xOSk7XG59XG5AbWl4aW4gbWF0LWJveC1zaGFkb3coKXtcbiAgYm94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoMCwwLDAsMC4xNiksIDAgM3B4IDZweCByZ2JhKDAsMCwwLDAuMjMpO1xufVxuXG5AbWl4aW4gYm9keS1oZWFkZXItcGFkZGluZygpe1xuICAvL2JvZHl7XG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LWRlc2t0b3AgKyAkdG9wLWJhci1oZWlnaHQ7XG4gIC8vfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcbiAgICBwYWRkaW5nLXRvcDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcblxuICB9XG59XG5cblxuQG1peGluIHBhZ2UtbmF2LWJ1dHRvbnMoKSB7XG4gIGEucHJldiwgYS5uZXh0IHtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICB3aWR0aDogMzMlO1xuICAgICAgaGVpZ2h0OiAzMyU7XG4gICAgICB0b3A6IDMzJTtcbiAgICAgIGxlZnQ6IDMzJTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG5cbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH1cblxuICB9XG5cbiAgYS5wcmV2IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM6c3ZnPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHg9JzBweCcgeT0nMHB4JyB2aWV3Qm94PScwIDAgMjkwLjYgNDkxLjk5NiclMEFzdHlsZT0nZmlsbDowMDAwMDAnIHhtbDpzcGFjZT0ncHJlc2VydmUnJTNFJTNDcGF0aCBkPSdNIDI2Ni4zMTIsNy44NjQgMjgyLjU0LDIzLjk4IGMgNS4wNjgsNS4wNzIgNy44NiwxMS44MiA3Ljg2LDE5LjAzMiAwLDcuMjA4IC0yLjc5MiwxMy45NjQgLTcuODYsMTkuMDM2IEwgOTguNjkyLDI0NS44ODggMjgyLjc0NCw0MjkuOTQgYyA1LjA2OCw1LjA2NCA3Ljg1NiwxMS44MiA3Ljg1NiwxOS4wMjggMCw3LjIwOCAtMi43ODgsMTMuOTY4IC03Ljg1NiwxOS4wMzYgbCAtMTYuMTI4LDE2LjEyIGMgLTEwLjQ4OCwxMC40OTYgLTI3LjU3MiwxMC40OTYgLTM4LjA2LDAgTCA4LjYzMiwyNjQuOTg4IEMgMy41NjgsMjU5LjkyNCAwLDI1My4xNzYgMCwyNDUuOTA0IHYgLTAuMDg0IGMgMCwtNy4yMTIgMy41NzIsLTEzLjk2IDguNjMyLC0xOS4wMjQgTCAyMjcuOTYsNy44NjQgQyAyMzMuMDI0LDIuNzkyIDIzOS45NzYsMC4wMDggMjQ3LjE4NCwwIGMgNy4yMTIsMCAxNC4wNjgsMi43OTIgMTkuMTI4LDcuODY0IHonIGlkPSdwYXRoMicgLyUzRSUzQy9zdmclM0UlMEFcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgYS5uZXh0IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMjkwLjYgNDkxLjk5NiclM0UlM0NwYXRoIGQ9J00gMjQuMjg4LDcuODY0IDguMDYsMjMuOTggQyAyLjk5MiwyOS4wNTIgMC4yLDM1LjggMC4yLDQzLjAxMiAwLjIsNTAuMjIgMi45OTIsNTYuOTc2IDguMDYsNjIuMDQ4IEwgMTkxLjkwOCwyNDUuODg4IDcuODU2LDQyOS45NCBDIDIuNzg4LDQzNS4wMDQgMCw0NDEuNzYgMCw0NDguOTY4IGMgMCw3LjIwOCAyLjc4OCwxMy45NjggNy44NTYsMTkuMDM2IGwgMTYuMTI4LDE2LjEyIGMgMTAuNDg4LDEwLjQ5NiAyNy41NzIsMTAuNDk2IDM4LjA2LDAgTCAyODEuOTY4LDI2NC45ODggYyA1LjA2NCwtNS4wNjQgOC42MzIsLTExLjgxMiA4LjYzMiwtMTkuMDg0IHYgLTAuMDg0IGMgMCwtNy4yMTIgLTMuNTcyLC0xMy45NiAtOC42MzIsLTE5LjAyNCBMIDYyLjY0LDcuODY0IEMgNTcuNTc2LDIuNzkyIDUwLjYyNCwwLjAwOCA0My40MTYsMCAzNi4yMDQsMCAyOS4zNDgsMi43OTIgMjQuMjg4LDcuODY0IFonIGlkPSdwYXRoMicgLyUzRSUzQy9zdmclM0UlMEFcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBoaWRlLWRlc3RvcC1sb2dvLWF0LXBhZ2UtdG9wKCl7XG4gIG5hdi50b3VjaC1tZW51IC5sb2dvLmZvci1kZXNrdG9wIHtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhcjtcbiAgfVxuICBuYXYudG91Y2gtbWVudSAubG9nby5mb3ItdG91Y2gtZGV2aWNlIHtcblxuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhcjtcbiAgfVxuXG4gICN3cmFwcGVyLW5hdmJhcntcbiAgICAmOmhvdmVyLCAmLm9wYXF1ZSwgJi5tb2ItbWVudS1hY3RpdmUsICYuaXMtY2xvc2luZywgJi5sb2dvLWF0LXRvcHtcbiAgICAgIG5hdi50b3VjaC1tZW51IC5sb2dvLmZvci1kZXNrdG9wIHtcblxuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgICAgbmF2LnRvdWNoLW1lbnUgLmxvZ28uZm9yLXRvdWNoLWRldmljZSB7XG5cbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuYWNjb3JkLWN0LCAjbW9iaWxlLW1lbnUgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW57XG4gIC5hY2NvcmQtY29udGVudHtcbiAgICAvLyBvcGFjaXR5OiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjdzIGN1YmljLWJlemllcigwLCAwLjU1LCAwLjQ1LCAxKTtcbiAgfVxuICAmLmFjY29yZC1vcGVue1xuICAgIC5hY2NvcmQtY29udGVudHtcbiAgICAgIGhlaWdodDogYXV0bztcblxuICAgIH1cbiAgfVxuICBzdmcuZG93bi1hcnJvd3tcblxuICAgIHRyYW5zaXRpb246IDAuNHMgY3ViaWMtYmV6aWVyKDAsIDAuNTUsIDAuNDUsIDEpO1xuICAgIC8vIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIH1cbiAgc3ZnLmRvd24tY2FyYXR7XG5cbiAgICB0cmFuc2l0aW9uOiAwLjdzIGN1YmljLWJlemllcigwLCAwLjU1LCAwLjQ1LCAxKTtcbiAgICAvLyB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB9XG5cbiAgLmFjY29yZC1oZWFke1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5cblxuLmFjY29yZC1vcGVue1xuXG4gID5kaXZ7XG4gICAgPnN2Z3tcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBzdmcuZG93bi1hcnJvd3tcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpICFpbXBvcnRhbnQ7XG4gIH1cbiAgc3ZnLmRvd24tY2FyYXR7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKSAhaW1wb3J0YW50O1xuICB9XG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIjtcbiAgc3JjOiB1cmwoXCIuLi9hc3NldHMvZm9udHMvTW9udHNlcnJhdC1TZW1pQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0LXRoaW5cIjtcbiAgc3JjOiB1cmwoXCIuLi9hc3NldHMvZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIjtcbiAgc3JjOiB1cmwoXCIuLi9hc3NldHMvZm9udHMvTW9udHNlcnJhdC1SZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZlwiO1xuICBzcmM6IHVybChcIi4uL2Fzc2V0cy9mb250cy9Ob3RvU2VyaWYtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLypcbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJSYWxld2F5XCI7XG4gIHNyYzogdXJsKFwiLi4vYXNzZXRzL2ZvbnRzL1JhbGV3YXktUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiovXG5cblxuXG5cbmgxLGgyLGgzLGg0LGg1LGg2e1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgPnNwYW57XG4gICAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgfVxuIC8qICYubm90by1mb250e1xuICAgIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2VyaWZcIjtcblxuICB9Ki9cbn1cbip7XG4gIGNvbG9yOiAkZm9udC1wcmltYXJ5LTEwMDtcbiAgJi53aGl0ZXtcbiAgICBjb2xvcjogd2hpdGU7XG4gIH1cbn1cblxuXG5cbnAsIHNwYW4sIGRpdntcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZlwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG5cbkBtaXhpbiBoZWFkaW5nRm9udC1Ob3RvKCl7XG4gICRyZXNpemU6IDEuMSwgMS4yO1xuICAvL0BpbmNsdWRlIGRvLWZvbnQoMTlweCwgMC4wM2VtLCAxOXB4LCAgJHJlc2l6ZSk7XG4gIC8vQGluY2x1ZGUgZG8tZm9udCgyMnB4LCAyNnB4LCAyNSAgKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZlwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuXG59XG5cbkBtaXhpbiBzdWJoZWFkaW5nRm9udC1Nb250c2VycmF0KCl7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbn1cblxuaDEge1xuICBAaW5jbHVkZSBoMS1mb250KCk7XG59XG5cbmgyIHtcbiAgQGluY2x1ZGUgaDItZm9udCgpO1xufVxuXG5oMyB7XG4gIEBpbmNsdWRlIGgzLWZvbnQoKTtcbn1cblxuaDQge1xuICBAaW5jbHVkZSBoNC1mb250KCk7XG59XG5cbmg1IHtcbiAgQGluY2x1ZGUgaDUtZm9udCgpO1xufVxuaDYge1xuICBAaW5jbHVkZSBoNi1mb250KCk7XG59XG5cbi8qaDEsIGgyLCBoMywgaDQsIGg1LGg2IHtcbiAgZm9udC1mYW1pbHk6IFwiUXVhdHRyb2NlbnRvIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgPnNwYW57XG4gICAgZm9udC1mYW1pbHk6IFwiUXVhdHRyb2NlbnRvIFNhbnNcIiwgc2Fucy1zZXJpZjtcblxuICB9XG59Ki9cblxuLm5hdi1mb250LCBidXR0b24sIGJ1dHRvbiA+IHNwYW57XG4gIEBpbmNsdWRlIG5hdi1mb250KCk7XG59XG5cbmJ1dHRvbntcblxufVxucCwgc3BhbiwgZGl2e1xuICAvLyBAaW5jbHVkZSBib2R5Uy1mb250KCk7XG4gICYuYm9keS1sLCAmLmJvZHktbCBwe1xuICAgIEBpbmNsdWRlIGJvZHlMLWZvbnQoKTtcbiAgfVxuICAmLmJvZHktbSwgJi5ib2R5LW0gcHtcbiAgICBAaW5jbHVkZSBib2R5TS1mb250KCk7XG4gIH1cbiAgJi5ib2R5LXMsICYuYm9keS1zIHB7XG4gICAgQGluY2x1ZGUgYm9keVMtZm9udCgpO1xuICB9XG4gICYuYm9keS14cywgJi5ib2R5LXhzIHAge1xuICAgIEBpbmNsdWRlIGJvZHlYUy1mb250KCk7XG4gIH1cblxufVxuYm9keXtcbiAgQGluY2x1ZGUgYm9keVMtZm9udCgpO1xufVxuXG4udy01MDB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbnAsIHNwYW57XG4gICYuYm9keS1ib2xke1xuICAgIEBpbmNsdWRlIGJvZHlCb2xkLWZvbnQoKTtcbiAgfVxufVxuXG4vKlxucCB7XG4gIC8vIEBpbmNsdWRlIGJvZHkxLWZvbnQoKTtcbiAgZm9udC1mYW1pbHk6IFwiUmFsZXdheVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuXG4gIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbn0qL1xuXG5cblxuQG1peGluIGZvbnQtbW9udC0xNnB4KCl7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5AbWl4aW4gZm9udC1tb250LTIwcHgoKXtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjZweDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIH1cbn1cbkBtaXhpbiBmb250LW1vbnQtMTZweC10aGluKCl7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICB9XG59XG5AbWl4aW4gZm9udC1tb250LTE4cHgoKXtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICAmLmYtcmVzcHtcblxuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG4gICYuZi1yZXNwLTE0e1xuICAgIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG59XG5AbWl4aW4gZm9udC1ub3RvLTE4cHgoKXtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZlwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIH1cbn1cblxuQG1peGluIGZvbnQtbm90by0xOHB4LWltcG9ydGFudCgpe1xuICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMjVweCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgfVxufVxuQG1peGluIGZvbnQtbm90by0yMnB4KCl7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2VyaWZcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICB9XG59XG5AbWl4aW4gZm9udC1ub3RvLTIwcHgoKXtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTZXJpZlwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMjdweDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIH1cbn1cbkBtaXhpbiBmb250LW5vdG8tMjhweCgpe1xuICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICBmb250LXNpemU6IDI4cHg7XG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgfVxufVxuXG4uZi1tb250LTE2IHtcblxuICBAaW5jbHVkZSBmb250LW1vbnQtMTZweCgpO1xufVxuLmYtbW9udC0yMCB7XG5cbiAgQGluY2x1ZGUgZm9udC1tb250LTIwcHgoKTtcbn1cbi5mLW1vbnQtMTgge1xuXG4gIEBpbmNsdWRlIGZvbnQtbW9udC0xOHB4KCk7XG4gIGg1LGg2e1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxufVxuXG4uZi1tb250LTE2LXRoaW4ge1xuXG4gIEBpbmNsdWRlIGZvbnQtbW9udC0xNnB4LXRoaW4oKTtcbn1cbi5mLXRoaW57XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5mLW5vdG8tMjIge1xuXG4gIEBpbmNsdWRlIGZvbnQtbm90by0yMnB4KCk7XG4gIHB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG59XG4uZi1ub3RvLTIwIHtcblxuICBAaW5jbHVkZSBmb250LW5vdG8tMjBweCgpO1xuICBwe1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxufVxuXG4uZi1ub3RvLTI4e1xuXG5cbiAgQGluY2x1ZGUgZm9udC1ub3RvLTI4cHgoKTtcblxufVxuLmYtbm90by0xOHtcblxuXG4gIEBpbmNsdWRlIGZvbnQtbm90by0xOHB4KCk7XG4gIHB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG59IiwiXG5AaW1wb3J0IFwibGliL21peGluc1wiO1xuXG4vKmhlYWRlcntcbiAgZGlzcGxheTogbm9uZTtcbn0qL1xuXG4vKmZvb3RlcntcbiAgZGlzcGxheTogbm9uZTtcbn0qL1xuXG4jd3JhcHBlci1uYXZiYXJ7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgLy8gb3ZlcmZsb3cteDogaGlkZGVuO1xuICBoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0LWRlc2t0b3A7XG4gIEBpbmNsdWRlIG5hdi1mb250KCk7XG5cbiAgJjphZnRlcntcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIDAuMnMgbGluZWFyO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgLnNlYXJjaHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgfVxuICAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVye1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMHMgMC4xM3MgbGluZWFyO1xuXG4gIH1cblxuICAubG9nby5mb3ItdG91Y2gtZGV2aWNle1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MTNweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHN2Z3tcbiAgICAgIHdpZHRoOiA0OXB4O1xuICAgICAgZmlsbDogd2hpdGU7XG5cblxuICAgIH1cblxuICB9XG5cbiAgLmxvZ28uZm9yLWRlc2t0b3B7XG5cbiAgICBzdmd7XG4gICAgICB3aWR0aDogMzI4cHg7XG4gICAgfVxuICAgIC8qc3Zne1xuICAgICAgZmlsbDogJGZvbnQtcHJpbWFyeS0xMDA7XG4gICAgICB3aWR0aDogMzI4cHg7XG4gICAgfSovXG5cbiAgfVxuXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSB7XG4gICAgJjpob3ZlciB7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgfVxuXG5cbiAgICAgIC5kYXJrLWNvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cblxuICAgICAgLmxvZ28uZm9yLWRlc2t0b3B7XG5cbiAgICAgICAgc3Zne1xuICAgICAgICAgIHdpZHRoOiAzMjhweDtcbiAgICAgICAgICBmaWxsOiAkZm9udC1wcmltYXJ5LTEwMDtcbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5sb2dvLmZvci10b3VjaC1kZXZpY2V7XG4gICAgICAgIHN2Z3tcbiAgICAgICAgICBmaWxsOiAkcHJpbWFyeS1jb2xvci0xMDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ib29rLW5vd3tcbiAgICAgICAgJi5mb3ItZGVza3RvcHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgIH1cblxuICAgICAgfVxuICAgICAgLmhhbWJ1cmdlci1pbm5lciwgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlcntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG5cblxuICAmLm9wYXF1ZSwgJi5vcGFxdWUtYXQtdG9wLCAmLm1vYi1tZW51LWFjdGl2ZSwgJi5pcy1jbG9zaW5ne1xuXG5cbiAgICAmOmFmdGVye1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC8vIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIH1cbiAgICBuYXYudG91Y2gtbWVudXtcbiAgICAgIC50b3VjaC1kcm9wZG93bi1jb3ZlciwgLnRvdWNoLWRyb3Bkb3duLWNvdmVyOmFmdGVyIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhciwgdHJhbnNmb3JtIDAuNnMgY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpO1xuICAgICAgfVxuICAgICAgLmxvZ28uZm9yLWRlc2t0b3B7XG5cbiAgICAgICAgc3Zne1xuICAgICAgICAgIGZpbGw6ICRmb250LXByaW1hcnktMTAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubG9nby5mb3ItdG91Y2gtZGV2aWNle1xuICAgICAgICBzdmd7XG4gICAgICAgICAgZmlsbDogJHByaW1hcnktY29sb3ItMTAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ib29rLW5vd3tcbiAgICAgICAgJi5mb3ItZGVza3RvcHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXJ7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIH1cbiAgfVxuXG4gICYub3BhcXVlOm5vdCgubW9iLW1lbnUtYWN0aXZlKXtcbiAgICBuYXYudG91Y2gtbWVudXtcbi8qXG4gICAgICAuaGFtYnVyZ2VyLWlubmVyLCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItaW5uZXI6OmFmdGVye1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIGxpbmVhcjtcbiAgICAgIH0qL1xuICAgIH1cbiAgfVxuXG5cbiAgJjpiZWZvcmV7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6MDtcbiAgICByaWdodDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gIH1cblxuICAmLm1vYi1tZW51LWFjdGl2ZXtcbiAgICAmOmJlZm9yZXtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgMC42cyBsaW5lYXI7XG4gICAgfVxuICB9XG5cbiAgJi5tb2ItbWVudS1hY3RpdmUsICYuaXMtY2xvc2luZ3tcblxuICAgICY6YWZ0ZXJ7XG4gICAgICAvL29wYWNpdHk6IDE7XG4gICAgICAvLyB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAvLyBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIH1cbiAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjaztcbiAgICAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgOiAycHggIWRlZmF1bHQ7XG4gICAgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgIDogNnB4ICFkZWZhdWx0O1xuICAgIC5kYXJrLWNvdmVye1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cblxuXG4gICAgLmhhbWJ1cmdlci0tc3ByaW5nIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLFxuICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbiAgLmRhcmstY292ZXJ7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQyKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXI7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcbiAgICAmOm5vdCgubW9iLW1lbnUtYWN0aXZlKXtcbiAgICAgIC5kYXJrLWNvdmVye1xuICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxufVxuXG5cblxubmF2LnRvdWNoLW1lbnV7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wO1xuXG5cbiAgLmxvZ28uZm9yLWRlc2t0b3B7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6NTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgc3Zne1xuICAgICAgZmlsbDogd2hpdGU7XG4gICAgfVxuICAgIC8qaDMsIGg1e1xuICAgICAgbWFyZ2luOjE1cHg7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjtcbiAgICB9Ki9cbiAgfVxuXG4gIC5ib29rLW5vd3tcbiAgICAmLmZvci1kZXNrdG9we1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IDAuMnMgbGluZWFyO1xuICAgIH1cblxuICB9XG5cbn1cblxuLm1lbnUtYzB7XG4gID4uY29udGFpbmVye1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5lbmR7XG4gICAgQGluY2x1ZGUgbmF2LWZvbnQoKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICA+ICp7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgJjpsYXN0LWNoaWxke1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBzdmd7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICB9XG4gIH1cbiAgaW1nLmxvZ297XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDE0MHB4O1xuICAgIHRvcDogMThweCArICR0b3AtYmFyLWhlaWdodDtcbiAgfVxuXG4gIC8vIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coKVxufVxuXG4uYm9va2luZy1wYW5lbHtcbiAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gLy8gd2lkdGg6Y2FsYygxMDAlIC0gMjBweCk7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIC8vIHotaW5kZXg6IDEwMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAgLDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBjdWJpYy1iZXppZXIoMC42MSwgMSwgMC44OCwgMSk7XG59XG5cbiN3cmFwcGVyLW5hdmJhcntcbiAgJi5ib29raW5nLXBhbmVsLW9wZW57XG4gICAgLmJvb2tpbmctcGFuZWx7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICAgICY6YWZ0ZXJ7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZXtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLy8gdHJhbnNpdGlvbjogb3BhY2l0eSAwcyAwLjY2cyBsaW5lYXI7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhsZyl7XG4gIG5hdi50b3VjaC1tZW51e1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgfVxuICBuYXYuZGVza3RvcC1tZW51e1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnRvcC1iYXItYzB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZW5ke1xuICAgID4qOmZpcnN0LWNoaWxke1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLm1lbnUtYzB7XG4gICAgaW1nLmxvZ297XG4gICAgICB0b3A6IDE4cHg7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIHJlc3BvbmQtYWJvdmUobWQpe1xuXG4gIG5hdi50b3VjaC1tZW51e1xuICAgIC50b3VjaC1kcm9wZG93bi1jb3ZlcntcbiAgICAgIGJ1dHRvbntcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxvZ28uZm9yLXRvdWNoLWRldmljZXtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gIH1cbn1cbkBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAjd3JhcHBlci1uYXZiYXJ7XG4gICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1tb2JpbGU7XG4gIH1cbiAgbmF2LnRvdWNoLW1lbnV7XG4gICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodC1tb2JpbGU7XG5cbiAgICAudG91Y2gtZHJvcGRvd24tYzB7XG4gICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0LW1vYmlsZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYm9vay1ub3d7XG4gICAgICAmLmZvci1kZXNrdG9we1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgfVxuICAgIC5sb2dvLmZvci1kZXNrdG9we1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgfVxufVxuXG5cbmJvZHkucHJpdmFjeS1wb2xpY3l7XG4gIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC1kZXNrdG9wO1xuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgIHBhZGRpbmctdG9wOiAkaGVhZGVyLWhlaWdodC10YWJsZXQgKyAkdG9wLWJhci1oZWlnaHQ7XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG4gICAgcGFkZGluZy10b3A6ICRoZWFkZXItaGVpZ2h0LW1vYmlsZSArICR0b3AtYmFyLWhlaWdodDtcbiAgfVxufVxuIiwiXG4jd3JhcHBlci1uYXZiYXIge1xuICAmLm1vYi1tZW51LWFjdGl2ZSB7XG4gICAgbmF2LnRvdWNoLW1lbnUge1xuICAgICAgLyoudG91Y2gtZHJvcGRvd24tYzB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyAwLjNzIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIH0qL1xuICAgICAgLnRvdWNoLWRyb3Bkb3duLWMwIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIH1cblxuICAgICAgLnRvdWNoLWRyb3Bkb3duLWNvdmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpLCBvcGFjaXR5IDAuMnMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAudG91Y2gtZHJvcGRvd24tYzEge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyAwLjNzIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKSwgb3BhY2l0eSAwLjNzIDAuM3MgbGluZWFyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbm5hdi50b3VjaC1tZW51IHtcblxuICBmbGV4LWdyb3c6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBzdmcge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC50b3VjaC1kcm9wZG93bi1jMCB7XG4gICAgLy8gaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogJGhlYWRlci1oZWlnaHQtZGVza3RvcDtcbiAgICAvLyBvcGFjaXR5OiAwLjI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy90cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsY2FsYygtMTAwJSksIDApO1xuICAgIC8vb3BhY2l0eTogMDtcbiAgICAvL3RyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzIGN1YmljLWJlemllcigwLjMzLCAxLCAwLjY4LCAxKSwgb3BhY2l0eSAwLjJzIDAuNXMgbGluZWFyO1xuICAgIHotaW5kZXg6IC0xO1xuXG4gICAgLm1lbnUtcGFnZS0yLWMwIHtcbiAgICAgIC8vdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgMC41cyBjdWJpYy1iZXppZXIoMC4zMywgMSwgMC42OCwgMSk7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAvLyB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgbGluZWFyLCB0cmFuc2Zvcm0gMC41cyBjdWJpYy1iZXppZXIoMC4zMywgMSwgMC42OCwgMSkgO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGxpbmVhciwgdHJhbnNmb3JtIDAuNXMgZWFzZS1pbjtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuXG4gICAgLm1lbnUtcGFnZS0xLWMwIHtcbiAgICAgIC5tZW51IHtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIDAuNHMgbGluZWFyO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc2hvdy1jaGlsZHJlbiB7XG5cblxuICAgICAgLm1lbnUtcGFnZS0yLWMwIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNnMgMC4zcyBjdWJpYy1iZXppZXIoMC4zMywgMSwgMC42OCwgMSk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuXG4gICAgICB9XG5cbiAgICAgIC5tZW51LXBhZ2UtMS1jMCB7XG4gICAgICAgIC5tZW51IHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgbGluZWFyO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC50b3VjaC1kcm9wZG93bi1jMSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIGNhbGMoLTEwMCUpLCAwKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgbGluZWFyLCB0cmFuc2Zvcm0gMC41cyBlYXNlLWluO1xuICB9XG5cbiAgLnRvdWNoLWRyb3Bkb3duLWNvdmVyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRoZWFkZXItaGVpZ2h0LXRhYmxldH0pO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC8vIGJvcmRlci10b3A6IDEwcHggc29saWQgcGluaztcbiAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIC8vIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNXM7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgaGVpZ2h0OiA0MDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMTAwcHg7XG4gICAgICAvL2JveC1zaGFkb3c6IDAgMTRweCAyOHB4IHJnYmEoMCwgMCwgMCwgMC4yNSksIDAgMTBweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yMik7XG4gICAgICAvL3RvcDogMDtcbiAgICAgIEBpbmNsdWRlIG1hdC1ib3gtc2hhZG93KCk7XG5cbiAgICB9XG5cbiAgICB6LWluZGV4OiAtMTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwYWRkaW5nOiB1bnNldDtcbiAgICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxM3B4O1xuXG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAubWVudS1wYWdlLTEtYzAsIC5tZW51LXBhZ2UtMi1jMCB7XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvL3RvcDogMDtcbiAgICB1bC5tZW51IHtcbiAgICAgIHBhZGRpbmc6IDMwcHggMCA0MHB4IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAvLyBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB9XG5cbiAgICAuZ3JvdXAtbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICB9XG5cbiAgLm1lbnUtcGFnZS0xLWMwIHtcbiAgICBzdmcge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAvLyBwYWRkaW5nOiA1MHB4IDAgMTBweCAxMHB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB9XG5cbiAgICAvLyBsZWZ0OiAwO1xuXG4gICAgLypsaXtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB9XG4gICAgLmdyb3VwLWxhYmVse1xuXG4gICAgICBhe1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICB9XG4gICAgfSovXG4gICAgI21vYmlsZS1tZW51IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cblxuICAgICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAkYmFjay1idXR0b24taGVpZ2h0OiA1MHB4O1xuXG4gIC5tZW51LXBhZ2UtMi1jMCB7XG5cbiAgICBzdmcuYWNjb3JkLWhlYWQge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuXG4gICAgYnV0dG9uI2JhY2stdG8tcGFnZS0xIHtcbiAgICAgIGhlaWdodDogJGJhY2stYnV0dG9uLWhlaWdodDtcbiAgICB9XG5cbiAgICAvL3RyYW5zaXRpb246IHRyYW5zZm9ybSAwcztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLWJhY2tncm91bmQtY29sb3I7XG4gICAgLy8gYmFja2dyb3VuZC1jb2xvcjogcGluaztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICAvLyBib3R0b206IDA7XG4gICAgLy9taW4taGVpZ2h0OiAxMDAlO1xuICAgIC8vIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBsaW5lYXIsIHRyYW5zZm9ybSAwLjVzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMsIDEsIDAuNjgsIDEpIDtcbiAgICAuY2hpbGRyZW4tYzAge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtICN7JGhlYWRlci1oZWlnaHQtdGFibGV0IC0gJGJhY2stYnV0dG9uLWhlaWdodH0pO1xuXG5cbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE3cHg7XG5cbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICB9XG5cbiAgICB1bC5zdWItbWVudSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweFxuICAgIH1cblxuICAgIHVsLm1lbnUge1xuXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoY2FsYygtNTAlIC0gMjRweCkpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDRweCAwO1xuICAgICAgfVxuXG4gICAgICA+IGxpIHtcbiAgICAgICAgPiAuZ3JvdXAtbGFiZWwge1xuICAgICAgICAgIC8vIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgIC8vIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCkgcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIGEsIHAge1xuICAgICAgICAvL0BpbmNsdWRlIGJvZHlTLWZvbnQoKTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAvL0BpbmNsdWRlIG5hdi1mb250KCk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnTm90byBTZXJpZicsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIC5ncm91cC1sYWJlbCB7XG4gICAgICAgIGEsIHAge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDtcbiAgICAgICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JleTE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFjY29yZC1jb250ZW50IHtcblxuICAgICAgdWwuc3ViLW1lbnUge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cbiAgICAgICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIC8vIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGxhY2Vob2xkZXItZ3JleTIwMDtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG5cbiAgbmF2LnRvdWNoLW1lbnUge1xuXG4gICAgLnRvdWNoLWRyb3Bkb3duLWNvdmVyIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAtNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLmJvb2tpbmctcGFuZWx7XG5cbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcblxuICAvL2Rpc3BsYXk6IG5vbmU7XG4gIC55LXNjcm9sbHtcbiAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXG4gIH1cblxuXG5cbiAgaWZyYW1lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IG5vbmU7ICAgICAgICAgLyogUmVzZXQgZGVmYXVsdCBib3JkZXIgKi9cbiAgICBoZWlnaHQ6IDEwMHZoOyAgICAgICAgLyogVmlld3BvcnQtcmVsYXRpdmUgdW5pdHMgKi9cbiAgICB3aWR0aDogY2FsYygxMDAlICsgMTdweCk7XG4gIH1cbiAgZGl2IHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIH1cblxuXG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICB6LWluZGV4OiAxMDAwO1xuLyogIC5oZWFke1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHggMjBweCAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoNXtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC8vIHRvcDogNnB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAvL3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIGJhY2tncm91bmQ6ICRhY3RpdmUtY29sb3IyO1xuICB9Ki9cblxuICAudG9we1xuICAgIGhlaWdodDogODBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAubG9nby1ib29raW5ne1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIC8vIGhlaWdodDogMzBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cblxuICAuaGVscGVyLXRleHR7XG4gICAgbWFyZ2luOiAzMHB4IDBweDtcbiAgICBwe1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luOiAxNXB4IDA7XG4gICAgfVxuICB9XG4gIGg1e1xuICAgIGJhY2tncm91bmQ6ICRiZy1kYXJrLTEwMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgIHBhZGRpbmc6IDE0cHggMDtcbiAgICBtYXJnaW46IDA7XG4gICAvLyAgbWFyZ2luLXRvcDogNjBweDtcblxuICB9XG4gIGJ1dHRvbi5jbG9zZS1ib29rLW5vd3tcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBzdmd7XG4gICAgICB3aWR0aDoyMHB4O1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgICBzdHJva2U6IGJsYWNrO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIH1cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgPmRpdntcbiAgICAvLyBwYWRkaW5nOiA0MHB4O1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgICBoNHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHZoKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgfVxuXG4gICY6YWZ0ZXJ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41MSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyAwLjY2cyBsaW5lYXI7XG4gIH1cbiAgJjpiZWZvcmV7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgdG9wOiAwO1xuICAgIC8vYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUxKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAvLyB0cmFuc2l0aW9uOiBvcGFjaXR5IDBzIGxpbmVhcjtcbiAgICBib3gtc2hhZG93OiAwIDE0cHggMjhweCByZ2JhKDAsIDAsIDAsIDAuMjUpLCAwIDEwcHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMjIpO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgI2FwYXJ0bWVudElmcmFtZUFsbHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJnLWRhcmstMTAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmctZGFyay0xMDA7XG4gICAgbWFyZ2luOiA0MHB4IDA7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICB9XG5cblxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKXtcbiAgICAuY29udGFpbmVyLWZpeGVke1xuICAgICAgLmZvb3Rlci1jMCwgI2NvcHlyaWdodHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8uZm9vdGVyLWMwe1xuICAgICAvLyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgIC8qIHBhZGRpbmctdG9wOiAxMjBweCAhaW1wb3J0YW50O1xuICAgICAgc3Zne1xuICAgICAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICAgIH0qL1xuICAgIC8vfVxuICB9XG5cblxufVxuXG5cblxuIiwiZm9vdGVyI2Zvb3RlciwgLmJvb2tpbmctcGFuZWx7XG5cblxuICBwYWRkaW5nOiAwIDAgJHNlY3Rpb24tdC1iLXBhZGRpbmcgMDtcblxuICAuZm9vdGVyLWMwe1xuICAgIHBhZGRpbmctYm90dG9tOiAkc2VjdGlvbi10LWItcGFkZGluZy1MO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICA+c3Zne1xuICAgICAgd2lkdGg6IDcwcHg7XG4gICAgfVxuICAgIC5mb290ZXItYzF7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICA+ICp7XG4gICAgICAgIHB7XG4gICAgICAgICAgbWFyZ2luOjA7XG5cbiAgICAgICAgfVxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4cyl7XG4gICAgICAgICAgJi5zb2NpYWwtYzB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB1bHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICAgICAgbGl7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGEscHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMCAwO1xuICAgICAgICAgIEBpbmNsdWRlIGJvZHlYUy1mb250KCk7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdNb250c2VycmF0LXRoaW4nLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIC8vIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuXG4gIH1cbiAgc2VjdGlvbi5saW5rc3tcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgYmxhY2s7XG5cbiAgfVxuICBzZWN0aW9uLmltYWdlLWJhbm5lcntcbiAgICBtYXJnaW4tYm90dG9tOiA4MHB4O1xuICB9XG5cbiAgYTpob3ZlcntcbiAgICBjb2xvcjogJGFjdGl2ZS1jb2xvcjI7XG4gICAgcHtcbiAgICAgIGNvbG9yOiAkYWN0aXZlLWNvbG9yMjtcblxuICAgIH1cbiAgfVxuXG5cbiAgI2NvcHlyaWdodHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgID46Zmlyc3QtY2hpbGR7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gICAgPjpsYXN0LWNoaWxke1xuICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG4gICAgLmZvb3Rlci1jMHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHN2Z3tcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICNjb3B5cmlnaHR7XG4gICAgICBhLHB7XG4gICAgICAgIG1hcmdpbjogMnB4O1xuICAgICAgfVxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgID46Zmlyc3QtY2hpbGR7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgfVxuICAgICAgPjpsYXN0LWNoaWxke1xuICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJcbi5ncm93aW5nLWxvZ28tYW5pbXtcblxuICAjdG9wLXN0cm9rZSwgI2JvdHRvbS1zdHJva2UsICNsZWZ0LXN0cm9rZSwgI3JpZ2h0LXN0cm9rZSwgI3RvcC1yaWdodC1zdHJva2UsICNib3R0b20tbGVmdC1zdHJva2UsICN0b3AtbGVmdC1zdHJva2UsICNib3R0b20tcmlnaHQtc3Ryb2tle1xuXG4gICAgc3Ryb2tlLWRhc2hhcnJheToyODtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMjg7XG4gICAgc3Ryb2tlOiB3aGl0ZTtcbiAgICAvLyBhbmltYXRpb246IGRhc2ggMnMgbGluZWFyIGZvcndhcmRzO1xuXG4gIH1cblxuICAmLnNob3d7XG4gICAgI3RvcC1zdHJva2UsICNib3R0b20tc3Ryb2tlLCAjbGVmdC1zdHJva2UsICNyaWdodC1zdHJva2UsICN0b3AtcmlnaHQtc3Ryb2tlLCAjYm90dG9tLWxlZnQtc3Ryb2tlLCAgI3RvcC1sZWZ0LXN0cm9rZSwgI2JvdHRvbS1yaWdodC1zdHJva2V7XG5cbiAgICAgIC8vc3Ryb2tlLWRhc2hhcnJheToyODtcbiAgICAgIC8vc3Ryb2tlLWRhc2hvZmZzZXQ6IDI4O1xuICAgICAgYW5pbWF0aW9uOiBkYXNoIDJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTEsIDAsIDAuNSwgMCkgZm9yd2FyZHM7XG4gICAgfVxuICB9XG5cbiAgQGtleWZyYW1lcyBkYXNoIHtcbiAgICAwJXtcbiAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAyODtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgICB9XG4gIH1cblxufVxuXG4iLCIudGlwcHktYm94W2RhdGEtYW5pbWF0aW9uPWZhZGVdW2RhdGEtc3RhdGU9aGlkZGVuXSB7XG4gICAgb3BhY2l0eTogMFxufVxuXG5bZGF0YS10aXBweS1yb290XSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMTBweClcbn1cblxuLnRpcHB5LWJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIG91dGxpbmU6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCB2aXNpYmlsaXR5LCBvcGFjaXR5XG59XG5cbi50aXBweS1ib3hbZGF0YS1wbGFjZW1lbnRePXRvcF0gPiAudGlwcHktYXJyb3cge1xuICAgIGJvdHRvbTogMFxufVxuXG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj10b3BdID4gLnRpcHB5LWFycm93OmJlZm9yZSB7XG4gICAgYm90dG9tOiAtN3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLXdpZHRoOiA4cHggOHB4IDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogaW5pdGlhbDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgdG9wXG59XG5cbi50aXBweS1ib3hbZGF0YS1wbGFjZW1lbnRePWJvdHRvbV0gPiAudGlwcHktYXJyb3cge1xuICAgIHRvcDogMFxufVxuXG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj1ib3R0b21dID4gLnRpcHB5LWFycm93OmJlZm9yZSB7XG4gICAgdG9wOiAtN3B4O1xuICAgIGxlZnQ6IDA7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDhweCA4cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogaW5pdGlhbDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tXG59XG5cbi50aXBweS1ib3hbZGF0YS1wbGFjZW1lbnRePWxlZnRdID4gLnRpcHB5LWFycm93IHtcbiAgICByaWdodDogMFxufVxuXG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj1sZWZ0XSA+IC50aXBweS1hcnJvdzpiZWZvcmUge1xuICAgIGJvcmRlci13aWR0aDogOHB4IDAgOHB4IDhweDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogaW5pdGlhbDtcbiAgICByaWdodDogLTdweDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdFxufVxuXG4udGlwcHktYm94W2RhdGEtcGxhY2VtZW50Xj1yaWdodF0gPiAudGlwcHktYXJyb3cge1xuICAgIGxlZnQ6IDBcbn1cblxuLnRpcHB5LWJveFtkYXRhLXBsYWNlbWVudF49cmlnaHRdID4gLnRpcHB5LWFycm93OmJlZm9yZSB7XG4gICAgbGVmdDogLTdweDtcbiAgICBib3JkZXItd2lkdGg6IDhweCA4cHggOHB4IDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiBpbml0aWFsO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciByaWdodFxufVxuXG4udGlwcHktYm94W2RhdGEtaW5lcnRpYV1bZGF0YS1zdGF0ZT12aXNpYmxlXSB7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTQsIDEuNSwgLjM4LCAxLjExKVxufVxuXG4udGlwcHktYXJyb3cge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBjb2xvcjogIzMzM1xufVxuXG4udGlwcHktYXJyb3c6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1zdHlsZTogc29saWRcbn1cblxuLnRpcHB5LWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiA1cHggOXB4O1xuICAgIHotaW5kZXg6IDFcbn0iLCIudGlwcHktYm94W2RhdGEtYW5pbWF0aW9uPXNjYWxlXVtkYXRhLXBsYWNlbWVudF49dG9wXSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tXG59XG5cbi50aXBweS1ib3hbZGF0YS1hbmltYXRpb249c2NhbGVdW2RhdGEtcGxhY2VtZW50Xj1ib3R0b21dIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3Bcbn1cblxuLnRpcHB5LWJveFtkYXRhLWFuaW1hdGlvbj1zY2FsZV1bZGF0YS1wbGFjZW1lbnRePWxlZnRdIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodFxufVxuXG4udGlwcHktYm94W2RhdGEtYW5pbWF0aW9uPXNjYWxlXVtkYXRhLXBsYWNlbWVudF49cmlnaHRdIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0XG59XG5cbi50aXBweS1ib3hbZGF0YS1hbmltYXRpb249c2NhbGVdW2RhdGEtc3RhdGU9aGlkZGVuXSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguNSk7XG4gICAgb3BhY2l0eTogMFxufSIsIi8qKlxuICogU3dpcGVyIDYuOC4wXG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDIxIFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IEp1bHkgMjIsIDIwMjFcbiAqL1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdzd2lwZXItaWNvbnMnO1xuICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuOnJvb3Qge1xuICAtLXN3aXBlci10aGVtZS1jb2xvcjogIzAwN2FmZjtcbn1cbi5zd2lwZXItY29udGFpbmVyIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICAvKiBGaXggb2YgV2Via2l0IGZsaWNrZXJpbmcgKi9cbiAgei1pbmRleDogMTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93ID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3ctY29sdW1uID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLXBvaW50ZXItZXZlbnRzIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXBvaW50ZXItZXZlbnRzLnN3aXBlci1jb250YWluZXItdmVydGljYWwge1xuICB0b3VjaC1hY3Rpb246IHBhbi14O1xufVxuLnN3aXBlci1zbGlkZSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbn1cbi5zd2lwZXItc2xpZGUtaW52aXNpYmxlLWJsYW5rIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogQXV0byBIZWlnaHQgKi9cbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItc2xpZGUge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbn1cbi8qIDNEIEVmZmVjdHMgKi9cbi5zd2lwZXItY29udGFpbmVyLTNkIHtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItd3JhcHBlcixcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuLyogQ1NTIE1vZGUgKi9cbi5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgLyogRm9yIEZpcmVmb3ggKi9cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAvKiBGb3IgSW50ZXJuZXQgRXhwbG9yZXIgYW5kIEVkZ2UgKi9cbn1cbi5zd2lwZXItY29udGFpbmVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsLnN3aXBlci1jb250YWluZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsLnN3aXBlci1jb250YWluZXItY3NzLW1vZGUgPiAuc3dpcGVyLXdyYXBwZXIge1xuICBzY3JvbGwtc25hcC10eXBlOiB5IG1hbmRhdG9yeTtcbn1cbjpyb290IHtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiA0NHB4O1xuICAvKlxuICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAqL1xufVxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogY2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDQ0ICogMjcpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtICh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDIpKTtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1idXR0b24tcHJldjphZnRlcixcbi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIge1xuICBmb250LWZhbWlseTogc3dpcGVyLWljb25zO1xuICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtdmFyaWFudDogaW5pdGlhbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dDphZnRlciB7XG4gIGNvbnRlbnQ6ICdwcmV2Jztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiBhdXRvO1xufVxuLnN3aXBlci1idXR0b24tbmV4dDphZnRlcixcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcbiAgY29udGVudDogJ25leHQnO1xufVxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlIHtcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogI2ZmZmZmZjtcbn1cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3I6ICMwMDAwMDA7XG59XG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbjpyb290IHtcbiAgLypcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgKi9cbn1cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4vKiBCdWxsZXRzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQtbmV4dCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAwLjI7XG59XG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvciwgdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKSk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDBweCwgLTUwJSwgMCk7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDZweCAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweDtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDAgNHB4O1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyBsZWZ0O1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbC5zd2lwZXItY29udGFpbmVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG59XG4vKiBQcm9ncmVzcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhcixcbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6ICNmZmZmZmY7XG59XG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sge1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yOiAjMDAwMDAwO1xufVxuLnN3aXBlci1wYWdpbmF0aW9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLyogU2Nyb2xsYmFyICovXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItc2Nyb2xsYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxJTtcbiAgYm90dG9tOiAzcHg7XG4gIHotaW5kZXg6IDUwO1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDk4JTtcbn1cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JTtcbn1cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnN3aXBlci1zY3JvbGxiYXItY3Vyc29yLWRyYWcge1xuICBjdXJzb3I6IG1vdmU7XG59XG4uc3dpcGVyLXNjcm9sbGJhci1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcsXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7XG59XG4vKiBQcmVsb2FkZXIgKi9cbjpyb290IHtcbiAgLypcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpO1xuICAqL1xufVxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJTtcbiAgYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgaW5maW5pdGUgbGluZWFyO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXItd2hpdGUge1xuICAtLXN3aXBlci1wcmVsb2FkZXItY29sb3I6ICNmZmY7XG59XG4uc3dpcGVyLWxhenktcHJlbG9hZGVyLWJsYWNrIHtcbiAgLS1zd2lwZXItcHJlbG9hZGVyLWNvbG9yOiAjMDAwO1xufVxuQGtleWZyYW1lcyBzd2lwZXItcHJlbG9hZGVyLXNwaW4ge1xuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4vKiBhMTF5ICovXG4uc3dpcGVyLWNvbnRhaW5lciAuc3dpcGVyLW5vdGlmaWNhdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogLTEwMDA7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlIC5zd2lwZXItc2xpZGUge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZS5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLXNsaWRlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xufVxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1wcmV2LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQgKyAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9wYWNpdHk6IDAuNjtcbiAgei1pbmRleDogMDtcbn1cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1jdWJlLXNoYWRvdzpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGZpbHRlcjogYmx1cig1MHB4KTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbn1cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgei1pbmRleDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuIiwiLnN3aXBlci1jb250YWluZXItZmFkZSB7XG4gICYuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUge1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIH1cbiAgfVxuICAuc3dpcGVyLXNsaWRlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICAmLFxuICAgICYgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvKiFcbiAqIGJhZ3VldHRlQm94LmpzXG4gKiBAYXV0aG9yICBmZWltb3NpXG4gKiBAdmVyc2lvbiAxLjExLjFcbiAqIEB1cmwgaHR0cHM6Ly9naXRodWIuY29tL2ZlaW1vc2kvYmFndWV0dGVCb3guanNcbiAqL1xuI2JhZ3VldHRlQm94LW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzIGVhc2U7IH1cbiAgI2JhZ3VldHRlQm94LW92ZXJsYXkudmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAjYmFndWV0dGVCb3gtb3ZlcmxheSAuZnVsbC1pbWFnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2UgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICNiYWd1ZXR0ZUJveC1vdmVybGF5IC5mdWxsLWltYWdlIGltZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgIC1tb3otYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG4gICAgI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2UgZmlnY2FwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICBjb2xvcjogI2NjYztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgfVxuICAgICNiYWd1ZXR0ZUJveC1vdmVybGF5IC5mdWxsLWltYWdlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXB4OyB9XG5cbiNiYWd1ZXR0ZUJveC1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBsZWZ0IC40cyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAuNHMgZWFzZTtcbiAgdHJhbnNpdGlvbjogbGVmdCAuNHMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gLjRzIGVhc2U7XG4gIHRyYW5zaXRpb246IGxlZnQgLjRzIGVhc2UsIHRyYW5zZm9ybSAuNHMgZWFzZTtcbiAgdHJhbnNpdGlvbjogbGVmdCAuNHMgZWFzZSwgdHJhbnNmb3JtIC40cyBlYXNlLCAtd2Via2l0LXRyYW5zZm9ybSAuNHMgZWFzZSwgLW1vei10cmFuc2Zvcm0gLjRzIGVhc2U7IH1cbiAgI2JhZ3VldHRlQm94LXNsaWRlci5ib3VuY2UtZnJvbS1yaWdodCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGJvdW5jZUZyb21SaWdodCAuNHMgZWFzZS1vdXQ7XG4gICAgICAgICAgICBhbmltYXRpb246IGJvdW5jZUZyb21SaWdodCAuNHMgZWFzZS1vdXQ7IH1cbiAgI2JhZ3VldHRlQm94LXNsaWRlci5ib3VuY2UtZnJvbS1sZWZ0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogYm91bmNlRnJvbUxlZnQgLjRzIGVhc2Utb3V0O1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBib3VuY2VGcm9tTGVmdCAuNHMgZWFzZS1vdXQ7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUZyb21SaWdodCB7XG4gIDAlIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICA1MCUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMzBweDsgfVxuICAxMDAlIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBrZXlmcmFtZXMgYm91bmNlRnJvbVJpZ2h0IHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4OyB9XG4gIDEwMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUZyb21MZWZ0IHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgMTAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUZyb21MZWZ0IHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIDUwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cbiAgMTAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4uYmFndWV0dGVCb3gtYnV0dG9uI25leHQtYnV0dG9uLCAuYmFndWV0dGVCb3gtYnV0dG9uI3ByZXZpb3VzLWJ1dHRvbiB7XG4gIHRvcDogNTAlO1xuICB0b3A6IGNhbGMoNTAlIC0gMzBweCk7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDYwcHg7IH1cblxuLmJhZ3VldHRlQm94LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxNSU7XG4gICAgICAgYm9yZGVyLXJhZGl1czogMTUlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCA1MCwgNTAsIDAuNSk7XG4gIGNvbG9yOiAjZGRkO1xuICBmb250OiAxLjZlbSBzYW5zLXNlcmlmO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjRzIGVhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjRzIGVhc2U7IH1cbiAgLmJhZ3VldHRlQm94LWJ1dHRvbjpmb2N1cywgLmJhZ3VldHRlQm94LWJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MCwgNTAsIDUwLCAwLjkpOyB9XG4gIC5iYWd1ZXR0ZUJveC1idXR0b24jbmV4dC1idXR0b24ge1xuICAgIHJpZ2h0OiAyJTsgfVxuICAuYmFndWV0dGVCb3gtYnV0dG9uI3ByZXZpb3VzLWJ1dHRvbiB7XG4gICAgbGVmdDogMiU7IH1cbiAgLmJhZ3VldHRlQm94LWJ1dHRvbiNjbG9zZS1idXR0b24ge1xuICAgIHRvcDogMjBweDtcbiAgICByaWdodDogMiU7XG4gICAgcmlnaHQ6IGNhbGMoMiUgKyA2cHgpO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDsgfVxuICAuYmFndWV0dGVCb3gtYnV0dG9uIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwOyB9XG5cbi8qXG4gICAgUHJlbG9hZGVyXG4gICAgQm9ycm93ZWQgZnJvbSBodHRwOi8vdG9iaWFzYWhsaW4uY29tL3NwaW5raXQvXG4qL1xuLmJhZ3VldHRlQm94LXNwaW5uZXIge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDsgfVxuXG4uYmFndWV0dGVCb3gtZG91YmxlLWJvdW5jZTEsXG4uYmFndWV0dGVCb3gtZG91YmxlLWJvdW5jZTIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IC42O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgLXdlYmtpdC1hbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgICAgICAgICBhbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDsgfVxuXG4uYmFndWV0dGVCb3gtZG91YmxlLWJvdW5jZTIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTFzO1xuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLTFzOyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2Uge1xuICAwJSwgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cbiIsImJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWhvbWUge1xuXG4gIG1pbi1oZWlnaHQ6IDI1MHZoO1xuICAvLyBiYWNrZ3JvdW5kOiAjMEEyNDZBO1xuXG4gIC8vIHBhZGRpbmctdG9wOiAyMDBweDtcblxuXG4gIHNlY3Rpb24uZmVhdHVyZS12aWRlbyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwdncgLSB2YXIoLS1zY3JvbGxiYXItd2lkdGgpKTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuXG4gICAgLmxvZ28tbmFtZS1jMCwgLm5hbWUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cblxuICAgICR0b3A6IDIwdmg7XG5cbiAgICAuZ3Jvd2luZy1sb2dvLWFuaW0ge1xuICAgICAgdG9wOiAkdG9wO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgLy9vcGFjaXR5OiAwO1xuICAgICAgLy90cmFuc2l0aW9uOiAycyBvcGFjaXR5IGN1YmljLWJlemllcigwLjMyLCAwLCAwLjY3LCAwKTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBmaWxsOiB3aGl0ZVxuXG4gICAgICB9XG5cbiAgICAgICYuc2hvdyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAubmFtZSB7XG5cbiAgICAgIHN2Z3tcbiAgICAgICAgZmlsbDogd2hpdGU7XG4gICAgICAgIHdpZHRoOiAzMjhweDtcbiAgICAgIH1cbiAgICAgIHRvcDogY2FsYygjeyR0b3B9ICsgMTMwcHgpO1xuXG4gICAgICBoMSwgaDIsIGgzLCBoNCwgaDUge1xuICAgICAgICBtYXJnaW46IDE1cHhcbiAgICAgIH1cblxuICAgICAgaDQge1xuICAgICAgICBtaW4td2lkdGg6IGNhbGMgKDEwMHZ3IC0gdmFyKC0tc2Nyb2xsYmFyLXdpZHRoKSk7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAjaWZyYW1lLWNvbnRhaW5lciB7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDB2aDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuXG5cbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIC8vd2lkdGg6IGNhbGMoMTAwdncgLSB2YXIoLS1zY3JvbGxiYXItd2lkdGgpKTtcbiAgICAgICAgLy9oZWlnaHQ6IGNhbGMoMTAwdncgLSB2YXIoLS1zY3JvbGxiYXItd2lkdGgpICogMC41NjI1KTsgLyogR2l2ZW4gYSAxNjo5IGFzcGVjdCByYXRpbywgOS8xNioxMDAgPSA1Ni4yNSAqL1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2dyAqIDAuNTYyNSk7IC8qIEdpdmVuIGEgMTY6OSBhc3BlY3QgcmF0aW8sIDkvMTYqMTAwID0gNTYuMjUgKi9cbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIG1pbi13aWR0aDogY2FsYygxNzcuNzd2aCk7IC8qIEdpdmVuIGEgMTY6OSBhc3BlY3QgcmF0aW8sIDE2LzkqMTAwID0gMTc3Ljc3ICovXG4gICAgICAgIC8vbWF4LWhlaWdodDogMTAwdmg7XG4gICAgICAgIC8vb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC8vIGxlZnQ6IDUwcHg7XG4gICAgICAgIC8vIDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAycyBsaW5lYXI7XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cblxuICAgICAgfVxuICAgIH1cbiAgICAudGFne1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDQxcHg7XG4gICAgICBmb250LWZhbWlseTogXCJOb3RvIFNlcmlmXCIsIHNhbnMtc2VyaWY7XG4gICAgfVxuXG5cbiAgfVxuXG4gIHNlY3Rpb24uZGVzY3JpcHRpb24ge1xuICAgIGJhY2tncm91bmQ6ICRiZy0yMDA7XG5cbiAgICBwe1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgLmRlc2N7XG4gICAgICBwe1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxhdC1sbmctYzAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xMHB4O1xuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICB9XG5cbiAgICAgICo6Zmlyc3QtY2hpbGQsICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggNjBweDtcbiAgICAgIH1cbiAgICAgIGg1LCBoNntcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzZWN0aW9uLnVzcHMge1xuXG4gICAvLyBwYWRkaW5nOiAkc2VjdGlvbi10LWItcGFkZGluZyAwO1xuICAgIGJhY2tncm91bmQ6ICRiZy0yMDA7XG5cbiAgICBoNiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIDEuMnMgbGluZWFyO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBzdHJva2U6ICRmb250LXByaW1hcnktMjAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IDFzIG9wYWNpdHkgY3ViaWMtYmV6aWVyKDAuMzIsIDAsIDAuNjcsIDApOztcbiAgICB9XG5cbiAgICAudXNwLWMwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgc3ZnI2JvcmRlci1vbmx5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93IHtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhbXAtZmlyZSwgLnVzcC1jMCB7XG4gICAgICBzdmcge1xuICAgICAgICAjYm9yZGVyLXN0cm9rZSB7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogMjEyLjg2O1xuICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAyMTIuODY7XG4gICAgICAgIH1cblxuICAgICAgIC8qICNmbGFtZS1zdHJva2Uge1xuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDE1LjI2O1xuICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAxNS4yNjtcbiAgICAgICAgfSovXG4gICAgICAgIC5mbGFtZXtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxcyAxcyBjdWJpYy1iZXppZXIoMC4xMSwgMCwgMC41LCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgICN3b29kLWJyLXN0cm9rZSB7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hhcnJheTogMjUuMzE4O1xuICAgICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAyNS4zMTg7XG4gICAgICAgIH1cblxuICAgICAgICAjd29vZC1ibC1zdHJva2Uge1xuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDI1LjMxODtcbiAgICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogMjUuMzE4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuc2hvdyB7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgLnBhaW50IHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc3ZnLWFuaW0gMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4xMSwgMCwgMC41LCAwKSBmb3J3YXJkcztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucGFpbnQtbGluZWFyIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc3ZnLWFuaW0gMXMgbGluZWFyIGZvcndhcmRzO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZmxhbWV7XG4gICAgICAgICAgICBvcGFjaXR5OjFcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9yZXN0IHtcblxuXG4gICAgICAudHJlZXMtYzAge1xuICAgICAgICAudHJlZXMtYzEge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIGhlaWdodDogMzklO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBib3R0b206IDE2JTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxcyAwLjNzIGN1YmljLWJlemllcigwLjExLCAwLCAwLjUsIDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnNob3cge1xuICAgICAgICAudHJlZXMtYzAge1xuICAgICAgICAgIC50cmVlcy1jMSB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jYWJpbnMge1xuXG4gICAgICAuY2FiaW5zLWMxIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBoZWlnaHQ6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBib3R0b206IDE1JTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXG4gICAgICAgICNjYWJpbi1zdHJva2Uge1xuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDEwNS43ODQ7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDEwNS43ODQ7XG4gICAgICAgIH1cblxuICAgICAgICAjZmFkZS1pbiB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgMXMgbGluZWFyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuc2hvdyB7XG4gICAgICAgICNmYWRlLWluIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm9yY2hhcmRzIHtcbiAgICAgICN0cmVlLXRvcC1zdHJva2Uge1xuICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA1Ni44NjU7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiA1Ni44NjU7XG4gICAgICB9XG5cbiAgICAgICN0cmVlLXRydW5rLXN0cm9rZSB7XG4gICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDE4LjA1Njc7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAxOC4wNTY3O1xuICAgICAgfVxuXG4gICAgICAjYmxvYnMge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgMS4ycyBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgIC5vcmNoYXJkcy1jMSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDcyJTtcbiAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiAxOCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIH1cblxuICAgICAgJi5zaG93IHtcbiAgICAgICAgI2Jsb2JzIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRhcnRtb29yIHtcbiAgICAgIC5kYXJ0bW9vci1jMSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDc3JTtcbiAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgYm90dG9tOiA5LjUlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAgICAgI2QtY2xpcDEtc3Ryb2tlIHtcbiAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiA4OS43Mzc7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDg5LjczNztcbiAgICAgICAgICAvLyBhbmltYXRpb246IHN2Zy1hbmltIDFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMTEsIDAsIDAuNSwgMCkgZm9yd2FyZHM7XG4gICAgICAgIH1cblxuICAgICAgICAjZC1jbGlwMi1zdHJva2Uge1xuICAgICAgICAgIHN0cm9rZS1kYXNoYXJyYXk6IDU4LjkwODtcbiAgICAgICAgICBzdHJva2UtZGFzaG9mZnNldDogNTguOTA4O1xuICAgICAgICAgIC8vYW5pbWF0aW9uOiBzdmctYW5pbSAxcyAwLjVzIGN1YmljLWJlemllcigwLjExLCAwLCAwLjUsIDApIGZvcndhcmRzO1xuICAgICAgICB9XG5cbiAgICAgICAgI2QtY2xpcDMtc3Ryb2tlIHtcbiAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAyNjUuMzk7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDI2NS4zOTtcbiAgICAgICAgICAvL2FuaW1hdGlvbjogc3ZnLWFuaW0gMXMgMXMgY3ViaWMtYmV6aWVyKDAuMTEsIDAsIDAuNSwgMCkgZm9yd2FyZHM7XG4gICAgICAgIH1cblxuICAgICAgICAjZC10cmVlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyAxLjJzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnNob3cge1xuICAgICAgICAuZGFydG1vb3ItYzEge1xuICAgICAgICAgICNkLWNsaXAyLXN0cm9rZSB7XG4gICAgICAgICAgICBhbmltYXRpb246IHN2Zy1hbmltIDFzIDAuNHMgY3ViaWMtYmV6aWVyKDAuMTEsIDAsIDAuNSwgMCkgZm9yd2FyZHM7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgI2QtY2xpcDMtc3Ryb2tlIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc3ZnLWFuaW0gMXMgMC43cyBjdWJpYy1iZXppZXIoMC4xMSwgMCwgMC41LCAwKSBmb3J3YXJkcztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAjZC10cmVlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxvY2FsLXByb2R1Y2Uge1xuICAgICAgLmxvY2FsLXByb2R1Y2UtYzEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiA3NCU7XG4gICAgICAgIGhlaWdodDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIGJvdHRvbTogMTQlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cbiAgICAgICAvKiAjdGFibGUtdG9wLXN0cm9rZXtcbiAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAyNi4wMjc7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDI2LjAyNztcbiAgICAgICAgfVxuICAgICAgICAjdGFibGUtbGVnLXN0cm9rZXtcbiAgICAgICAgICBzdHJva2UtZGFzaGFycmF5OiAxMy44MTU7XG4gICAgICAgICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDEzLjgxNTtcbiAgICAgICAgfSovXG4gICAgICAgICNscC10cmVle1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjZzIDEuMnMgbGluZWFyO1xuICAgICAgICB9XG4gICAgICAgIC50YWJsZXtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyAxLjNzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5zaG93e1xuICAgICAgICAubG9jYWwtcHJvZHVjZS1jMXtcbiAgICAgICAgICAjdGFibGUtbGVnLXN0cm9rZXtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogc3ZnLWFuaW0gMXMgMC40cyBjdWJpYy1iZXppZXIoMC4xMSwgMCwgMC41LCAwKSBmb3J3YXJkcztcbiAgICAgICAgICB9XG4gICAgICAgICAgI2xwLXRyZWV7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgICAudGFibGV7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgQGtleWZyYW1lcyBzdmctYW5pbSB7XG4gICAgICB0byB7XG4gICAgICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNlY3Rpb24ucHJvcGVydGllc3tcblxuICAgIG1hcmdpbjogNzBweCAwO1xuICB9XG5cblxuXG5cblxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KGxnKXtcblxuXG4gICAgc2VjdGlvbi51c3BzIHtcblxuXG4gICAgICAudXNwLWMwe1xuICAgICAgICAmOm50aC1jaGlsZChuKzQpe1xuICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuXG4gICAgLypzZWN0aW9uLmZlYXR1cmUtdmlkZW97XG4gICAgICAuZ3Jvd2luZy1sb2dvLWFuaW0ge1xuICAgICAgICB0b3A6IDI1dmg7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubmFtZSB7XG4gICAgICAgIHRvcDogY2FsYygyNXZoICsgMTEwcHgpO1xuICAgICAgfVxuICAgICAgLnctNTAwe1xuICAgICAgICBtYXgtd2lkdGg6MzIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgfVxuICAgICAgLnRhZ3tcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgIH1cbiAgICB9Ki9cbiAgICBzZWN0aW9uLmRlc2NyaXB0aW9uIHtcblxuXG4gICAgICAubGF0LWxuZy1jMCB7XG5cbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTE3cHg7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG5cbiAgICBzZWN0aW9uLmZlYXR1cmUtdmlkZW97XG4gICAgICAuZ3Jvd2luZy1sb2dvLWFuaW0ge1xuICAgICAgICB0b3A6IDI1dmg7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgd2lkdGg6IDQ5cHg7XG4gICAgICAgICAgaGVpZ2h0OiA0OXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubmFtZSB7XG4gICAgICAgIHRvcDogY2FsYygyNXZoICsgODBweCk7XG4gICAgICAgIHN2Z3tcbiAgICAgICAgICB3aWR0aDogMjAzcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC53LTUwMHtcbiAgICAgICAgbWF4LXdpZHRoOjMyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgIH1cbiAgICAgIC50YWd7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICB9XG4gICAgfVxuICAgIHNlY3Rpb24uZGVzY3JpcHRpb24ge1xuXG5cbiAgICAgIC5sYXQtbG5nLWMwIHtcblxuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMTVweDtcblxuICAgICAgICAqOmZpcnN0LWNoaWxkLCAqOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLnVzcHMge1xuXG5cbiAgICAgIC51c3AtYzB7XG4gICAgICAgICY6bnRoLWNoaWxkKG4rMyl7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCJib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hY3Rpdml0aWVzIHtcblxuICBzZWN0aW9uLmRlc2NyaXB0aW9uIHtcblxuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLnN1YmhlYWQge1xuICAgICAgKiB7XG4gICAgICAgIG1hcmdpbjogNXB4IDA7XG5cbiAgICAgIH1cblxuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICAuc3ViaGVhZGVyIHtcbiAgICAgICo6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNHB4O1xuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2VjdGlvbi5hY3Rpdml0aWVzLW1hcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuY2Mge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuICAgIC5iZy1jMCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgID4gaW1nOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDAuMzI1KSBibHVyKDRweClcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWFwLWMwIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4Ny42NSU7XG5cbiAgICAgID4gaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLyogcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgb3BhY2l0eTogMC41OyovXG4gICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAubnltZXR3b29kLXBpbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0xMDAlKTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgZmlsbDogJHByaW1hcnktY29sb3ItMTAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgfVxuICAgIH1cblxuICAgIC5tYXAtcG9pbnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgJHNpemU6IDIwcHg7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgei1pbmRleDogMTM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblxuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZmlsbDogJGFjdGl2ZS1jb2xvcjM7XG4gICAgICAgIC8vc3Ryb2tlLXdpZHRoOiAxMHB4O1xuICAgICAgICAvL3N0cm9rZTogYmxhY2s7XG5cbiAgICAgIH1cblxuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLm1hcC1pdGVtcy1jMCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuc3dpcGVyLW5leHQsIC5zd2lwZXItcHJldiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLmFjdGl2aXRpZXMtc3dpcGVyIHtcbiAgICAgIC8vIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgLy8gYm90dG9tOiAwO1xuICAgICAgLy9sZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDQ2MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgLy9yaWdodDogNTBweDtcbiAgICAgIGJvdHRvbTogLTUwcHg7XG4gICAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgLy9cbiAgICAgIC8vcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLmMwLCAuY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC5zbGlkZS1jMCB7XG5cbiAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgIGhlaWdodDogNDYwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogNTBweDtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coKTtcbiAgICAgIC8vYm90dG9tOiAwcHg7XG5cblxuICAgIH1cblxuICAgIC5idXR0b25zLWMwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgLy9vdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgLnN3aXBlci1wcmV2LCAuc3dpcGVyLW5leHQge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHotaW5kZXg6IDk5O1xuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkcHJpbWFyeS1jb2xvci0xMDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgfVxuXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDUlO1xuICAgIH1cblxuICAgIC5zd2lwZXItbmV4dCB7XG5cbiAgICAgIHN2ZyB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICB9XG5cblxuICAgICAgcmlnaHQ6IDA7XG5cbiAgICB9XG5cbiAgICAuc3dpcGVyLXByZXYge1xuXG4gICAgICBzdmcge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICB9XG5cblxuICAgICAgbGVmdDogMDtcblxuICAgIH1cblxuXG4gIH1cblxuXG4gIHNlY3Rpb24uYWN0aXZpdGllcy1saXN0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgIC5vYmotaGVhZGluZ3tcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgIH1cblxuXG4gICAgLmNvbHMtMiB7XG4gICAgICBAaW5jbHVkZSB0d28tY29scyg0MHB4KTtcbiAgICB9XG5cbiAgICAuYWN0aXZpdHktbGlzdC1jYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLmltZy1jMCB7XG4gICAgICAgIEBpbmNsdWRlIGFzcGVjdCg2MCUpO1xuICAgICAgICBpbWd7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gICAgICAgIGg1IHtcbiAgICAgICAgICAvLyAgbWFyZ2luOiA0MHB4IDAgMTBweDtcbiAgICAgICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjIHtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICB9XG5cblxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgQGluY2x1ZGUgZWxpcHNpcyg0KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUoc20pIHtcblxuICAgIHNlY3Rpb24uYWN0aXZpdGllcy1saXN0IHtcbiAgICAgIC5jb2xzLTIge1xuICAgICAgICAuYWN0aXZpdHktbGlzdC1jYXJkIHtcbiAgICAgICAgICAmOm50aC1jaGlsZChuKzMpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyh4eGwpIHtcbiAgICBzZWN0aW9uLmFjdGl2aXRpZXMtbWFwIHtcbiAgICAgID4gLmNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgIH1cblxuICAgICAgLnNsaWRlLWMwIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2VjdGlvbi5hY3Rpdml0aWVzLW1hcCB7XG5cblxuICAgIC5hY3Rpdml0eS1zd2lwZXItY2FyZCB7XG4gICAgICAuY29udGVudCA+IHAge1xuICAgICAgICBAaW5jbHVkZSBlbGlwc2lzKDUpO1xuICAgICAgICAvKkBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOiAzKSB7XG5cbiAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICB9Ki9cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhsKSB7XG4gICAgc2VjdGlvbi5hY3Rpdml0aWVzLW1hcCB7XG5cbiAgICAgIC5hY3Rpdml0aWVzLXN3aXBlciB7XG4gICAgICAgIC8vIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICAvLyBib3R0b206IDA7XG4gICAgICAgIC8vbGVmdDogMDtcbiAgICAgICAgLy93aWR0aDogMzAwcHg7XG4gICAgICAgIC8vaGVpZ2h0OiA0MjBweDtcbiAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vIHJpZ2h0OiA1MHB4O1xuICAgICAgICAvL2JvdHRvbTogLTYwcHg7XG4gICAgICAgIC8vIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIC8vQGluY2x1ZGUgYm94LXNoYWRvdygpO1xuICAgICAgfVxuXG4gICAgICAuYWN0aXZpdHktc3dpcGVyLWNhcmQge1xuICAgICAgICAuY29udGVudCA+IHAge1xuICAgICAgICAgIEBpbmNsdWRlIGVsaXBzaXMoNCk7XG4gICAgICAgICAgLypAc3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDogMykge1xuXG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDM7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgfSovXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWN0aXZpdHktc3dpcGVyLWNhcmQge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAvLyBAaW5jbHVkZSBib3gtc2hhZG93KCk7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDQ1JTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC5jb250ZW50IHtcbiAgICAgICRwOiAyMHB4O1xuICAgICAgcGFkZGluZzogMCAkcCAkcCAkcDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgPiBkaXYge1xuICAgICAgICBAaW5jbHVkZSBlbGlwc2lzKDQpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogMjJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogJHA7XG5cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICBAaW5jbHVkZSByZXNwb25kLWFib3ZlKGxnKSB7XG5cblxuICAgIHNlY3Rpb24uYWN0aXZpdGllcy1tYXAge1xuXG5cbiAgICAgIC5zd2lwZXItbmV4dCwgLnN3aXBlci1wcmV2IHtcbiAgICAgICAgYm90dG9tOiAxMzBweDtcbiAgICAgIH1cblxuICAgICAgLnN3aXBlci1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IC0zNXB4O1xuICAgICAgfVxuXG4gICAgICAuc3dpcGVyLXByZXYge1xuICAgICAgICBsZWZ0OiAtMzVweDtcbiAgICAgIH1cblxuXG4gICAgICAuc3dpcGVyLW5leHQge1xuXG4gICAgICAgIC8vcmlnaHQ6IDE2JTtcbiAgICAgICAgLy9ib3R0b206IC0xMiU7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgfVxuXG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhsZykge1xuXG5cbiAgICBzZWN0aW9uLmFjdGl2aXRpZXMtbWFwIHtcblxuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgLmNvbnRlbnQge1xuXG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygpO1xuICAgICAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgICAgIH1cblxuICAgICAgLmFjdGl2aXR5LXN3aXBlci1jYXJkIHtcbiAgICAgICAgLmNvbnRlbnQgPiBwIHtcbiAgICAgICAgICBAaW5jbHVkZSBlbGlwc2lzKDMpO1xuICAgICAgICAgIC8qQHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6IDMpIHtcblxuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAzO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAgIH0qL1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICRoOiAxODZweDtcblxuICAgICAgLmFjdGl2aXRpZXMtc3dpcGVyIHtcblxuICAgICAgICAvLyBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgICAgLy8gYm90dG9tOiAwO1xuICAgICAgICAvL2xlZnQ6IDA7XG4gICAgICAgIC8vd2lkdGg6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAkaDtcbiAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvL3JpZ2h0OiAyNSU7XG4gICAgICAgIC8vYm90dG9tOiAtMTgwcHg7XG4gICAgICAgIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgLy8gQGluY2x1ZGUgYm94LXNoYWRvdygpO1xuICAgICAgICBib3R0b206IC0xNzZweDtcbiAgICAgIH1cblxuICAgICAgLnNsaWRlLWMwIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgIHJpZ2h0OiB1bnNldDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICB9XG5cbiAgICAgIC5zd2lwZXItbmV4dCwgLnN3aXBlci1wcmV2IHtcbiAgICAgICAgYm90dG9tOiAtODBweDtcbiAgICAgIH1cblxuICAgICAgLmFjdGl2aXR5LXN3aXBlci1jYXJkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgaGVpZ2h0OiAkaDtcblxuICAgICAgICBpbWcge1xuXG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgLy9mbGV4LXNocmluazogMDtcblxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC04MCU7XG4gICAgICAgICAgbGVmdDogOTAlO1xuICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coKTtcblxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQgPiBkaXYge1xuICAgICAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOiAyKSB7XG5cbiAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc3dpcGVyLW5leHQge1xuXG4gICAgICAgIC8vcmlnaHQ6IDE2JTtcbiAgICAgICAgLy9ib3R0b206IC0xMiU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VjdGlvbi5hY3Rpdml0aWVzLWxpc3Qge1xuICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgICAgfVxuXG4gICAgICAuY29scy0yIHtcbiAgICAgICAgLy8gQGluY2x1ZGUgdHdvLWNvbHMoNDBweCk7XG4gICAgICB9XG5cbiAgICAgIC5hY3Rpdml0eS1saXN0LWNhcmQge1xuICAgICAgICAuaW1nLWMwIHtcbiAgICAgICAgICAvL0BpbmNsdWRlIGFzcGVjdCg2MCUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgIC8vIG1hcmdpbjogNDBweCAwIDEwcHg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgLy9AaW5jbHVkZSBlbGlwc2lzKDQpO1xuICAgICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cblxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKSB7XG5cblxuICAgIHNlY3Rpb24uYWN0aXZpdGllcy1tYXAge1xuXG5cbiAgICAgICRoOiAxODZweDtcblxuICAgICAgLmFjdGl2aXRpZXMtc3dpcGVyIHtcblxuXG4gICAgICAgIGhlaWdodDogJGg7XG5cbiAgICAgICAgYm90dG9tOiAtMTc2cHg7XG4gICAgICB9XG5cbiAgICAgIC5zbGlkZS1jMCB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgICByaWdodDogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgfVxuXG4gICAgICAuY29udGVudCB7XG4gICAgICAgIGJveC1zaGFkb3c6IHVuc2V0O1xuXG4gICAgICB9XG5cbiAgICAgIC5hY3Rpdml0eS1zd2lwZXItY2FyZCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGhlaWdodDogJGg7XG5cbiAgICAgICAgaW1nIHtcblxuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICB3aWR0aDogMzglO1xuICAgICAgICAgIC8vZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAtODAlO1xuICAgICAgICAgIGxlZnQ6IDc1JTtcbiAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCk7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50ID4gZGl2IHtcbiAgICAgICAgICBAc3VwcG9ydHMgKC13ZWJraXQtbGluZS1jbGFtcDogMikge1xuXG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN3aXBlci1uZXh0IHtcblxuICAgICAgICAvL3JpZ2h0OiAxNiU7XG4gICAgICAgIC8vYm90dG9tOiAtMTIlO1xuICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLmFjdGl2aXRpZXMtbGlzdCB7XG4gICAgICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gICAgfVxuXG5cbiAgfVxuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pIHtcblxuXG4gICAgc2VjdGlvbi5hY3Rpdml0aWVzLW1hcCB7XG5cbiAgICAgICRoOiAxODZweDtcblxuICAgICAgLmFjdGl2aXRpZXMtc3dpcGVyIHtcblxuXG4gICAgICAgIGhlaWdodDogJGg7XG5cbiAgICAgICAgYm90dG9tOiAtMTc2cHg7XG4gICAgICB9XG5cbiAgICAgIC5zbGlkZS1jMCB7XG5cbiAgICAgICAgd2lkdGg6IDUwMHB4O1xuXG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgfVxuXG4gICAgICAuc3dpcGVyLW5leHQsIC5zd2lwZXItcHJldiB7XG4gICAgICAgIGJvdHRvbTogLTgwcHg7XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc3dpcGVyLXByZXYge1xuICAgICAgICAvL2xlZnQ6IC0yNHB4O1xuICAgICAgfVxuXG4gICAgICAuc3dpcGVyLW5leHQge1xuICAgICAgICAvLyByaWdodDogLTI0cHg7XG4gICAgICB9XG5cblxuICAgICAgLy9mbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgLmNvbnRlbnQge1xuXG4gICAgICAgIC8vZmxleC1ncm93OiAxO1xuICAgICAgICAvL0BpbmNsdWRlIGJveC1zaGFkb3coKTtcbiAgICAgIH1cblxuICAgICAgLm55bWV0d29vZC1waW4ge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgfVxuXG4gICAgICAubWFwLXBvaW50IHtcbiAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgIH1cblxuXG4gICAgICBib3gtc2hhZG93OiB1bnNldDtcblxuICAgICAgLmFjdGl2aXRpZXMtc3dpcGVyIHtcbiAgICAgICAgLy8gYmFja2dyb3VuZDogYmxhY2s7XG4gICAgICAgIC8vIGJvdHRvbTogMDtcbiAgICAgICAgLy9sZWZ0OiAwO1xuICAgICAgICAvL3dpZHRoOiA2MCU7XG4gICAgICAgIC8vIGhlaWdodDo0MCU7XG4gICAgICAgIC8vbWF4LWhlaWdodDogMTQwcHg7XG4gICAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy9yaWdodDogMTAlO1xuICAgICAgICAvLyBib3R0b206IDEwcHg7XG4gICAgICAgIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgLy9vdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAvLyBAaW5jbHVkZSBib3gtc2hhZG93KCk7XG4gICAgICB9XG5cbiAgICAgIC5hY3Rpdml0eS1zd2lwZXItY2FyZCB7XG5cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogNzAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTUwcHg7XG4gICAgICAgICAgdG9wOiAtNjYlO1xuICAgICAgICB9XG5cbiAgICAgICAgLyouY29udGVudHtcblxuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweCAxNXB4IDE1cHg7XG4gICAgICAgICAgaDV7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIHB7XG4gICAgICAgICAgICBtYXJnaW46IDZweCAwIDAgMCA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnRoZW1lZC1saW5re1xuICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgc3BhbntcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW1ne1xuXG4gICAgICAgICAgaGVpZ2h0OiA5MCU7XG4gICAgICAgICAgd2lkdGg6IDM1JTtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IC04MCU7XG4gICAgICAgICAgcmlnaHQ6IC0xMCU7XG4gICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygpO1xuXG4gICAgICAgIH0qL1xuXG4gICAgICAgIC8qLmNvbnRlbnQgPiBkaXZ7XG4gICAgICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWxpbmUtY2xhbXA6IDIpIHtcblxuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuXG4gICAgICAgICAgfVxuICAgICAgICB9Ki9cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAvL3dpZHRoOiAyMCU7XG4gICAgICAgIH1cbiAgICAgIDtcbiAgICAgIH1cblxuICAgICAgLnN3aXBlci1uZXh0IHtcblxuICAgICAgICAvL3JpZ2h0OiAxJTtcbiAgICAgICAgLy8gYm90dG9tOiAtMTUlO1xuICAgICAgfVxuICAgIH1cbiAgICBzZWN0aW9uLmFjdGl2aXRpZXMtbGlzdCB7XG5cbiAgICAgIC5hY3Rpdml0eS1saXN0LWNhcmQge1xuICAgICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG5cbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmltZy1jMCB7XG4gICAgICAgICAgLy9AaW5jbHVkZSBhc3BlY3QoNjAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAvLyBtYXJnaW46IDQwcHggMCAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgZWxpcHNpcyg0KTtcbiAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhzKSB7XG5cblxuICAgIHNlY3Rpb24uYWN0aXZpdGllcy1tYXAge1xuXG4gICAgICAkaDogMTYwcHg7XG5cbiAgICAgIC5hY3Rpdml0aWVzLXN3aXBlciB7XG5cblxuICAgICAgICBoZWlnaHQ6ICRoO1xuXG4gICAgICAgIGJvdHRvbTogLTE0NnB4O1xuICAgICAgfVxuXG4gICAgICAuc2xpZGUtYzAge1xuXG4gICAgICAgIHdpZHRoOiA5NiU7XG5cbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgIH1cblxuXG4gICAgICAvL2ZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAuY29udGVudCB7XG5cbiAgICAgICAgLy9mbGV4LWdyb3c6IDE7XG4gICAgICAgIC8vQGluY2x1ZGUgYm94LXNoYWRvdygpO1xuICAgICAgfVxuXG4gICAgICAubnltZXR3b29kLXBpbiB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIC5tYXAtcG9pbnQge1xuICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgfVxuXG5cbiAgICAgIGJveC1zaGFkb3c6IHVuc2V0O1xuXG4gICAgICAuYWN0aXZpdGllcy1zd2lwZXIge1xuICAgICAgICAvLyBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgICAgLy8gYm90dG9tOiAwO1xuICAgICAgICAvL2xlZnQ6IDA7XG4gICAgICAgIC8vd2lkdGg6IDYwJTtcbiAgICAgICAgLy8gaGVpZ2h0OjQwJTtcbiAgICAgICAgLy9tYXgtaGVpZ2h0OiAxNDBweDtcbiAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvL3JpZ2h0OiAxMCU7XG4gICAgICAgIC8vIGJvdHRvbTogMTBweDtcbiAgICAgICAgLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIC8vIEBpbmNsdWRlIGJveC1zaGFkb3coKTtcbiAgICAgIH1cblxuICAgICAgLnN3aXBlci1uZXh0LCAuc3dpcGVyLXByZXYge1xuICAgICAgICBib3R0b206IC04MHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgIH1cblxuICAgICAgLnN3aXBlci1uZXh0IHtcblxuICAgICAgICByaWdodDogLTE1cHg7XG4gICAgICB9XG5cbiAgICAgIC5zd2lwZXItcHJldiB7XG4gICAgICAgIC8vYm90dG9tOiAtODBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgIGxlZnQ6IC0xNXB4O1xuXG5cbiAgICAgIH1cblxuXG4gICAgICAuYWN0aXZpdHktc3dpcGVyLWNhcmQge1xuXG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYm94LXNoYWRvdzogdW5zZXQ7XG5cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogNzAlO1xuICAgICAgICAgIHRvcDogLTYyJTtcbiAgICAgICAgICB3aWR0aDogMjglO1xuICAgICAgICAgIHJpZ2h0OiAyMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGhlbWVkLWxpbmsge1xuICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qLmNvbnRlbnR7XG5cbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTVweCAxNXB4O1xuICAgICAgICAgIGg1e1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOiA2cHggMCAwIDAgO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC50aGVtZWQtbGlua3tcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGltZ3tcblxuICAgICAgICAgIGhlaWdodDogOTAlO1xuICAgICAgICAgIHdpZHRoOiAzNSU7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAtODAlO1xuICAgICAgICAgIHJpZ2h0OiAtMTAlO1xuICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coKTtcblxuICAgICAgICB9Ki9cblxuICAgICAgICAvKi5jb250ZW50ID4gZGl2e1xuICAgICAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1saW5lLWNsYW1wOiAyKSB7XG5cbiAgICAgICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcblxuICAgICAgICAgIH1cbiAgICAgICAgfSovXG4gICAgICB9XG5cblxuICAgIH1cbiAgICBzZWN0aW9uLmFjdGl2aXRpZXMtbGlzdCB7XG5cbiAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuXG5cbiAgICAgIC5hY3Rpdml0eS1saXN0LWNhcmQge1xuICAgICAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG5cbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmltZy1jMCB7XG4gICAgICAgICAgLy9AaW5jbHVkZSBhc3BlY3QoNjAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAvLyBtYXJnaW46IDQwcHggMCAxMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgZWxpcHNpcyg0KTtcbiAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUobGcpIHtcbiAgICBzZWN0aW9uLmFjdGl2aXRpZXMtbWFwIHtcblxuXG5cbiAgICAgICAgLnN3aXBlci1wcmV2e1xuICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgIHJpZ2h0OiAzMjZweDtcbiAgICAgICAgfVxuXG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUoeHhsKSB7XG4gICAgc2VjdGlvbi5hY3Rpdml0aWVzLW1hcCB7XG5cblxuXG4gICAgICAgIC5zd2lwZXItcHJldntcbiAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICByaWdodDogNDI2cHg7XG4gICAgICAgIH1cblxuICAgIH1cbiAgfVxufSIsImJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLXRyZWVob3VzZXN7XG5cblxuICBzZWN0aW9uLnByb3BlcnRpZXN7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG5cbiAgfVxuICBzZWN0aW9uLmFtZW5pdGllc3tcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICB9XG59IiwiYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2Utc2luZ2xlLXByb3BlcnR5e1xuXG4gIHNlY3Rpb24uZGVzY3JpcHRpb257XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cblxuICBzZWN0aW9uLm1vcmUtaW5mb3tcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAuYWNjb3JkLWhlYWR7XG4gICAgICA+IGRpdntcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgID5kaXZ7XG5cbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAuc3ZnLWMwe1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6NTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAvL3dpZHRoOiAyMHB4O1xuICAgICAgICAgIHJpZ2h0Oi00MHB4O1xuICAgICAgICAgIHN2Z3tcblxuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5hY2NvcmQtY29udGVudHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIHNlY3Rpb24ucHJvcGVydGllc3tcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiA2MHB4IDA7XG4gICAgLy9wYWRkaW5nLXRvcDogJHYtcGFkZGluZy1tO1xuICAgIC8vcGFkZGluZy1ib3R0b206ICR2LXBhZGRpbmctbTtcbiAgfVxuXG4gIHNlY3Rpb24ubW9yZS1pbmZve1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgc2VjdGlvbi50cmVlaG91c2VzLWF2YWlsYWJpbGl0eXtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG5cbiAgICBzZWN0aW9uLnByb3BlcnRpZXN7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIH1cblxuXG4gIH1cbn0iLCJib2R5LnBvc3QtdGVtcGxhdGUtZGVmYXVsdCwgYm9keS5hY3Rpdml0eS10ZW1wbGF0ZS1kZWZhdWx0e1xuXG4gIC5iYWNre1xuXG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYXtcblxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIHN2Z3tcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cbiAgICBwe1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cblxuICAuZXh0cmEtYzB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBhe1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgLy93aWR0aDogMjUwcHg7XG4gICAgfVxuICAgIHNwYW57XG5cbiAgICAgIHdpZHRoOiAyNTBweDtcbiAgICB9XG4gIH1cblxuICBzZWN0aW9uLmRlc2NyaXB0aW9ue1xuICAgIC8vIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgIGZpZ3VyZS53cC1ibG9jay1pbWFnZXtcbiAgICAgIG1hcmdpbjogNDBweCAwO1xuICAgICAgaW1ne1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkLXN1Yi1jMHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tb3JlLWluZm97XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDQwcHggMCAwIDAgO1xuICAgIH1cbiAgfVxuXG4gIHNlY3Rpb24uZ2FsbGVyeXtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICB9XG4gIHNlY3Rpb24ubW9yZS1pdGVtc3tcbiAgICAuZi1ub3RvLTIye1xuICAgICAgbWFyZ2luOiAwcHggMCAzMHB4O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coc20pe1xuXG4gICAgc2VjdGlvbi5wcm9wZXJ0aWVze1xuICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICB9XG5cbiAgICBzZWN0aW9uLmdhbGxlcnl7XG4gICAgICAuYmFndWV0dGUtZ2FsbGVyeXtcbiAgICAgICAgPmRpdntcbiAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCl7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHNlY3Rpb24ubW9yZS1pdGVtc3tcbiAgICAgIC5mLW5vdG8tMjJ7XG4gICAgICAgIG1hcmdpbjogMHB4IDAgNTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcblxuICAgIC5leHRyYS1jMHtcblxuICAgICAgc3BhbntcblxuICAgICAgICB3aWR0aDogMTkwcHg7XG4gICAgICB9XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuXG4gIH1cbn0iLCJib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0e1xuICBzZWN0aW9uLmNvbnRhY3QtZGV0YWlsc3tcblxuICAgIG1hcmdpbjogNjBweCAwO1xuICAgIC5lbWFpbC1waG9uZXtcbiAgICAgIHB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmFkZHJlc3N7XG4gICAgICBtYXJnaW46IDIwcHggMDtcbiAgICAgIHB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmluZC1oZWFkZXJ7XG4gICAgICBtYXJnaW46IDYwcHggMCA0MHB4IDtcbiAgICB9XG4gICAgLmNje1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIH1cblxuXG4gICAgLm1hcC1jMCB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDg3LjY1JTtcblxuICAgICAgPiBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvKiBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICBvcGFjaXR5OiAwLjU7Ki9cbiAgICAgICAgLy8gaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cblxuICAgIH1cblxuICAgIC5ueW1ldHdvb2QtcGluIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTEwMCUpO1xuXG4gICAgICBzdmcge1xuICAgICAgICBmaWxsOiAkcHJpbWFyeS1jb2xvci0xMDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRpcmVjdGlvbnN7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIC5maW5kLWhlYWRlcntcbiAgICAgIG1hcmdpbjogNDBweCAwIDMwcHg7XG4gICAgfVxuICAgIC5tYXAtYzB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn0iLCJib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1hYm91dHtcblxuXG4gIC5jb250ZW50e1xuICAgIGgze1xuICAgICAgQGluY2x1ZGUgZm9udC1ub3RvLTI4cHgoKTtcbiAgICB9XG4gICAgaDV7XG4gICAgICBAaW5jbHVkZSBmb250LW1vbnQtMThweCgpO1xuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICAgIGgze1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBoNXtcbiAgICAgIG1hcmdpbjogNXB4IDAgNDBweCAwO1xuICAgIH1cbiAgfVxufSIsImJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWJsb2d7XG5cblxuICAuYmxvZy1wb3N0c3tcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG4gIEBpbmNsdWRlIHJlc3BvbmQtYWJvdmUoc20pe1xuXG4gICAgLmNvbHMtMi1nYXAtbHtcbiAgICAgID4gKjpudGgtY2hpbGQoMSksID4gKjpudGgtY2hpbGQoMil7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbn0iLCIucHJvcGVydHktY2FyZC1jMHtcblxuXG4gIC5pbWctYzB7XG4gICAgQGluY2x1ZGUgYXNwZWN0KDUyLjMlKTtcbiAgICBpbWd7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzcyBjdWJpYy1iZXppZXIoMC4xNTAsIDAuMDA1LCAwLjAwMCwgMC45MTUpO1xuICAgIH1cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIC5hYm91dC1jMHtcbiAgICBiYWNrZ3JvdW5kOiAkYmctZGFyay0xMDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICAudG9wLCAuYm90dG9te1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIHAsIGg2e1xuXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cbiAgICAgID4gKiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJvdHRvbXtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBidXR0b257XG4gICAgICAgIHNwYW57XG5cbiAgICAgICAgICBtYXgtd2lkdGg6IDE4MHB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTlweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxOXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcbiAgICAvKi5ib3R0b217XG4gICAgICBwLCBoNntcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH0qL1xuICB9XG5cbiAgJjpob3ZlcntcbiAgICAuaW1nLWMwe1xuICAgICAgaW1ne1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDYpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeGwpe1xuXG4gICAgLmFib3V0LWMwe1xuICAgICAgLmJvdHRvbXtcbiAgICAgICAgLy9mbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGg2e1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG4gICAgLmltZy1jMHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMTAlO1xuXG4gICAgfVxuICAgIC5hYm91dC1jMHtcbiAgICAgIC50b3B7XG4gICAgICAgIGg2e1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJvdHRvbXtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgaDZ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn0iLCJzZWN0aW9uLmFtZW5pdGllcyB7XG5cbiAgYmFja2dyb3VuZDogJGJnLTIwMDtcblxuXG4gIC5hbWVuaXRpZXMtYzAge1xuXG5cbiAgICA+IHAge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuXG4gICAgLmEtbWFpbi1jMCB7XG5cbiAgICAgIC5hLWMwIHtcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDI2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmV4dHJhLWMwIHtcbiAgICAgIC8vIG1heC13aWR0aDogNDAwcHg7XG4gICAgICAvLyAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAuYWNjb3JkLWhlYWQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiA0OHB4O1xuXG4gICAgICAgIC5zdmctYzAge1xuXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTMwcHgpO1xuICAgICAgICAgIHRvcDogNDclO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5hY2NvcmQtY29udGVudCB7XG4gICAgICAgIC8vIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgfVxuXG4gICAgICAvKi5hLW1haW4tYzB7XG4gICAgICAgIC5hLWMwe1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICBzdmd7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMThweDtcblxuICAgICAgICAgIH1cbiAgICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSovXG4gICAgICAuZXh0cmEtYzEge1xuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHNtKSB7XG4gICAgICAuZXh0cmEtYzAge1xuICAgICAgICAuYS1tYWluLWMwIHtcbiAgICAgICAgICAuYS1jMCB7XG5cbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC8vIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICAgICAvKnN2Z3tcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiAyMCU7XG4gICAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICAgICAgfSovXG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJzZWN0aW9uLm5ld3NsZXR0ZXJ7XG5cbiAgbWFyZ2luOiA2MHB4IDAgNzVweCAwO1xuICAubmV3c2xldHRlci1jMHtcblxuICAgIHA6Zmlyc3QtY2hpbGR7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICAud2h5e1xuICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgfVxuICAuZWRpdC1saW5re1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBmb3JtI21haWxpbmctbGlzdC0xe1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgLy8gYmFja2dyb3VuZDogcmVkO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBsYWJlbHtcbiAgICAgICY6bnRoLW9mLXR5cGUoMSl7XG4gICAgICAgIHdpZHRoOiAyOCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMil7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIG1hcmdpbjogMCAxMDBweCAwIDIwcHg7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIH1cblxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsYWNrO1xuXG5cbiAgICAgIGlucHV0e1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDU4cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgZm9udC1tb250LTE2cHgtdGhpbigpO1xuICAgICAgICAmOjpwbGFjZWhvbGRlcntcbiAgICAgICAgICBAaW5jbHVkZSBmb250LW1vbnQtMTZweCgpO1xuICAgICAgICAgIGNvbG9yOiAkZm9udC1wcmltYXJ5LTEwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBidXR0b257XG4gICAgICB3aWR0aDogMjAzcHg7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuXG5cblxuICAgIH1cbiAgICBAaW5jbHVkZSByZXNwb25kLWJlbG93KG1kKXtcblxuICAgICAgbGFiZWx7XG4gICAgICAgIGlucHV0e1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgIGJ1dHRvbntcblxuICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgd2lkdGg6IDExMHB4O1xuXG4gICAgICAgPiBzcGFue1xuXG4gICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgIH1cbiAgICAgICAvLyBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgZm9ybSNtYWlsaW5nLWxpc3QtMXtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBsYWJlbHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMSl7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDBweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMil7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDBweCAzMHB4O1xuXG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG4iLCJzZWN0aW9uLmltYWdlLWJhbm5lcntcbiAgaGVpZ2h0OiA0NjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaW1ne1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuICAmLnRhbGx7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDkwMHB4O1xuICB9XG59IiwiLmFjdGl2aXR5LXN3aXBlci1jYXJke1xuICBoNXtcbiAgICBtYXJnaW46IDI1cHggMDtcbiAgICBmb250LXNpemU6IDE4cHggIWltcG9ydGFudDtcbiAgfVxuICAuY29udGVudHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHhcbiAgfVxuXG4gIC50aGVtZWQtbGlua3tcbiAgICBzcGFuLCBwe1xuXG4gICAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICB9XG5cblxuICAgID5zcGFuLCA+IHB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgIH1cbiAgfVxufSIsIi5ibG9nLXBvc3QtY2FyZCB7XG47XG4gIC5pbWctYzAge1xuICAgIEBpbmNsdWRlIGFzcGVjdCg2NiUpO1xuICB9XG5cbiAvKiAuaW1nLWMwe1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgaW1nIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gM3MgY3ViaWMtYmV6aWVyKDAuMTUwLCAwLjAwNSwgMC4wMDAsIDAuOTE1KTtcbiAgfVxuXG4gICY6aG92ZXIge1xuXG4gICAgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNik7XG5cbiAgICB9XG4gIH0qL1xuXG4gIC5vYmotaGVhZGluZyB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gIH1cblxuICAuZXhjZXJwdCB7XG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSBlbGlwc2lzKDMpO1xuICAgIH1cbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMTlweDtcbiAgfVxufSIsInNlY3Rpb24uY2Fyb3VzZWwtYmFubmVye1xuXG4gIHdpZHRoOiAxMDAlO1xuXG4gIGhlaWdodDogNjB2aDtcbiAgbWF4LWhlaWdodDogNzYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi5mdWxsc2NyZWVue1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWF4LWhlaWdodDogdW5zZXQ7XG4gIH1cbiAgJi50YWxse1xuICAgIGhlaWdodDogODB2aDtcbiAgICBtaW4taGVpZ2h0OiA2MDBweDtcbiAgICBtYXgtaGVpZ2h0OiA5MDBweDtcbiAgfVxuXG4gIC5pbWctc3dpcGVye1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgaW1ne1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuXG5cbiAgLmJ1dHRvbnN7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB6LWluZGV4OiAxMDE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIGJ1dHRvbntcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgc3Zne1xuICAgICAgc3Ryb2tlOiB3aGl0ZTtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgIH1cbiAgICAmLnN3aXBlci1uZXh0e1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB9XG4gICAgJi5zd2lwZXItcHJldntcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4iLCJzZWN0aW9uLmdhbGxlcnl7XG5cbiAgbWFyZ2luOiAzMHB4IDA7XG5cbiAgLmJhZ3VldHRlLWdhbGxlcnl7XG4gICAgLy9AaW5jbHVkZSB0d28tY29scygzMHB4KTtcbiAgICBhe1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDY3JTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAuaW1nLWMwe1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy9oZWlnaHQ6IDEwMCU7XG4gICAgICAgIC8vcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvL3RvcDogMDtcblxuICAgICAgfVxuICAgICAgaW1ne1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG4gICAgbWFyZ2luOiA1MHB4IDA7XG4gICAgLmJhZ3VldHRlLWdhbGxlcnl7XG4gICAgICA+ZGl2e1xuICAgICAgICAmOm50aC1jaGlsZChuKzIpe1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiXG5cbnNlY3Rpb24uaW5zdGEtZmVlZHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNiX2luc3RhZ3JhbV9oZWFkZXJ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zYmlfZm9sbG93X2J0bntcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5cbiNzYmlfaW1hZ2Vze1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gID5kaXZ7XG4gICAgd2lkdGg6IDMzLjMzMyVcbiAgfVxuXG4gIHN2Zy5zdmctaW5saW5lLS1mYXtcbiAgICBmaWxsOiB3aGl0ZTtcbiAgICBzdHJva2U6IHdoaXRlO1xuICB9XG59XG4uaW5zdGEtYzB7XG4gIC8vbWFyZ2luLXRvcDogNzBweDtcbiAgLy9wYWRkaW5nLXRvcDogNzBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICNzYmlfaW1hZ2Vze1xuICAgID5kaXZ7XG4gICAgICB3aWR0aDogMzMuMzMzJTtcbiAgICAgICY6bnRoLWNoaWxkKG4rNCl7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiRwYWRkaW5nLWw6MjBweDtcbiRwYWRkaW5nLXNtYWxsOiAxMHB4O1xuI3NiX2luc3RhZ3JhbS5zYmlfY29sXzQgI3NiaV9pbWFnZXMgLnNiaV9pdGVtIHtcbiAgd2lkdGg6IDMzJTtcbiAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgIHdpZHRoOiA1MCU7XG4gICAgLy8gcGFkZGluZzogJHBhZGRpbmctc21hbGwgIWltcG9ydGFudDtcbiAgfVxuICBAaW5jbHVkZSByZXNwb25kLWJlbG93KHhzKXtcbiAgICAvL3dpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwgIWltcG9ydGFudDtcbiAgfVxuXG59XG4jc2JfaW5zdGFncmFtLnNiaV93aWR0aF9yZXNwIHtcblxuICAvL0BpbmNsdWRlIHJlc3BvbmQtYmVsb3cobWQpe1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHBhZGRpbmctbCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArICN7ICRwYWRkaW5nLWwgKiAyfSkgIWltcG9ydGFudDtcbiAgLy99XG4gIC8qQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kY29udGFpbmVyLWJlbG93LXNtLW1hcmdpbiAtICRwYWRkaW5nLWwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRjb250YWluZXItYmVsb3ctc20tbWFyZ2luICogMiArICRwYWRkaW5nLWwgKiAyfSkgIWltcG9ydGFudDtcbiAgfSovXG4gIEBpbmNsdWRlIHJlc3BvbmQtYmVsb3coeHMpe1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHBhZGRpbmctc21hbGwpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRwYWRkaW5nLXNtYWxsICogMn0pICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4uc2JpX2xvYWRfYnRue1xuICBib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgPiBzcGFuOm50aC1vZi10eXBlKDEpe1xuICAgIC8vY29sb3I6IHdoaXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAvL2xpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgY29sb3I6IHdoaXRlO1xuXG4gIH1cbn0iLCJcbkBpbXBvcnQgXCIuLi90eXBvZ3JhcGh5LnNjc3NcIjtcbkBpbXBvcnQgXCIuLi9saWIvbWVkaWEtcXVlcmllcy5zY3NzXCI7XG5AaW1wb3J0IFwiLi4vbGliL3ZhcmlhYmxlc1wiO1xuXG4vLyRiZzogJGJnLTIwMDtcbiRiZzogI0ZGRkZGRjtcblxuLnRyZWVob3VzZXMtYXZhaWxhYmlsaXR5IHtcbiAgbWFyZ2luLXRvcDogNzBweDtcbiAgYmFja2dyb3VuZDogJGJnO1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogNzBweDtcblxuICAubmFtZXtcbiAgICBmb250LXdlaWdodDogNTAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgPiBkaXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAaW5jbHVkZSByZXNwb25kLWFib3ZlKGxnKXtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgPmRpdjpudGgtY2hpbGQoMSl7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gICAgICAgIH1cbiAgICAgICAgPmRpdjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhtZCl7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgcmVzcG9uZC1iZWxvdyhzbSl7XG5cbiAgICAgICAgPmRpdjpudGgtY2hpbGQoMil7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5jYWxlbmRhcldpZGdldCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG5cbiAgLm11bHRpQ2FsZW5kYXJXaWRnZXQge1xuXG4gICAgaDJ7XG5cbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgQGluY2x1ZGUgZm9udC1ub3RvLTE4cHgtaW1wb3J0YW50KCk7XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZDogJGJnICFpbXBvcnRhbnQ7XG4gICAgLmZ1bGxDYWxlbmRhcjpudGgtY2hpbGQoMSkge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZnVsbENhbGVuZGFyOm50aC1jaGlsZCgyKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLm11bHRpQ2FsZW5kYXJXaWRnZXQgLmJ0bi1uZXh0IHtcbiAgICAvKiByaWdodDogMjZweCAhaW1wb3J0YW50OyAqL1xuICAgIHJpZ2h0OiAwO1xuXG5cbiAgfVxuXG4gIC5tdWx0aUNhbGVuZGFyV2lkZ2V0IC5idG4tbmV4dC5maXJzdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5sb2dvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm11bHRpQ2FsZW5kYXJXaWRnZXQgLnNpbmdsZUNhbGVuZGFyV2lkZ2V0IHRhYmxlIHRkLmRlcGFydHVyZSwgLm11bHRpQ2FsZW5kYXJXaWRnZXQgLnNpbmdsZUNhbGVuZGFyV2lkZ2V0IGgyIHRhYmxlIHRkLmRlcGFydHVyZSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0IGJvdHRvbSwgI2ZmYmZiZiA1MCUsICRiZyA1MCUpICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubXVsdGlDYWxlbmRhcldpZGdldCAuc2luZ2xlQ2FsZW5kYXJXaWRnZXQgdGFibGUgdGQuYXJyaXZhbCwgLm11bHRpQ2FsZW5kYXJXaWRnZXQgLnNpbmdsZUNhbGVuZGFyV2lkZ2V0IGgyIHRhYmxlIHRkLmFycml2YWwge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCBib3R0b20sICRiZyA1MCUsICNmZmJmYmYgNTAlKSAhaW1wb3J0YW50O1xuICB9XG5cblxufVxuXG4iLCIvKlxuLmJvb2tpbmctc2VhcmNoLWNvbnRlbnR7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICA+ICo6bnRoLWNoaWxkKDEpLCAqOm50aC1jaGlsZCgyKXtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gKjpudGgtY2hpbGQoMyksICo6bnRoLWNoaWxkKDQpe1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICB9XG59Ki9cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUVBQTs7Ozs7Ozs7O0VBU0U7QURKRixBQUFBLFVBQVUsQ0FBQTtFQUNSLFNBQVMsRUNXVyxNQUFNO0VEVjFCLE1BQU0sRUFBRSxNQUFNO0VBQ2QsT0FBTyxFQUFFLENBQUMsR0EwQlg7RUUwQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNO0lGdkQ3QixBQUFBLFVBQVUsQ0FBQTtNQU9OLFNBQVMsRUFBRSxrQkFBK0MsR0FzQjdEO0VFMEJHLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTTtJRnZEN0IsQUFBQSxVQUFVLENBQUE7TUFXTixTQUFTLEVBQUUsa0JBQThDLEdBa0I1RDtFRTBCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU07SUZ2RDdCLEFBQUEsVUFBVSxDQUFBO01BZU4sU0FBUyxFQUFFLGlCQUE4QyxHQWM1RDtFRTBCRyxNQUFNLEVBQUUsU0FBUyxFQUFFLEtBQUs7SUZ2RDVCLEFBQUEsVUFBVSxDQUFBO01BbUJOLFNBQVMsRUFBRSxpQkFBOEMsR0FVNUQ7RUUwQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lGdkQ1QixBQUFBLFVBQVUsQ0FBQTtNQXNCTixPQUFPLEVBQUUsQ0FBQztNQUNWLFNBQVMsRUFBRSxpQkFBOEMsR0FNNUQ7RUUwQkcsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0lGdkQ1QixBQUFBLFVBQVUsQ0FBQTtNQTBCTixTQUFTLEVBQUUsaUJBQThDLEdBRzVEOztBQUNELEFBQUEsQ0FBQyxDQUFBO0VBQ0MsVUFBVSxFQUFFLFVBQVUsR0FDdkI7O0FHcENEOzs7Ozs7R0FNRztBQ0xILEFBQUEsVUFBVSxDQUFDO0VBQ1QsT0FBTyxFRFN3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 */
