/** Shopify CDN: Minification failed

Line 3407:0 Unexpected "}"
Line 3794:0 Unexpected "}"
Line 11177:0 Unexpected "}"
Line 12576:0 Unexpected "}"

**/
@charset "UTF-8";


/*! These are the additions from Belmir and are not part of standard CSS, please add and remove changes here !*/




/*!
  Impulse, by Archetype Themes
  http://archetypethemes.co
*/

:root{
  --colorAnnouncement:#092a31;
  --colorAnnouncementText:#ffffff;

  --colorBody:#ffffff;
  --colorBodyAlpha05:rgba(255, 255, 255, 0.05);
  --colorBodyDim:#f2f2f2;
  --colorBodyLightDim:#fafafa;
  --colorBodyMediumDim:#f5f5f5;


  --colorBorder:#ffffff;

  --colorBtnPrimary:#111111;
  --colorBtnPrimaryLight:#2b2b2b;
  --colorBtnPrimaryDim:#040404;
  --colorBtnPrimaryText:#ffffff;

  --colorCartDot:#ff4f33;

  --colorDrawers:#ffffff;
  --colorDrawersDim:#f2f2f2;
  --colorDrawerBorder:#e8e8e1;
  --colorDrawerText:#000000;
  --colorDrawerTextDark:#000000;
  --colorDrawerButton:#111111;
  --colorDrawerButtonText:#ffffff;

  --colorFooter:#ffffff;
  --colorFooterText:#000000;
  --colorFooterTextAlpha01:#000000;

  --colorGridOverlay:#000000;
  --colorGridOverlayOpacity:0.1;

  --colorHeaderTextAlpha01:rgba(0, 0, 0, 0.1);

  --colorHeroText:#ffffff;

  --colorSmallImageBg:#ffffff;
  --colorLargeImageBg:#0f0f0f;

  --colorImageOverlay:#000000;
  --colorImageOverlayOpacity:0.1;
  --colorImageOverlayTextShadow:0.2;

  --colorLink:#000000;

  --colorModalBg:#e6e6e6;

  --colorNav:#ffffff;
  --colorNavText:#000000;

  --colorPrice:#1c1d1d;

  --colorSaleTag:#1c1d1d;
  --colorSaleTagText:#ffffff;

  --colorTextBody:#000000;
  --colorTextBodyAlpha015:rgba(0, 0, 0, 0.15);
  --colorTextBodyAlpha005:rgba(0, 0, 0, 0.05);
  --colorTextBodyAlpha008:rgba(0, 0, 0, 0.08);
  --colorTextSavings:#C20000;

  --urlIcoSelect:url(//www.houseofdiamonds.com.au/cdn/shop/t/15/assets/ico-select.svg);
  --urlIcoSelectFooter:url(//www.houseofdiamonds.com.au/cdn/shop/t/15/assets/ico-select-footer.svg);
  --urlIcoSelectWhite:url(//www.houseofdiamonds.com.au/cdn/shop/t/15/assets/ico-select-white.svg);

  --grid-gutter:17px;
  --drawer-gutter:20px;

  --sizeChartMargin:25px 0;
  --sizeChartIconMargin:5px;

  --newsletterReminderPadding:40px;
  --color-body-text:#000000;
  --color-body:#ffffff;
  --color-bg:#ffffff;
}

@media only screen and (min-width:769px){
  :root{
    --grid-gutter:22px;
    --drawer-gutter:30px;
  }
}

@keyframes spin{
  0%{
    transform:rotate(0deg);
  }

  to{
    transform:rotate(360deg);
  }
}

@keyframes preloading{
  0%{ opacity:0; transform:scaleX(0);   transform-origin:0% 50%; }
  40%{ opacity:1; transform:scaleX(1);  transform-origin:0% 50%; }
  41%{ opacity:1; transform:scaleX(1);  transform-origin:100% 50%; }
  to{ opacity:1; transform:scaleX(0); transform-origin:100% 50%; }
}

@keyframes slideshowBars{
  0%{ transform:translateX(-100%); }
  to{ transform:translateX(0); }
}

@keyframes grid-product__loading{
  0%{ opacity:1; }
  60%{ opacity:0; }
  to{ opacity:1; }
}

@keyframes shine{
  to{
    left:-200%;
  }
}

@keyframes overlay-on{
  0%{ opacity:0; }
  to{ opacity:0.6; }
}

@keyframes overlay-off{
  0%{ opacity:0.6; }
  to{ opacity:0; }
}

@keyframes full-overlay-on{
  0%{ opacity:0; }
  to{ opacity:1; }
}

@keyframes full-overlay-off{
  0%{ opacity:1; }
  to{ opacity:0; }
}

@keyframes modal-open{
  0%{
    opacity:0;
    transform:translateY(30px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@keyframes modal-closing{
  0%{
    opacity:1;
    transform:scale(1);
  }
  to{
    opacity:0;
    transform:scale(0.9);
  }
}

@keyframes rise-up{
  0%{
    opacity:1;
    transform:translateY(120%);
  }
  to{
    opacity:1;
    transform:translateY(0%);
  }
}

@keyframes rise-up-out{
  0%{
    opacity:1;
    transform:translateY(0%);
  }
  to{
    opacity:1;
    transform:translateY(-120%);
  }
}

@keyframes fade-in{
  0%{
    opacity:0;
  }
  to{
    opacity:1;
  }
}

@keyframes fade-out{
  0%{
    opacity:1;
  }
  to{
    opacity:0;
  }
}

@keyframes zoom-fade{
  0%{
    opacity:0;
    transform:scale(1.3);
  }
  to{
    opacity:1;
    transform:scale(1);
  }
}

@keyframes placeholder-shimmer{
  0%{
    background-position:-150% 0;
  }
  to{
    background-position:150% 0;
  }
}


/* Create an overlay to hide footer */
iframe#JotFormIFrame-250617831878871 {
    position: relative;
}

iframe#JotFormIFrame-250617831878871::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 570px; /* Adjust height based on footer size */
    background-color: white; /* Adjust background color to match your page */
    z-index: 9999;
    pointer-events: none;
}


/* Hide header, toolbar & announcement bar ONLY on the Design Consultation page */
.design-consultation-page .header-sticky-wrapper,
.design-consultation-page .toolbar,
.design-consultation-page .announcement-bar {
    display: none !important;
}



/* kaviyo form stying */
.klaviyo-form,
.klaviyo-form input,
.klaviyo-form select,
.klaviyo-form textarea,
.klaviyo-form label,
.klaviyo-form button {
  font-family: 'Poppins', sans-serif !important;
  /* Force Poppins font across all Klaviyo form elements */
.klaviyo-form * {
  font-family: 'Poppins', sans-serif !important;
}

}







.flickity-enabled{
  position:relative;
}

.flickity-enabled:focus{ outline:none; }

.flickity-viewport{
  height:100%;
  overflow:hidden;
  position:relative;
  transition:height 0.35s;
}

.flickity-slider{
  height:100%;
  position:absolute;
  width:100%;
}

.flickity-enabled.is-draggable{
  -webkit-user-select:none;
             -moz-user-select:none;
          user-select:none;
}

.flickity-enabled.is-draggable .flickity-viewport{
  cursor:move;
  cursor:grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{
  cursor:grabbing;
}

.flickity-button{
  background:var(--colorBtnPrimary);
  border:none;
  border-radius:50%;
  color:var(--colorBtnPrimaryText);
  position:absolute;
}

.hero .flickity-button{
    background-color:var(--colorBody);
    box-shadow:0 5px 5px rgba(0,0,0,.1);
    color:var(--colorTextBody);
}

.flickity-button:hover{
  cursor:pointer;
  opacity:1;
}

.flickity-button:disabled{
  cursor:auto;
  display:none;
  pointer-events:none;
}

.flickity-prev-next-button{
  height:40px;
  top:50%;
  transform:translateY(-50%);
  width:40px;
}

@media only screen and (max-width:768px){

.flickity-prev-next-button{
    height:33px;
    width:33px;
}
  }

.flickity-prev-next-button:hover{
  transform:translateY(-50%) scale(1.12);
}

.flickity-prev-next-button:active{
  transform:translateY(-50%) scale(1);
  transition:transform 0.05s ease-out;
}

.flickity-previous{ left:10px; }

.flickity-next{ right:10px; }

.flickity-rtl .flickity-previous{
  left:auto;
  right:10px;
}

.flickity-rtl .flickity-next{
  left:10px;
  right:auto;
}

.flickity-button-icon{
  fill:currentColor;
  height:30%;
  left:35%;
  position:absolute;
  top:35%;
  width:30%;
}

.flickity-page-dots{
  bottom:-25px;
  color:currentColor;
  line-height:1;
  list-style:none;
  margin:0;
  padding:0;
  position:absolute;
  text-align:center;
  width:100%;
}

.hero .flickity-page-dots{
    bottom:20px;
    color:#fff;
}

.flickity-rtl .flickity-page-dots{ direction:rtl; }

.flickity-page-dots .dot{
  background-color:currentColor;
  border-radius:100%;
  cursor:pointer;
  display:inline-block;
  height:6px;
  margin:0 5px;
  opacity:0.4;
  vertical-align:middle;
  width:6px;
}

.flickity-page-dots .dot:hover{
    opacity:0.6;
  }

.flickity-page-dots .dot.is-selected{
  background-color:currentColor;
  height:9px;
  opacity:1;
  width:9px;
}

.flickity-enabled.is-fade .flickity-slider>*{
  pointer-events:none;
  z-index:0;
}

.flickity-enabled.is-fade .flickity-slider>.is-selected{
  pointer-events:auto;
  z-index:1;
}

.hero[data-arrows=true]{
  overflow:visible;
  z-index:5;
}

.hero[data-arrows=true] .flickity-prev-next-button{
    bottom:-20px;
    top:auto;
    transform:none;
  }

.hero[data-arrows=true] .flickity-prev-next-button:hover{
    transform:scale(1.12);
  }

.hero[data-arrows=true] .flickity-prev-next-button:active{
    transform:scale(1);
  }

.hero[data-arrows=true] .flickity-previous{
    left:auto;
    right:90px;
  }

.hero[data-arrows=true] .flickity-next{
    right:40px;
  }

.hero.flickity-rtl[data-arrows=true] .flickity-previous{
    left:90px;
    right:auto;
  }

.hero.flickity-rtl[data-arrows=true] .flickity-next{
    left:40px;
    right:auto;
  }

@media only screen and (max-width:768px){
    .hero[data-arrows=true] .flickity-prev-next-button{
      bottom:-16px;
    }
    .hero[data-arrows=true] .flickity-previous{
      right:60px;
    }
    .hero[data-arrows=true] .flickity-next{
      right:20px;
    }
    .hero.flickity-rtl[data-arrows=true] .flickity-previous{
      left:60px;
    }
    .hero.flickity-rtl[data-arrows=true] .flickity-next{
      left:20px;
    }
  }

.hero[data-bars=true] .flickity-page-dots{
    bottom:0;
    height:6px;
    line-height:6px;
    z-index:6;
  }

[data-bars=true] .flickity-page-dots .dot{
    background:none;
    border:0;
    border-radius:0;
    height:6px;
    opacity:1;
    overflow:hidden;
    position:relative;
    vertical-align:top;
    width:120px;
  }

@media only screen and (max-width:768px){

[data-bars=true] .flickity-page-dots .dot{
      width:45px;
  }
    }

[data-bars=true] .flickity-page-dots .dot:after,[data-bars=true] .flickity-page-dots .dot:before{
      background-color:currentColor;
      content:"";
      display:block;
      height:100%;
      left:0;
      position:absolute;
      width:100%;
    }

[data-bars=true] .flickity-page-dots .dot:before{
      opacity:0.4;
    }

[data-bars=true] .flickity-page-dots .dot:hover:before{
      opacity:0.6;
    }

[data-bars=true] .flickity-page-dots .dot:after{
      transform:translateX(-100%);
      transition:none;
    }

[data-bars=true] .flickity-page-dots .dot.is-selected:after{
      animation:slideshowBars 0s linear forwards;
    }

.noUi-target,.noUi-target *{
   -webkit-touch-callout:none;
   -webkit-tap-highlight-color:rgba(0, 0, 0, 0);
   box-sizing:border-box;
   touch-action:none;
   -webkit-user-select:none;
   -moz-user-select:none;
        user-select:none;
 }

.noUi-target{
   position:relative;
 }

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

.noUi-connects{
   overflow:hidden;
   z-index:0;
 }

.noUi-connect,.noUi-origin{
   position:absolute;
   right:0;
   top:0;
   transform-origin:0 0;
   transform-style:flat;
   will-change:transform;
   z-index:1;
 }

.noUi-connect{
   height:100%;
   width:100%;
 }

.noUi-origin{
   height:10%;
   width:10%;
 }

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

.noUi-vertical .noUi-origin{
   width:0;
 }

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

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

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

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

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

.noUi-horizontal{
   height:18px;
 }

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

.noUi-vertical{
   width:18px;
 }

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

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

.noUi-target{
   background:#fafafa;
   border:1px solid #d3d3d3;
   border-radius:4px;
   box-shadow:inset 0 1px 1px #f0f0f0,0 3px 6px -5px #bbb;
 }

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

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

.noUi-draggable{
   cursor:ew-resize;
 }

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

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

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

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

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

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

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

[disabled] .noUi-connect{
   background:#b8b8b8;
 }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.noUi-rtl .noUi-value-vertical{
   transform:translateY(50%);
 }

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

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

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

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

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

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

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

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

tool-tip{
  display:none;
}

tool-tip[data-tool-tip-open=true]{
  align-items:center;
  display:flex;
  height:100%;
  justify-content:center;
  left:0;
  position:fixed;
  top:0;
  width:100%;
  z-index:10001;
}

tool-tip[data-tool-tip-open=true]:before{
    animation:overlay-on 0.3s forwards;
    background-color:#e0e0e0;
    background-color:var(--colorModalBg);
    content:"";
    cursor:pointer;
    height:100%;
    left:0;
    position:fixed;
    top:0;
    width:100%;
  }

.tool-tip__inner{
  animation:modal-close 0.3s forwards;
  opacity:0;
}

tool-tip[data-tool-tip-open=true] .tool-tip__inner{
    animation:modal-open 0.3s forwards;
    background:var(--colorBody);
    box-shadow:0 10px 20px #00000017;
    display:block;
    max-width:720px;
    min-height:250px;
    min-width:250px;
    padding:30px;
    position:fixed;
}

@media only screen and (max-width:768px){

tool-tip[data-tool-tip-open=true] .tool-tip__inner{
      max-width:93%;
      width:100%;
}
    }

.tool-tip__content{
  max-height:80vh;
  overflow:auto;
}

@media only screen and (max-width:768px){

.tool-tip__content{
    font-size:0.85em;
}
  }

.tool-tip__close{
  position:absolute;
  right:0;
  top:0;
}

.tool-tip__close .icon{
  height:28px;
  width:28px;
}

.tool-tip-trigger{
  background:none;
  border:0;
  cursor:pointer;
}

.tool-tip-trigger .icon{
  height:28px;
  width:28px;
}

.tool-tip-trigger__title{
  display:inline-block;
}

.tool-tip-trigger__title:focus,.tool-tip-trigger__title:hover{
  -webkit-text-decoration:underline;
  text-decoration:underline;
  text-underline-offset:2px;
}

.tool-tip-trigger__content{
  display:none !important;
}

.size-chart__standalone{
  margin:var(--sizeChartMargin);
}

.size-chart__standalone svg{
    margin-left:var(--sizeChartIconMargin);
  }

.text-with-icons__blocks{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  margin-left:-30px;
  margin-right:-30px;
}

@media only screen and (max-width:768px){

.text-with-icons__blocks{
    flex-direction:column;
    margin:0;
}
  }

.has-1-per-row .text-with-icons__block{
  width:100%;
}

.has-2-per-row .text-with-icons__block{
  width:50%;
}

.has-3-per-row .text-with-icons__block{
  width:33.333%;
}

.has-4-per-row .text-with-icons__block{
  width:25%;
}

.has-5-per-row .text-with-icons__block{
  width:20%;
}

.text-with-icons__blocks .text-with-icons__block{
  display:flex;
  flex:none;
  flex-direction:column;
  padding:30px;
}

@media only screen and (max-width:768px){

.text-with-icons__blocks .text-with-icons__block{
    padding:0 0 60px;
    width:100%;
}
  }

.text-with-icons__block-icon{
  display:block;
  margin-bottom:10px;
}

.text-with-icons__block-icon .icon{
    height:70px;
    width:70px;
  }

@media only screen and (max-width:768px){

.text-with-icons__block-icon .icon{
      height:60px;
      width:60px;
  }
    }

.text-with-icons__button{
  display:flex;
  justify-content:center;
}

newsletter-reminder{
  bottom:20px;
  box-shadow:0 12px 25px rgba(0,0,0,.15);
  left:20px;
  max-width:240px;
  position:fixed;
  transition:opacity 0.3s ease-in-out;
  z-index:10;
}

@media only screen and (max-width:768px){

newsletter-reminder{
    max-width:calc(100% - 40px);
}
  }

newsletter-reminder[data-enabled=false]{
    opacity:0;
    pointer-events:none;
    visibility:hidden;
  }

newsletter-reminder[class*=color-scheme-]:not(.color-scheme-none){
    position:fixed;
  }

newsletter-reminder .color-scheme-none{
    background-color:var(--colorBtnPrimary);
    color:var(--colorBtnPrimaryText);
  }

.newsletter-reminder__message.h3{
  cursor:pointer;
  margin:0;
  padding:var(--newsletterReminderPadding);
}

.parallax-image{
  height:100%;
  overflow:hidden;
  transition:transform 0.05s linear;
}

.countdown-wrapper{
  position:relative;
}

.countdown__background-image-wrapper{
  height:100%;
  position:absolute;
  width:100%;
}

.countdown__background-image{
  height:100%;
  left:0;
  -o-object-fit:cover;
     object-fit:cover;
  position:absolute;
  top:0;
  width:100%;
}

.countdown__mobile-image-wrapper{
  height:100%;
  position:absolute;
  width:100%;
}

.countdown__mobile-image{
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
}

.countdown-layout--banner .countdown__content{
    padding:2rem;
  }

@media only screen and (min-width:769px){

.countdown-layout--banner .countdown__content{
      display:flex;
      flex-direction:row;
      flex-wrap:nowrap;
      gap:1rem;
      justify-content:space-around;
      padding:1.6rem 2rem;
  }
    }

.countdown-layout--banner.countdown-blocks--2.page-width .countdown__content{
      justify-content:space-around;
    }

.countdown-layout--banner.countdown-blocks--2 .countdown__content{
      justify-content:center;
    }

@media only screen and (min-width:769px){

.countdown-layout--banner .countdown__block{
      width:33%;
  }
    }

.countdown__content{
  align-items:center;
  display:flex;
  flex-direction:column;
  height:auto;
  justify-content:center;
  max-height:650px;
  padding:5rem 2rem;
  text-align:center;
  width:100%;
}

.page-width .countdown__content{
    position:relative;
}

@media only screen and (min-width:769px){

.countdown-layout--hero .countdown__content{
      height:100vh;
}
    }

.countdown__block{
  margin:1rem auto;
  width:100%;
  z-index:3;
}

.countdown__block--content{
  align-items:center;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.countdown__block--content .countdown__block--button{
    margin:0;
    width:100%;
  }

@media only screen and (min-width:769px){

.countdown-blocks--2.countdown-layout--banner .countdown__block--content,.countdown-blocks--2.countdown-layout--banner .countdown__block--timer{
      width:50%;
}
    }

@media only screen and (min-width:769px){

.countdown-blocks--2.countdown-layout--banner .countdown__block--button.button-block-active{
      width:50%;
}
    }

.countdown__text-wrapper{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

@media only screen and (min-width:769px){

.countdown-layout--hero .countdown__text-wrapper{
      width:50%;
}
    }

.countdown__text-wrapper--content-alignment-left{
  text-align:left;
}

.countdown__text-wrapper--content-alignment-right{
  text-align:right;
}

.countdown__display{
  display:flex;
  justify-content:center;
}

.countdown__display--visible+.countdown__timer-message--visible{
  margin-top:1.5rem;
}

.countdown__display--hidden{
  height:0;
  margin:0;
  opacity:0;
  transition:opacity 3s ease-out;
  visibility:hidden;
  width:0;
}

.countdown__display-block{
  align-content:center;
  border-right:1px solid;
  display:flex;
  flex-direction:column;
  flex-wrap:wrap;
  padding:0 1rem;
}

.countdown__display-block h2{
    margin-bottom:16px;
  }

@media only screen and (min-width:769px){

.countdown__display-block h2{
      margin-bottom:4px;
  }
    }

.countdown__display-block span{
    font-size:0.6rem;
    letter-spacing:1.7px;
  }

@media only screen and (min-width:769px){

.countdown__display-block span{
      font-size:0.75rem;
  }
    }

.countdown__display-block:last-child{
    border-right:none;
  }

.countdown__timer-message{
  height:0;
  margin:0;
  opacity:0;
  visibility:hidden;
}

.countdown__timer-message--visible{
  height:auto;
  opacity:1;
  transition:opacity 1s ease-in;
  visibility:visible;
}

.countdown__block--hidden{
  width:0 !important;
}

.countdown__block--hidden{
  margin:0;
  opacity:0;
  transition:opacity 1s ease-out;
  visibility:hidden;
}

.countdown__overlay:after{
    background-color:var(--countdown-overlay-rgba);
    bottom:0;
    content:"";
    height:100%;
    left:0;
    position:absolute;
    right:0;
    top:0;
    width:100%;
    z-index:2;
  }

@media only screen and (max-width:768px){

.hotspots-section .index-section{
    margin-bottom:10px;
}
  }

.hotspots-section .hotspots-wrapper{
  display:flex;
  flex-wrap:wrap;
}

.hotspots-section .hotspots-wrapper.is-reverse{
    flex-direction:row-reverse;
  }

.hotspots__title{
  padding-top:1.5rem;
  width:100%;
}

.hotspots{
  position:relative;
  width:70%;
}

@media only screen and (max-width:768px){

.hotspots{
    width:100%;
}
  }

.hotspots .grid__image-ratio img{
    height:100%;
    left:0;
    -o-object-fit:cover;
       object-fit:cover;
    opacity:1;
    position:absolute;
    top:0;
    width:100%;
  }

[data-animate_images=true] .hotspots .grid__image-ratio img{
      opacity:1;
  }

.hotspots__buttons{
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
}

.hotspot__button{
  border-radius:50%;
  line-height:0;
  padding:10px;
  position:absolute;
  transform:translate(-50%, -50%);
}

@media only screen and (max-width:768px){

.hotspot__button{
    padding:6px;
}
  }

.hotspot__button:hover .hotspot__button-content{
    opacity:1;
    pointer-events:auto;
    visibility:visible;
  }

.hotspot__button-content{
  background-color:var(--colorBody);
  border-radius:5px;
  box-shadow:3px 3px 10px 3px rgba(0,0,0,.2);
  color:var(--colorTextBody);
  left:50%;
  min-width:5rem;
  opacity:0;
  padding:1rem;
  pointer-events:none;
  position:absolute;
  top:calc(100% + 1rem);
  transform:translateX(-50%);
  transition:opacity 0.3s ease-in-out;
  visibility:hidden;
}

.hotspot__button-content p,.hotspot__button-content span{
    margin-bottom:0;
    white-space:nowrap
  }

.hotspot__button-content:before{
    border-color:transparent transparent var(--colorBody) transparent;
    border-style:solid;
    border-width:0 5px 10px 5px;
    content:"";
    height:0;
    left:50%;
    position:absolute;
    top:-10px;
    transform:translateX(-50%);
    width:0;
  }

.hotspot__button-content .content__prices{
    display:flex;
    flex-wrap:nowrap;
  }

.hotspots__content{
  align-items:center;
  display:flex;
  padding:24px;
  width:30%;
}

.page-width .hotspots__content{
    padding-left:40px;
    padding-right:0;
}

@media only screen and (max-width:768px){

.page-width .hotspots__content{
      padding-left:0;
}
    }

.page-width.is-reverse .hotspots__content{
    padding-left:0;
    padding-right:40px;
}

@media only screen and (max-width:768px){

.page-width.is-reverse .hotspots__content{
      padding-right:20px;
}
    }

@media only screen and (max-width:768px){

.hotspots__content{
    padding:1rem 20px 0;
    width:100%;
}
  }

.hotspot-content__block{
  animation:fade-in .5s ease 0s forwards;
  display:none;
  max-height:0;
  position:sticky;
  top:0;
  width:100%;

}

.modal-closing .hotspot-content__block,.modal-open .hotspot-content__block{
    animation:none;
    position:static;

}

@media only screen and (max-width:768px){

.hotspot-content__block{
    align-items:center;
    padding-top:0;
    position:relative;

}
  }

.hotspot-content__block.is-active{
    display:block;
    max-height:none;
  }

.hotspot-content__block .grid-product__image-wrap{
    margin:0;
  }

.hotspot-content__block .grid__item{
    display:block;
    float:none;
    padding:0;
  }

.hotspot-content__block .grid-product__tags{
    margin-left:0;
  }

@media only screen and (max-width:768px){

.hotspot-content__block .grid-product__tag{
      left:0;
      right:auto;
  }
    }

.hotspot-content__block .grid-item__meta,.hotspot-content__block .grid-product__meta{
    padding-top:10px;
  }

@media only screen and (max-width:768px){

.hotspot-content__block .grid-item__meta,.hotspot-content__block .grid-product__meta{
      display:flex;
      flex-direction:column;
      flex-wrap:wrap;
      justify-content:center;
      padding-left:10px;
      padding-top:0;
      text-align:left;
  }

      .hotspot-content__block .grid-item__meta .grid-item__meta-main,.hotspot-content__block .grid-item__meta .grid-item__meta-secondary,.hotspot-content__block .grid-product__meta .grid-item__meta-main,.hotspot-content__block .grid-product__meta .grid-item__meta-secondary{
        flex:none;
        width:100%;
      }
    }

@media only screen and (max-width:768px){

    .hotspot-content__block .grid-product{
      padding-left:0;
      padding-right:0;
    }

    .hotspot-content__block .quick-add-btn{
      display:none;
    }

    .hotspot-content__block .grid-item__link,.hotspot-content__block .grid-product__link{
      display:flex;
      flex-wrap:nowrap;
    }
    [data-grid-style=grey-round] .hotspot-content__block .grid-item__link{
        border-radius:10px 0 0 10px;
    }
    [data-grid-style=white-round] .hotspot-content__block .grid-item__link{
        border-radius:10px 0 0 10px;
    }

    .hotspot-content__block .grid-product__image-mask,.hotspot-content__block .grid-product__image-wrap,.hotspot-content__block .product-slider{
      width:30%;
    }

    .hotspot-content__block .grid-product__actions{
      left:10px;
      right:auto;
      top:10px;
    }
  }

.hotspot-content__block .modal .grid__item{
  float:left;
}

image-compare{
  background:#222;
  display:block;
  overflow:hidden;
  position:relative;
  width:100%;
}

.comparison__draggable{
  height:100%;
  overflow:hidden;
  position:absolute;
  top:0;
  width:50%;
  z-index:2;
}

.comparison__image{
  animation:none;
  display:block;
  height:100%;
  max-width:none;
  -o-object-fit:cover;
     object-fit:cover;
  opacity:1;
  -webkit-user-select:none;
             -moz-user-select:none;
          user-select:none;
  width:100%;
}

.comparison__image-wrapper{
  height:100%;
  width:100%;
}

.comparison__button{
  align-items:center;
  border:0;
  border:3px solid #fff;
  border-radius:50%;
  cursor:pointer;
  display:flex;
  flex-wrap:nowrap;
  height:64px;
  justify-content:center;
  left:50%;
  padding:0;
  position:absolute;
  top:50%;
  transform:translate(-32px, -50%);
  width:64px;
  z-index:3;
}

.comparison--style-minimal .comparison__button{
    background:transparent;
    border:0;
    transform:translate(-56px, -50%);
    width:auto;
}

.comparison--style-minimal .comparison__button svg{
      margin:0 20px;
    }

@supports (-webkit-touch-callout:none){

.comparison--style-minimal .comparison__button svg{
        position:absolute;
    }

        .comparison--style-minimal .comparison__button svg.icon-chevron-left{
          left:2px;
          width:9px;
        }

        .comparison--style-minimal .comparison__button svg.icon-chevron-right{
          right:2px;
          width:9px;
        }
      }

@media only screen and (max-width:768px){

.comparison--style-classic .comparison__button{
      height:48px;
      transform:translate(-24px, -50%);
      width:48px;
}
    }

.comparison__button svg{
    height:auto;
    margin:0 5px;
    pointer-events:none;
    width:12px;
  }

.comparison__button:before{
    background-color:#fff !important;
  }

.comparison__button:before{
    content:"";
    position:absolute;
    width:2px;
  }

.comparison__button:after{
    background-color:#fff !important;
  }

.comparison__button:after{
    bottom:0;
    content:"";
    height:50%;
    left:50%;
    position:absolute;
    transform:translate(-50%);
    width:2px;
  }

.age-verification-popup .rte{
    margin-bottom:20px;
    margin-top:20px;
  }

@media only screen and (min-width:769px){

.age-verification-popup .rte{
      margin-bottom:30px;
  }
    }

.age-verification-popup .age-verification-popup__btns-wrapper{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    justify-content:center;
  }

.age-verification-popup__background-image-wrapper{
  height:100%;
  overflow:hidden;
  position:absolute;
  width:100%;
}

.age-verification-popup__background-image{
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  width:100%;
}

.age-verification-popup__content--active{
  opacity:1;
  transition:opacity 1.5s ease-in;
}

.age-verification-popup__content--inactive,.age-verification-popup__content--inactive *,.age-verification-popup__content--inactive .btn{
  border:0;
  font-size:0;
  height:0;
  line-height:0;
  margin:0;
  opacity:0;
  padding:0;
  position:absolute;
  visibility:hidden;
  width:0;
}

.age-verification-popup__decline-content--inactive,.age-verification-popup__decline-content--inactive *,.age-verification-popup__decline-content--inactive .btn{
  border:0;
  font-size:0;
  height:0;
  line-height:0;
  margin:0;
  opacity:0;
  padding:0;
  position:absolute;
  visibility:hidden;
  width:0;
}

.age-verification-popup__decline-content--active{
  opacity:1;
  transition:opacity 1.5s ease-in;
}

.age-verification-popup__content-wrapper{
  margin:0 auto;
  max-width:520px;
  text-align:center;
}

product-recommendations[data-intent=complementary]{
  display:block;
  overflow:hidden;
}

product-recommendations[data-intent=complementary] .product-recommendations__title{
    margin-bottom:20px;
    margin-top:40px;
    max-width:72%;
    text-align:left;
    width:100%;
  }

product-recommendations[data-intent=complementary] .grid{
    margin-left:0;
  }

product-recommendations[data-intent=complementary] .grid-item,product-recommendations[data-intent=complementary] .grid__item{
    margin-bottom:1rem;
    padding-bottom:8px;
    padding-left:0;
  }

@media only screen and (max-width:768px){

product-recommendations[data-intent=complementary] .grid-item,product-recommendations[data-intent=complementary] .grid__item{
      margin-left:0 !important;
  }

product-recommendations[data-intent=complementary] .grid-item,product-recommendations[data-intent=complementary] .grid__item{
      flex:0 0 100%;
  }
    }

product-recommendations[data-intent=complementary] .grid-product__image-wrap{
    min-width:90px;
  }

product-recommendations[data-intent=complementary] .grid__image-ratio{
    background-color:transparent;
  }

product-recommendations[data-intent=complementary] img.image-style--circle{
    border-radius:50%;
    bottom:0;
    height:85%;
    left:0;
    margin:auto;
    -o-object-fit:cover;
       object-fit:cover;
    position:absolute;
    right:0;
    top:0;
    width:85%;
  }

product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__link{
    display:block;
    width:100%;
  }

product-recommendations[data-intent=complementary] .grid-item__link,product-recommendations[data-intent=complementary] .grid-product__link,product-recommendations[data-intent=complementary] .grid__item-image-wrapper{
    align-items:center;
    display:flex;
  }

product-recommendations[data-intent=complementary] .grid-item__link .grid-product__image-mask,product-recommendations[data-intent=complementary] .grid-item__link .grid-product__image-wrap,product-recommendations[data-intent=complementary] .grid-item__link .image-wrap,product-recommendations[data-intent=complementary] .grid-product__link .grid-product__image-mask,product-recommendations[data-intent=complementary] .grid-product__link .grid-product__image-wrap,product-recommendations[data-intent=complementary] .grid-product__link .image-wrap,product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__image-mask,product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__image-wrap,product-recommendations[data-intent=complementary] .grid__item-image-wrapper .image-wrap{
      margin:0;
      width:112px;
    }

product-recommendations[data-intent=complementary] .grid-item__link .grid-product__meta,product-recommendations[data-intent=complementary] .grid-product__link .grid-product__meta,product-recommendations[data-intent=complementary] .grid__item-image-wrapper .grid-product__meta{
      margin-left:48px;
      text-align:left;
      width:calc(100% - 112px);
    }

product-recommendations[data-intent=complementary] .grid-product__actions{
    right:0;
    top:0;
  }

product-recommendations[data-intent=complementary] .grid-product__tag{
    bottom:0;
    left:0;
    right:auto;
    top:auto;
  }

product-recommendations[data-intent=complementary] .flickity-viewport{
    width:100%;
  }

product-recommendations[data-intent=complementary] .flickity-previous{
    left:auto;
    right:50px;
    top:-32px;
  }

@media only screen and (max-width:768px){

product-recommendations[data-intent=complementary] .flickity-previous{
      right:45px;
  }
    }

product-recommendations[data-intent=complementary] .flickity-next{
    right:0;
    top:-32px;
  }

product-recommendations[data-intent=complementary] .flickity-page-dots{
    bottom:auto;
    right:0;
    top:-41px;
    width:auto;
  }

product-recommendations[data-intent=complementary] .flickity-button:disabled{
    display:block;
    opacity:0.35;
  }

.product-recommendations__slide{
  display:block;
  margin:0;
  overflow:hidden;
  padding:0;
  width:100%;
}

@media only screen and (max-width:768px){

.product-recommendations__slide{
    display:flex;
    flex-wrap:wrap;
}
  }

.product-recommendations__slide .grid__item:last-child{
    margin-bottom:0;
    padding-bottom:0;
  }

.product-recommendations--title-missing{
  margin-top:80px;
}

img{
  border:0 none;
  display:block;
  max-width:100%;
}

.image-element{
  opacity:0;
}

.image-element[loading=eager]{
    opacity:1;
  }

.template-giftcard .image-element{
    opacity:1;
}

.aos-animate[data-aos=image-fade-in] .image-element{
    animation:fade-in 0.5s cubic-bezier(0.29, 0.65, 0.58, 1) forwards;
}

.aos-animate[data-aos=image-fade-in] .image-element.loader-logo__img{
      animation:pulse-fade 0.4s linear infinite;
    }

[data-animate_images=false] .aos-animate[data-aos=image-fade-in] .image-element{
      animation:none;
      opacity:1;
}

.no-js .image-element{
    opacity:1;
}

.image-wrap img{
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  position:absolute;
  width:100%;
}

.svg-mask{
  background:transparent !important;
  background-color:transparent !important;
  padding-bottom:100% !important;
  position:relative !important;
}

.svg-mask .grid__image-ratio{
    background:transparent !important;
    background-color:transparent !important;
  }

.svg-mask img,.svg-mask svg{
    height:100% !important;
    -o-object-fit:cover !important;
       object-fit:cover !important;
    position:absolute !important;
  }

.svg-mask img,.svg-mask svg{
    -webkit-mask-position:center;
            mask-position:center;
    -webkit-mask-repeat:no-repeat;
            mask-repeat:no-repeat;
    -webkit-mask-size:100% 100%;
            mask-size:100% 100%;
  }

.svg-mask--landscape{
  padding-bottom:56.25% !important;
}

.svg-mask--portrait{
  padding-bottom:150% !important;
}

.svg-mask--square{
  padding-bottom:100% !important;
}

.svg-mask--rounded-top img,.svg-mask--rounded-top svg{
  border-top-left-radius:50%;
  border-top-right-radius:50%;
}

.svg-mask--rounded img,.svg-mask--rounded svg{
  border-radius:50%;
}

.svg-mask--star img,.svg-mask--star svg{
  -webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjg0IiBoZWlnaHQ9IjEyNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Im02NDIgMCAxNzcuMDA3IDI5MC40NDEgMzM3LjQ0My00Mi42OTctMTE2LjcyIDMxOS40NzYgMjQzLjc3IDIzNy4xOTktMzIyLjU0NCAxMDcuOTQtMzMuNDYxIDMzOC40ODFMNjQyIDEwNjUuOTZsLTI4NS40OTYgMTg0Ljg4LTMzLjQ2LTMzOC40ODFMLjQ5NyA4MDQuNDE5IDI0NC4yNjggNTY3LjIyIDEyNy41NTUgMjQ3Ljc0NGwzMzcuNDM4IDQyLjY5N0w2NDIgMFoiLz48L3N2Zz4=");
          mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjg0IiBoZWlnaHQ9IjEyNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Im02NDIgMCAxNzcuMDA3IDI5MC40NDEgMzM3LjQ0My00Mi42OTctMTE2LjcyIDMxOS40NzYgMjQzLjc3IDIzNy4xOTktMzIyLjU0NCAxMDcuOTQtMzMuNDYxIDMzOC40ODFMNjQyIDEwNjUuOTZsLTI4NS40OTYgMTg0Ljg4LTMzLjQ2LTMzOC40ODFMLjQ5NyA4MDQuNDE5IDI0NC4yNjggNTY3LjIyIDEyNy41NTUgMjQ3Ljc0NGwzMzcuNDM4IDQyLjY5N0w2NDIgMFoiLz48L3N2Zz4=");
}

.svg-mask--rounded-wave img,.svg-mask--rounded-wave svg{
  -webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDY2IiBoZWlnaHQ9IjEwNjYiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Ik00OTIuNTA5IDMxLjgzYzEwLjU0NS00Mi4xNDUgNzAuNDM3LTQyLjE0NSA4MC45ODIgMCA4LjkzMyAzNS43MDEgNTYuMzQyIDQzLjIxIDc1Ljg3IDEyLjAxNkM2NzIuNDEzIDcuMDIzIDcyOS4zNzQgMjUuNTMgNzI2LjM4IDY4Ljg3Yy0yLjUzNyAzNi43MTUgNDAuMjMxIDU4LjUwNiA2OC40NDMgMzQuODczIDMzLjMwMi0yNy44OTcgODEuNzU3IDcuMzA3IDY1LjUxNiA0Ny42LTEzLjc1OCAzNC4xMzQgMjAuMTgzIDY4LjA3NSA1NC4zMTcgNTQuMzE3IDQwLjI5My0xNi4yNDEgNzUuNDk3IDMyLjIxNCA0Ny42IDY1LjUxNi0yMy42MzMgMjguMjEyLTEuODQyIDcwLjk4IDM0Ljg3MyA2OC40NDMgNDMuMzQxLTIuOTk0IDYxLjg1MSA1My45NjcgMjUuMDIxIDc3LjAxOS0zMS4xOSAxOS41MjgtMjMuNjgxIDY2LjkzNyAxMi4wMiA3NS44NyA0Mi4xNCAxMC41NDUgNDIuMTQgNzAuNDM3IDAgODAuOTgyLTM1LjcwMSA4LjkzMy00My4yMSA1Ni4zNDItMTIuMDIgNzUuODcgMzYuODMgMjMuMDUyIDE4LjMyIDgwLjAxMy0yNS4wMjEgNzcuMDE5LTM2LjcxNS0yLjUzNy01OC41MDYgNDAuMjMxLTM0Ljg3MyA2OC40NDMgMjcuODk3IDMzLjMwMi03LjMwNyA4MS43NTctNDcuNiA2NS41MTYtMzQuMTM0LTEzLjc1OC02OC4wNzUgMjAuMTgzLTU0LjMxNyA1NC4zMTcgMTYuMjQxIDQwLjI5My0zMi4yMTQgNzUuNDk3LTY1LjUxNiA0Ny42LTI4LjIxMi0yMy42MzMtNzAuOTgtMS44NDItNjguNDQzIDM0Ljg3MyAyLjk5NCA0My4zNDEtNTMuOTY3IDYxLjg1MS03Ny4wMTkgMjUuMDIxLTE5LjUyOC0zMS4xOS02Ni45MzctMjMuNjgxLTc1Ljg3IDEyLjAyLTEwLjU0NSA0Mi4xNC03MC40MzcgNDIuMTQtODAuOTgyIDAtOC45MzMtMzUuNzAxLTU2LjM0Mi00My4yMS03NS44Ny0xMi4wMi0yMy4wNTIgMzYuODMtODAuMDEzIDE4LjMyLTc3LjAxOS0yNS4wMjEgMi41MzctMzYuNzE1LTQwLjIzMS01OC41MDYtNjguNDQzLTM0Ljg3My0zMy4zMDIgMjcuODk3LTgxLjc1Ny03LjMwNy02NS41MTYtNDcuNiAxMy43NTgtMzQuMTM0LTIwLjE4My02OC4wNzUtNTQuMzE3LTU0LjMxNy00MC4yOTMgMTYuMjQxLTc1LjQ5Ny0zMi4yMTQtNDcuNi02NS41MTYgMjMuNjMzLTI4LjIxMiAxLjg0Mi03MC45OC0zNC44NzMtNjguNDQzLTQzLjM0IDIuOTk0LTYxLjg0OC01My45NjctMjUuMDI1LTc3LjAxOSAzMS4xOTQtMTkuNTI4IDIzLjY4NS02Ni45MzctMTIuMDE3LTc1Ljg3LTQyLjE0NC0xMC41NDUtNDIuMTQ0LTcwLjQzNyAwLTgwLjk4MiAzNS43MDItOC45MzMgNDMuMjEtNTYuMzQyIDEyLjAxNy03NS44N0M3LjAyMyAzOTMuNTg3IDI1LjUzIDMzNi42MjYgNjguODcgMzM5LjYyYzM2LjcxNSAyLjUzNyA1OC41MDYtNDAuMjMxIDM0Ljg3My02OC40NDMtMjcuODk3LTMzLjMwMiA3LjMwNy04MS43NTcgNDcuNi02NS41MTYgMzQuMTM0IDEzLjc1OCA2OC4wNzUtMjAuMTgzIDU0LjMxNy01NC4zMTctMTYuMjQxLTQwLjI5MyAzMi4yMTQtNzUuNDk3IDY1LjUxNi00Ny42IDI4LjIxMiAyMy42MzMgNzAuOTggMS44NDIgNjguNDQzLTM0Ljg3My0yLjk5NC00My4zNCA1My45NjctNjEuODQ4IDc3LjAxOS0yNS4wMjUgMTkuNTI4IDMxLjE5NCA2Ni45MzcgMjMuNjg1IDc1Ljg3LTEyLjAxN1oiLz48L3N2Zz4=");
          mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDY2IiBoZWlnaHQ9IjEwNjYiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGQ9Ik00OTIuNTA5IDMxLjgzYzEwLjU0NS00Mi4xNDUgNzAuNDM3LTQyLjE0NSA4MC45ODIgMCA4LjkzMyAzNS43MDEgNTYuMzQyIDQzLjIxIDc1Ljg3IDEyLjAxNkM2NzIuNDEzIDcuMDIzIDcyOS4zNzQgMjUuNTMgNzI2LjM4IDY4Ljg3Yy0yLjUzNyAzNi43MTUgNDAuMjMxIDU4LjUwNiA2OC40NDMgMzQuODczIDMzLjMwMi0yNy44OTcgODEuNzU3IDcuMzA3IDY1LjUxNiA0Ny42LTEzLjc1OCAzNC4xMzQgMjAuMTgzIDY4LjA3NSA1NC4zMTcgNTQuMzE3IDQwLjI5My0xNi4yNDEgNzUuNDk3IDMyLjIxNCA0Ny42IDY1LjUxNi0yMy42MzMgMjguMjEyLTEuODQyIDcwLjk4IDM0Ljg3MyA2OC40NDMgNDMuMzQxLTIuOTk0IDYxLjg1MSA1My45NjcgMjUuMDIxIDc3LjAxOS0zMS4xOSAxOS41MjgtMjMuNjgxIDY2LjkzNyAxMi4wMiA3NS44NyA0Mi4xNCAxMC41NDUgNDIuMTQgNzAuNDM3IDAgODAuOTgyLTM1LjcwMSA4LjkzMy00My4yMSA1Ni4zNDItMTIuMDIgNzUuODcgMzYuODMgMjMuMDUyIDE4LjMyIDgwLjAxMy0yNS4wMjEgNzcuMDE5LTM2LjcxNS0yLjUzNy01OC41MDYgNDAuMjMxLTM0Ljg3MyA2OC40NDMgMjcuODk3IDMzLjMwMi03LjMwNyA4MS43NTctNDcuNiA2NS41MTYtMzQuMTM0LTEzLjc1OC02OC4wNzUgMjAuMTgzLTU0LjMxNyA1NC4zMTcgMTYuMjQxIDQwLjI5My0zMi4yMTQgNzUuNDk3LTY1LjUxNiA0Ny42LTI4LjIxMi0yMy42MzMtNzAuOTgtMS44NDItNjguNDQzIDM0Ljg3MyAyLjk5NCA0My4zNDEtNTMuOTY3IDYxLjg1MS03Ny4wMTkgMjUuMDIxLTE5LjUyOC0zMS4xOS02Ni45MzctMjMuNjgxLTc1Ljg3IDEyLjAyLTEwLjU0NSA0Mi4xNC03MC40MzcgNDIuMTQtODAuOTgyIDAtOC45MzMtMzUuNzAxLTU2LjM0Mi00My4yMS03NS44Ny0xMi4wMi0yMy4wNTIgMzYuODMtODAuMDEzIDE4LjMyLTc3LjAxOS0yNS4wMjEgMi41MzctMzYuNzE1LTQwLjIzMS01OC41MDYtNjguNDQzLTM0Ljg3My0zMy4zMDIgMjcuODk3LTgxLjc1Ny03LjMwNy02NS41MTYtNDcuNiAxMy43NTgtMzQuMTM0LTIwLjE4My02OC4wNzUtNTQuMzE3LTU0LjMxNy00MC4yOTMgMTYuMjQxLTc1LjQ5Ny0zMi4yMTQtNDcuNi02NS41MTYgMjMuNjMzLTI4LjIxMiAxLjg0Mi03MC45OC0zNC44NzMtNjguNDQzLTQzLjM0IDIuOTk0LTYxLjg0OC01My45NjctMjUuMDI1LTc3LjAxOSAzMS4xOTQtMTkuNTI4IDIzLjY4NS02Ni45MzctMTIuMDE3LTc1Ljg3LTQyLjE0NC0xMC41NDUtNDIuMTQ0LTcwLjQzNyAwLTgwLjk4MiAzNS43MDItOC45MzMgNDMuMjEtNTYuMzQyIDEyLjAxNy03NS44N0M3LjAyMyAzOTMuNTg3IDI1LjUzIDMzNi42MjYgNjguODcgMzM5LjYyYzM2LjcxNSAyLjUzNyA1OC41MDYtNDAuMjMxIDM0Ljg3My02OC40NDMtMjcuODk3LTMzLjMwMiA3LjMwNy04MS43NTcgNDcuNi02NS41MTYgMzQuMTM0IDEzLjc1OCA2OC4wNzUtMjAuMTgzIDU0LjMxNy01NC4zMTctMTYuMjQxLTQwLjI5MyAzMi4yMTQtNzUuNDk3IDY1LjUxNi00Ny42IDI4LjIxMiAyMy42MzMgNzAuOTggMS44NDIgNjguNDQzLTM0Ljg3My0yLjk5NC00My4zNCA1My45NjctNjEuODQ4IDc3LjAxOS0yNS4wMjUgMTkuNTI4IDMxLjE5NCA2Ni45MzcgMjMuNjg1IDc1Ljg3LTEyLjAxN1oiLz48L3N2Zz4=");
}

.svg-mask--splat-1 img,.svg-mask--splat-1 svg{
  -webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDQ4IiBoZWlnaHQ9IjEwNTIiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTU3MC45MDUgMTUyLjM0OEM2ODguNDQxIDE0MC4zMyA3NzEuMTg3LTI3LjkxNSA4ODQuOTQxIDQuMDI2IDk4Ny45OTcgMzIuOTYyIDEwMDYuMjMgMTc4LjE4OCAxMDMyLjYgMjgxLjk4NWMyMy4xNiA5MS4xNjkgMTkuNjUgMTg2LjE0OS02Ljg0IDI3Ni40MDMtMjQuMDYgODEuOTQ4LTg1LjQ2MiAxNDIuMTUxLTEzNi4yMDggMjEwLjgzMS01NS41MyA3NS4xNTYtOTQuMjUyIDE2NS4yNDEtMTc1LjYwMiAyMTEuMTc4LTkxLjYzMiA1MS43NDMtMjAzLjg0MiA5My4xMDMtMzAzLjUxNCA1OS4zNzMtOTkuMjUtMzMuNTktMTM0LjUwOS0xNTIuMzY1LTIwMy43NTktMjMxLjAzMy02OS45NzQtNzkuNDg5LTE5Mi4wMjMtMTI4Ljc1OS0yMDUuNDUzLTIzMy44My0xMy40MzktMTA1LjE0NCA4Ny4wNjYtMTg2LjQ3NCAxMzkuOTk3LTI3OC4yOTUgNDcuMzk1LTgyLjIxOCA2NC40MjItMjAyLjEzIDE1NC4zNTQtMjMyLjMyNCA5My4yMzQtMzEuMzAzIDE3Ny40OTYgOTguMDYzIDI3NS4zMyA4OC4wNloiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
          mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDQ4IiBoZWlnaHQ9IjEwNTIiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTU3MC45MDUgMTUyLjM0OEM2ODguNDQxIDE0MC4zMyA3NzEuMTg3LTI3LjkxNSA4ODQuOTQxIDQuMDI2IDk4Ny45OTcgMzIuOTYyIDEwMDYuMjMgMTc4LjE4OCAxMDMyLjYgMjgxLjk4NWMyMy4xNiA5MS4xNjkgMTkuNjUgMTg2LjE0OS02Ljg0IDI3Ni40MDMtMjQuMDYgODEuOTQ4LTg1LjQ2MiAxNDIuMTUxLTEzNi4yMDggMjEwLjgzMS01NS41MyA3NS4xNTYtOTQuMjUyIDE2NS4yNDEtMTc1LjYwMiAyMTEuMTc4LTkxLjYzMiA1MS43NDMtMjAzLjg0MiA5My4xMDMtMzAzLjUxNCA1OS4zNzMtOTkuMjUtMzMuNTktMTM0LjUwOS0xNTIuMzY1LTIwMy43NTktMjMxLjAzMy02OS45NzQtNzkuNDg5LTE5Mi4wMjMtMTI4Ljc1OS0yMDUuNDUzLTIzMy44My0xMy40MzktMTA1LjE0NCA4Ny4wNjYtMTg2LjQ3NCAxMzkuOTk3LTI3OC4yOTUgNDcuMzk1LTgyLjIxOCA2NC40MjItMjAyLjEzIDE1NC4zNTQtMjMyLjMyNCA5My4yMzQtMzEuMzAzIDE3Ny40OTYgOTguMDYzIDI3NS4zMyA4OC4wNloiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
}

.svg-mask--splat-2 img,.svg-mask--splat-2 svg{
  -webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5NzciIGhlaWdodD0iODk2IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjYTQ5NWZiIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05NzUuNjg0IDM4MS44MzJjMTcuMjYzIDk1LjAzMy0xNDAuMjE0IDEyOS4yMzEtMTg3LjE3NyAyMTMuNjY2LTUyLjEzOCA5My43MzcgOC41MTUgMjg4LjA5NS05OC4yNTMgMjk5LjUwMy0xMjcuMTc1IDEzLjU4Ny0xMzguMDQ5LTExNS4zNjItMjYzLTE0Mi42My0xMDkuNTg1LTIzLjkxNC0yMjQuNTM1IDkxLjg5NC0zMDguNzE1IDE3Ljg2NC04NC41NDMtNzQuMzQ4IDExOC42ODgtMjA3LjM3MyA5My44MjktMzE3LjA5NEMxOTAuMjE5IDM1NS4zODEgOC4xNzEgMzQ4LjI2My4yOTcgMjQ4LjM0MS02LjU3IDE2MS4yMjMgMTA3LjMxOCAxMTIuMTY0IDE4MS44OTMgNjYuNDRjNjYuMTYzLTQwLjU2NyAxNDIuNTMxLTc2LjcwNSAyMTkuMDgyLTYzLjc3IDcxLjM4MyAxMi4wNjIgMTQwLjQ4NiA2Mi43NzMgMTY4Ljg1MiAxMjkuMzIgOS45MjkgMjMuMjkzIDI1LjgzOSA1NC41MjggNjkuOTIgNzguNTE3IDkxLjg1OSA0OS45OSAzMDQuODE2IDAgMzM1LjkzNyAxNzEuMzI1eiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
          mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5NzciIGhlaWdodD0iODk2IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjYTQ5NWZiIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05NzUuNjg0IDM4MS44MzJjMTcuMjYzIDk1LjAzMy0xNDAuMjE0IDEyOS4yMzEtMTg3LjE3NyAyMTMuNjY2LTUyLjEzOCA5My43MzcgOC41MTUgMjg4LjA5NS05OC4yNTMgMjk5LjUwMy0xMjcuMTc1IDEzLjU4Ny0xMzguMDQ5LTExNS4zNjItMjYzLTE0Mi42My0xMDkuNTg1LTIzLjkxNC0yMjQuNTM1IDkxLjg5NC0zMDguNzE1IDE3Ljg2NC04NC41NDMtNzQuMzQ4IDExOC42ODgtMjA3LjM3MyA5My44MjktMzE3LjA5NEMxOTAuMjE5IDM1NS4zODEgOC4xNzEgMzQ4LjI2My4yOTcgMjQ4LjM0MS02LjU3IDE2MS4yMjMgMTA3LjMxOCAxMTIuMTY0IDE4MS44OTMgNjYuNDRjNjYuMTYzLTQwLjU2NyAxNDIuNTMxLTc2LjcwNSAyMTkuMDgyLTYzLjc3IDcxLjM4MyAxMi4wNjIgMTQwLjQ4NiA2Mi43NzMgMTY4Ljg1MiAxMjkuMzIgOS45MjkgMjMuMjkzIDI1LjgzOSA1NC41MjggNjkuOTIgNzguNTE3IDkxLjg1OSA0OS45OSAzMDQuODE2IDAgMzM1LjkzNyAxNzEuMzI1eiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
}

.svg-mask--splat-3 img,.svg-mask--splat-3 svg{
  -webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDcyIiBoZWlnaHQ9IjEwNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTYxOC45MTMgMjE1LjM4M0M3NDUuNzc1IDIyNS42NTcgODQxLjc1IDE4LjAwNSA5NjAuNjc4IDYzLjMyM2MxMDkuMTcyIDQxLjYwMSAxMDkuNzUyIDIwNy45MzkgMTExLjMxMiAzMjQuNzA1IDEuMjYgOTQuMjYtOTkuOTY0IDE2Mi44MjctMTAzLjU0MSAyNTcuMDI3LTQuMzAyIDExMy4yNzYgMTM1LjI0MSAyMjMuMjQzIDgxLjUxMSAzMjMuMDcxLTQ5LjcyIDkyLjM3NC0xOTMuNDkyIDcwLjY5NC0yOTguMDg0IDc5LjI4NC04Ny41NiA3LjE5LTE3OC4yMTIgNy4wMy0yNTYuMDA2LTMzLjc3LTcxLjEzOS0zNy4zMDktODYuMDM2LTEzNC45NTEtMTUyLjI4OC0xODAuMzY4QzI0MS4zNDkgNzYzLjE5IDY2LjQgNzkzLjQxNiAxMi4xMTkgNjgyLjAyM2MtNDkuNjkzLTEwMS45NzkgNjcuMTU3LTIwOS40ODUgMTAzLjI4My0zMTcuMDE1IDQxLjI3LTEyMi44NDQtLjA4Mi0zMjMuMTUyIDEyNC4xOTYtMzYwLjA4MiAxNDEuNDgzLTQyLjA0NCAyMzIuMTkzIDE5OC41NDIgMzc5LjMxNSAyMTAuNDU3WiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
          mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDcyIiBoZWlnaHQ9IjEwNTEiIGZpbGw9Im5vbmUiPjxwYXRoIGZpbGw9IiNBNDk1RkIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTYxOC45MTMgMjE1LjM4M0M3NDUuNzc1IDIyNS42NTcgODQxLjc1IDE4LjAwNSA5NjAuNjc4IDYzLjMyM2MxMDkuMTcyIDQxLjYwMSAxMDkuNzUyIDIwNy45MzkgMTExLjMxMiAzMjQuNzA1IDEuMjYgOTQuMjYtOTkuOTY0IDE2Mi44MjctMTAzLjU0MSAyNTcuMDI3LTQuMzAyIDExMy4yNzYgMTM1LjI0MSAyMjMuMjQzIDgxLjUxMSAzMjMuMDcxLTQ5LjcyIDkyLjM3NC0xOTMuNDkyIDcwLjY5NC0yOTguMDg0IDc5LjI4NC04Ny41NiA3LjE5LTE3OC4yMTIgNy4wMy0yNTYuMDA2LTMzLjc3LTcxLjEzOS0zNy4zMDktODYuMDM2LTEzNC45NTEtMTUyLjI4OC0xODAuMzY4QzI0MS4zNDkgNzYzLjE5IDY2LjQgNzkzLjQxNiAxMi4xMTkgNjgyLjAyM2MtNDkuNjkzLTEwMS45NzkgNjcuMTU3LTIwOS40ODUgMTAzLjI4My0zMTcuMDE1IDQxLjI3LTEyMi44NDQtLjA4Mi0zMjMuMTUyIDEyNC4xOTYtMzYwLjA4MiAxNDEuNDgzLTQyLjA0NCAyMzIuMTkzIDE5OC41NDIgMzc5LjMxNSAyMTAuNDU3WiIgY2xpcC1ydWxlPSJldmVub2RkIi8+PC9zdmc+");
}

.svg-mask--splat-4 img,.svg-mask--splat-4 svg{
  -webkit-mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTgiIGhlaWdodD0iNTA0IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjQTQ5NUZCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zMDMuNzkzIDg0LjY3M2MxNi4xNDkgMjMuODQ4IDMxLjczNyA0My41OCA1Ni40OTYgNDguNzI0IDQzLjM1NCA5LjAwNyA5NC4xMzItMzUuNjY1IDEzMC4xOS05Ljk0IDI5LjgzMiAyMS4yODIgMzMuMzIxIDg3LjE4OSAyMCAxMTIuNTQyLTE1LjUgMjkuNS01Mi4yMDEgNDQuMDQxLTY3LjUgNzQtMTguMzUgMzUuOTMyIDEwLjc2MSA3NC45NjgtMzIuNSAxMDMuNS0zMi45MDEgMjEuNjk5LTY4LjY2My0xNS42MjctMTA2LjY4Ni01LjMwMS01OS45MDcgMTYuMjY4LTk0LjU5MyA5Ni4zNDMtMTU2LjY0NSA5NC44MDEtNTcuODA3LTEuNDM2LTExNS42MzgtNDguMTYzLTEzNi42NjktMTAyLjA5MS0yMS4yMjctNTQuNDMxLTguMDQ0LTEyNS44NTIgMzAuNzM2LTE2OS41NDJDNjkuNSAxOTkuNSAxMDUgMTg5IDEyMi40OCAxMzljOS40NTUtMjcuMDQ3LTMtMTAzIDUxLjg5Ny0xMzIuMDUgNDUuMjQtMjMuOTQgOTIuMDY1IDE3LjA3MiAxMjkuNDE2IDc3LjcyM1oiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
          mask-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTgiIGhlaWdodD0iNTA0IiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjQTQ5NUZCIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zMDMuNzkzIDg0LjY3M2MxNi4xNDkgMjMuODQ4IDMxLjczNyA0My41OCA1Ni40OTYgNDguNzI0IDQzLjM1NCA5LjAwNyA5NC4xMzItMzUuNjY1IDEzMC4xOS05Ljk0IDI5LjgzMiAyMS4yODIgMzMuMzIxIDg3LjE4OSAyMCAxMTIuNTQyLTE1LjUgMjkuNS01Mi4yMDEgNDQuMDQxLTY3LjUgNzQtMTguMzUgMzUuOTMyIDEwLjc2MSA3NC45NjgtMzIuNSAxMDMuNS0zMi45MDEgMjEuNjk5LTY4LjY2My0xNS42MjctMTA2LjY4Ni01LjMwMS01OS45MDcgMTYuMjY4LTk0LjU5MyA5Ni4zNDMtMTU2LjY0NSA5NC44MDEtNTcuODA3LTEuNDM2LTExNS42MzgtNDguMTYzLTEzNi42NjktMTAyLjA5MS0yMS4yMjctNTQuNDMxLTguMDQ0LTEyNS44NTIgMzAuNzM2LTE2OS41NDJDNjkuNSAxOTkuNSAxMDUgMTg5IDEyMi40OCAxMzljOS40NTUtMjcuMDQ3LTMtMTAzIDUxLjg5Ny0xMzIuMDUgNDUuMjQtMjMuOTQgOTIuMDY1IDE3LjA3MiAxMjkuNDE2IDc3LjcyM1oiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjwvc3ZnPg==");
}

.feature-row__item--overlap-images .feature-row__first-image{
    width:55%;
  }

.feature-row__item--overlap-images .feature-row__second-image{
    width:60%;
  }

.feature-row__item--placeholder-images .placeholder-image-wrap{
    width:50%;
  }

.feature-row-wrapper .feature-row__images{
  min-width:0;
  width:100%;
}

.feature-row-wrapper .feature-row__text{
  min-width:0;
  width:100%;
}

@media only screen and (min-width:769px){

.feature-row-wrapper .feature-row__text{
    flex:0 1 43%;
    min-width:43%;
}
  }

.feature-row--33 .feature-row__images{
    max-width:50%;
  }

@media only screen and (min-width:769px){

.feature-row--33 .feature-row__images{
      flex:0 1 33.333%;
      max-width:none;
  }
    }

.feature-row--50 .feature-row__images{
    max-width:100%;
    padding-left:20px;
    padding-right:20px;
  }

@media only screen and (min-width:769px){

.feature-row--50 .feature-row__images{
      flex:0 1 50%;
      max-width:none;
      padding-left:0;
      padding-right:0;
  }
    }

.feature-row--66 .feature-row__images{
    max-width:100%;
    padding-left:20px;
    padding-right:20px;
  }

@media only screen and (min-width:769px){

.feature-row--66 .feature-row__images{
      flex:0 1 66.666%;
      max-width:none;
      padding-left:0;
      padding-right:0;
  }
    }

.scrolling-text{
  overflow:hidden;
}

.scrolling-text__inner{
  animation:scrolling-text var(--move-speed) linear infinite;
  animation-play-state:running;
  display:inline-flex;
  margin:0.15em 0;
  visibility:visible;
  white-space:nowrap;
}

.scrolling-text__inner--right{
  animation:scrolling-text-right var(--move-speed) linear infinite;
  transform:translateX(-50%);
}

.scrolling-text span{
  white-space:nowrap;
}

.scrolling-text:focus .scrolling-text__inner,.scrolling-text:hover .scrolling-text__inner{
  animation-play-state:paused;
}

@keyframes scrolling-text{
  0%{
    transform:translateX(0);
    -webkit-transform:translateX(0);
  }
  to{
    transform:translateX(-100%);
    -webkit-transform:translateX(-100%);
  }
}

@keyframes scrolling-text-right{
  0%{
    transform:translateX(-50%);
    -webkit-transform:translateX(-50%);
  }
  to{
    transform:translateX(0);
    -webkit-transform:translateX(0);
  }
}

.newsletter-container{
  margin:0 auto !important;
  padding:0 !important;
}

.newsletter-section{
  align-items:center;
  display:flex;
  gap:40px;
  padding:60px 0;
}

@media only screen and (max-width:768px){

.newsletter-section{
    flex-direction:column;
    padding:30px 0;
}
  }

.newsletter-section--image-left{
  flex-direction:row-reverse;
}

@media only screen and (max-width:768px){

.newsletter-section--image-left{
    flex-direction:column-reverse;
}
  }

.newsletter-section__content{
  flex:100%;
  margin:0 auto;
  max-width:800px;
  padding-left:20px;
}

.newsletter-section--no-image .newsletter-section__content{
    flex:100%;
}

.newsletter-section__content form{
    display:flex;
    width:100%;
  }

.text-left .newsletter-section__content form{
      justify-content:flex-start;
  }

.text-center .newsletter-section__content form{
      justify-content:center;
  }

.text-right .newsletter-section__content form{
      justify-content:flex-end;
  }

.newsletter-section__content .newsletter__input-group{
    margin:0;
  }

.newsletter-section__image{
  width:100%;
}

.newsletter-section__image img{
    display:block;
    height:auto;
    margin:0 auto;
    -o-object-fit:cover;
       object-fit:cover;
  }

.newsletter-section__image--33{
  flex:33.333% 0 0;
}

.newsletter-section__image--50{
  flex:50% 0 0;
}

@media only screen and (max-width:768px){

.newsletter-section__image--50{
    max-width:100%;
}
  }

.newsletter-section__image--66{
  flex:66.666% 0 0;
}

@media only screen and (max-width:768px){

.newsletter-section__image--66{
    max-width:100%;
}
  }

.text-left .newsletter-form-group{
    margin:0;
}

.text-right .newsletter-form-group{
    margin:0;
}

.predictive-overflow-hidden{
  overflow:hidden;
}

@media only screen and (max-width:768px){

.predictive-overflow-hidden{
    overflow:auto;
}
  }

predictive-search{
  align-items:center;
  display:flex;
  margin:0 auto;
  max-width:960px;
  position:relative;
  width:100%;
}

predictive-search.is-active{
    flex:99;
  }

predictive-search.is-active .predictive__screen{
    display:block;
    z-index:3;
  }

predictive-search.is-active .btn--close-search{
    align-items:center;
    display:flex;
    justify-content:center;
  }

[data-dark=true] input{
    color:#fff !important;
  }

[data-dark=true] .btn--search path{
    stroke:#fff !important;
  }

[data-dark=false] input{
    color:#000 !important;
  }

[data-dark=false] .btn--search path{
    stroke:#000 !important;
  }

.predictive__screen{
  background:rgba(0,0,0,.5);
  display:none;
  height:100vh;
  left:0;
  position:fixed;
  top:0;
  width:100vw;
}

predictive-search form{
  display:flex;
  flex-wrap:wrap;
  position:relative;
  width:100%;
  z-index:4;
}

.search__input-wrap{
  flex:5;
  position:relative;
  transition:flex 0.3s ease-in-out;
}

.search__input{
  background:var(--colorNavSearch, #fff);
  border-radius:calc(var(--roundness, 0)*2);
  color:var(--color-body-text);
  flex:1;
  width:100%;
}

.btn--search{
  position:absolute;
  right:15px;
  top:50%;
  transform:translateY(-50%);
}

.btn--search .icon{
    height:25px;
    width:25px;
  }

@media only screen and (min-width:769px){

.btn--search{
    right:10px;
}
  }

.btn--close-search{
  display:none;
  flex:30px 0 0;
  margin-left:10px;
}

.btn--close-search .icon{
    height:25px;
    width:25px;
  }

.btn--close-search .icon path{
    stroke:var(--colorNavText) !important;
  }

.search__results{
  background:var(--color-body);
  color:var(--color-body-text);
  container-type:inline-size;
  display:none;
  margin-top:10px;
  max-height:80vh;
  overflow-y:auto;
  padding:0;
  position:absolute;
  top:100%;
  width:100%;
}

@media only screen and (max-width:768px){

.search__results{
    margin-left:calc(var(--pageWidthPadding, 17px)*-1);
    margin-right:calc(var(--pageWidthPadding, 17px)*-1);
    max-height:75vh;
    width:calc(100% + var(--pageWidthPadding, 17px)*2);
}

.template-search .page-content .search__results{
      max-height:50vh;
}
  }

.results{
  display:block;
  padding:0 20px 20px;
  width:100%;
}

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

.results li{
    margin-bottom:0;
    padding:10px;
    transition:background 0.2s ease;
  }

.results li:hover{
      background:rgba(0,0,0,.05);
    }

.results li a{
      align-items:center;
      display:flex;
    }

.results--queries span{
    font-weight:bolder;
  }

.results--queries mark{
    background-color:transparent;
    font-weight:400;
  }

.results--products span{
  margin-left:10px;
}

.results-products__image{
  height:80px;
  max-width:80px;
  min-width:80px;
  width:100%;
}

.results-products__info{
  display:flex;
  flex-direction:column;
}

.predictive-search-results{
  display:flex;
  flex-direction:column;
  flex-wrap:wrap;
  overflow-y:auto;
  padding:40px 0 0;
}

.predictive-search-results h3{
    border-bottom:1px solid;
    border-color:var(--colorBorder);
    margin-bottom:10px;
    padding-bottom:10px;
  }

.predictive-search-results--none{
  padding-top:20px;
}

.predictive-search__no-results{
  display:block;
  width:100%;
}

.predictive-search__no-results:hover{
    opacity:0.5;
  }

.results__group-1{
  flex:100% 0 0;
}

.results__group-1>div:not(.results--queries){
    display:none;
  }

.results__group-2{
  flex:100% 0 0;
}

.results__search-btn{
  border:1px solid;
  border-color:var(--colorBorder);
  padding:10px;
  transition:background-color 0.2s ease;
  width:100%;
}

.results__search-btn:hover{
    background-color:rgba(0,0,0,.05);
  }

@container (min-width: 800px){
  .predictive-search-results{
    flex-direction:row;
    flex-wrap:nowrap;
  }

  .results{
    padding:0 40px 20px;
  }

  .results__group-1{
    flex:1 0 0;
  }

    .results__group-1 div:not(.results--queries){
      display:block;
    }

  .results__group-2{
    flex:2 0 0;
  }

    .results__group-2>div:not(.results--products){
      display:none;
    }

  .results__search-btn{
    padding:10px 0 10px 40px;
    text-align:left;
  }
}

@media only screen and (max-width:768px){

.spr-starrating.spr-summary-starrating{
    justify-content:center !important;
}
  }

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

body,html{
  margin:0;
  padding:0;
}

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
  display:block;
}

audio,canvas,progress,video{
  display:inline-block;
  vertical-align:baseline;
}

input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{
  height:auto;
}

input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{
  -webkit-appearance:none;
}

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

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

@media only screen and (max-width:768px){

.grid{
    margin-left:-17px;
}

html[dir=rtl] .grid{
      margin-left:0;
      margin-right:-17px;
}
  }

html[dir=rtl] .grid{
    margin-left:0;
    margin-right:-22px;
}

.grid--small{
  margin-left:-10px;
}

.grid--small .grid__item{
    padding-left:10px;
  }

.grid__item{
  float:left;
  min-height:1px;
  padding-left:22px;
  width:100%;
}

@media only screen and (max-width:768px){

.grid__item{
    padding-left:17px;
}

html[dir=rtl] .grid__item{
      padding-left:0;
      padding-right:17px;
}
  }

html[dir=rtl] .grid__item{
    float:right;
    padding-left:0;
    padding-right:22px;
}

.grid--no-gutters{
  margin-left:0;
}

.grid--no-gutters .grid__item{
    padding-left:0;
  }

.grid--flush-bottom{
  margin-bottom:-22px;
  overflow:auto;
}

.grid--flush-bottom>.grid__item{
    margin-bottom:22px;
  }

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

.grid--center .grid__item{
    display:inline-block;
    float:none;
    text-align:left;
    vertical-align:top;
  }

html[dir=rtl] .grid--center .grid__item{
      text-align:right;
  }

.grid--full{
  margin-left:0;
}

.grid--full>.grid__item{
    padding-left:0;
  }

@media only screen and (min-width:769px){
  .grid--table-large{
    display:table;
    table-layout:fixed;
    width:100%;
  }

    .grid--table-large>.grid__item{
      display:table-cell;
      float:none;
      vertical-align:middle;
    }
}

@media only screen and (max-width:768px){
  .small--grid--flush{
    margin-left:-2px;
  }
  .page-width .small--grid--flush{
      margin-left:-17px;
      margin-right:-15px;
  }

    .small--grid--flush>.grid__item{
      padding-left:2px;
    }
}

.one-whole{width:100%;}

.one-half{width:50%;}

.one-third{width:33.33333%;}

.two-thirds{width:66.66667%;}

.one-quarter{width:25%;}

.two-quarters{width:50%;}

.three-quarters{width:75%;}

.one-fifth{width:20%;}

.two-fifths{width:40%;}

.three-fifths{width:60%;}

.four-fifths{width:80%;}

.one-sixth{width:16.66667%;}

.two-sixths{width:33.33333%;}

.three-sixths{width:50%;}

.four-sixths{width:66.66667%;}

.five-sixths{width:83.33333%;}

@media only screen and (max-width:768px){.small--one-whole{width:100%;}.small--one-half{width:50%;}.small--one-third{width:33.33333%;}.small--two-thirds{width:66.66667%;}.grid--uniform .small--one-half:nth-of-type(odd),.grid--uniform .small--one-third:nth-of-type(3n+1){clear:both;}.small--one-quarter{width:25%;}.small--two-quarters{width:50%;}.small--three-quarters{width:75%;}.grid--uniform .small--one-quarter:nth-of-type(4n+1){clear:both;}.small--one-fifth{width:20%;}.small--two-fifths{width:40%;}.small--three-fifths{width:60%;}.small--four-fifths{width:80%;}.grid--uniform .small--one-fifth:nth-of-type(5n+1){clear:both;}.small--one-sixth{width:16.66667%;}.small--two-sixths{width:33.33333%;}.small--three-sixths{width:50%;}.small--four-sixths{width:66.66667%;}.small--five-sixths{width:83.33333%;}.grid--uniform .small--one-sixth:nth-of-type(6n+1),.grid--uniform .small--three-sixths:nth-of-type(odd),.grid--uniform .small--two-sixths:nth-of-type(3n+1){clear:both;}}

@media only screen and (min-width:769px){.medium-up--one-whole{width:100%;}.medium-up--one-half{width:50%;}.medium-up--one-third{width:33.33333%;}.medium-up--two-thirds{width:66.66667%;}.grid--uniform .medium-up--one-half:nth-of-type(odd),.grid--uniform .medium-up--one-third:nth-of-type(3n+1){clear:both;}.medium-up--one-quarter{width:25%;}.medium-up--two-quarters{width:50%;}.medium-up--three-quarters{width:75%;}.grid--uniform .medium-up--one-quarter:nth-of-type(4n+1){clear:both;}.medium-up--one-fifth{width:20%;}.medium-up--two-fifths{width:40%;}.medium-up--three-fifths{width:60%;}.medium-up--four-fifths{width:80%;}.grid--uniform .medium-up--one-fifth:nth-of-type(5n+1){clear:both;}.medium-up--one-sixth{width:16.66667%;}.medium-up--two-sixths{width:33.33333%;}.medium-up--three-sixths{width:50%;}.medium-up--four-sixths{width:66.66667%;}.medium-up--five-sixths{width:83.33333%;}.grid--uniform .medium-up--one-sixth:nth-of-type(6n+1),.grid--uniform .medium-up--three-sixths:nth-of-type(odd),.grid--uniform .medium-up--two-sixths:nth-of-type(3n+1){clear:both;}}

.show{display:block !important;}

.hide{display:none !important;}

.text-left{text-align:centre !important;
             }



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

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

@media only screen and (max-width:768px){.small--show{display:block !important;}.small--hide{display:none !important;}.small--text-left{text-align:left !important;}.small--text-right{text-align:right !important;}.small--text-center{text-align:center !important;}}

@media only screen and (max-width:959px){.medium-down--show{display:block !important;}.medium-down--hide{display:none !important;}.medium-down--text-left{text-align:left !important;}.medium-down--text-right{text-align:right !important;}.medium-down--text-center{text-align:center !important;}}

@media only screen and (min-width:769px){.medium-up--show{display:block !important;}.medium-up--hide{display:none !important;}.medium-up--text-left{text-align:left !important;}.medium-up--text-right{text-align:right !important;}.medium-up--text-center{text-align:center !important;}}

.flex-grid{
  display:flex;
  flex:1 1 100%;
  flex-wrap:wrap;
}

[data-center-text=true] .flex-grid{
    justify-content:center;
}

.flex-grid--center{
  align-items:center;
}

.flex-grid--gutters{
  margin-left:-15px;
  margin-top:-15px;
}

.flex-grid__item{
  align-items:stretch;
  display:flex;
  flex:0 1 100%;
}

.flex-grid--gutters .flex-grid__item{
    padding-left:15px;
    padding-top:15px;
}

.flex-grid__item>*{
    flex:1 1 100%;
  }

.flex-grid__item--stretch{
  flex:1 1 100%;
}

.flex-grid__item--stretch:first-child{
    min-width:250px;
  }

@media only screen and (min-width:769px){
  .flex-grid__item--33{
    flex-basis:33.33%;
  }

  .flex-grid__item--50{
    flex-basis:50%;
  }
}

@media only screen and (max-width:768px){
  .flex-grid__item--mobile-second{
    order:2;
  }
}

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

html:not(.no-js):not(.tab-outline) :focus{
  outline:none;
}

.is-transitioning{
  display:block !important;
  visibility:visible !important;
}

.display-table{
  display:table;
  table-layout:fixed;
  width:100%;
}

.display-table-cell{
  display:table-cell;
  float:none;
  vertical-align:middle;
}

@media only screen and (min-width:769px){
  .medium-up--display-table{
    display:table;
    table-layout:fixed;
    width:100%;
  }

  .medium-up--display-table-cell{
    display:table-cell;
    float:none;
    vertical-align:middle;
  }
}

.visually-hidden{
  clip:rect(0 0 0 0);
  border:0;
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px;
}

.visually-invisible{
  opacity:0 !important;
}

.skip-link:focus{
  clip:auto;
  background-color:var(--colorBody);
  color:var(--colorTextBody);
  height:auto;
  margin:0;
  opacity:1;
  padding:10px;
  transition:none;
  width:auto;
  z-index:10000;
}

html{
  touch-action:manipulation;
}

html[dir=rtl]{
  direction:rtl;
}

body,html{
  background-color:var(--colorBody);
  color:var(--colorTextBody);
}

@media only screen and (max-width:768px){
  .supports-touch.lock-scroll{
    overflow:hidden;
  }
    @supports (-webkit-touch-callout:none){
  .supports-touch.lock-scroll{
      overflow:initial;
  }
    }
}

.page-width{
  margin:0 auto;
  max-width:1500px;
}

.page-full,.page-width{
  padding:0 17px;
}

@media only screen and (min-width:769px){

.page-full,.page-width{
    padding:0 40px;
}
  }

.page-width--narrow{
  max-width:1000px;
}

.page-width--tiny{
  max-width:450px;
}

@media only screen and (max-width:768px){
  .page-width--flush-small{
    padding:0;
  }
}

.page-content,.shopify-email-marketing-confirmation__container,.shopify-policy__container{
  padding-bottom:40px;
  padding-top:40px;
}


#shopify-pc__banner__btn-decline {
  display: none;
}

#shopify-pc__prefs__header-decline {
  display: none;
}


@media only screen and (min-width:769px){

.page-content,.shopify-email-marketing-confirmation__container,.shopify-policy__container{
    padding-bottom:75px;
    padding-top:75px;
}
  }

.shopify-email-marketing-confirmation__container{
  text-align:center;
}

.page-content--top,.page-content--with-blocks{
  padding-bottom:0;
}

.page-content--bottom{
  padding-top:0;
}

.main-content{
  display:block;
  min-height:300px;
}

@media only screen and (min-width:769px){

.main-content{
    min-height:500px;
}
  }

.template-challange .main-content{
    min-height:0;
}

.hr--large,.hr--medium,.hr--small,hr{
  border:0;
  border-top:1px solid;
  border-top-color:var(--colorBorder);
  height:1px;
}

.hr--small{
  margin:15px auto;
}

.hr--medium{
  margin:25px auto;
}

@media only screen and (min-width:769px){

.hr--medium{
    margin:35px auto;
}
  }

.hr--large{
  margin:30px auto;
}

@media only screen and (min-width:769px){

.hr--large{
    margin:45px auto;
}
  }

.page-blocks+.hr--large,.page-blocks+[data-section-type=recently-viewed] .hr--large{
    margin-top:0;
}

.hr--clear{
  border:0;
}

@media only screen and (max-width:768px){
    .table--responsive thead{
      display:none;
    }

    .table--responsive tr{
      display:block;
    }

    .table--responsive td,.table--responsive tr{
      clear:both;
      float:left;
      width:100%;
    }

    .table--responsive td,.table--responsive th{
      display:block;
      padding:15px;
      text-align:right;
    }

    .table--responsive td:before{
      content:attr(data-label);
      float:left;
      font-size:12px;
      padding-right:10px;
    }
  }

@media only screen and (max-width:768px){
  .table--small-hide{
    display:none !important;
  }

  .table__section+.table__section{
    margin-top:10px;
    padding-top:15px;
    position:relative;
  }

    .table__section+.table__section:after{
      border-bottom:1px solid;
      border-bottom-color:var(--colorBorder);
      content:"";
      display:block;
      left:15px;
      position:absolute;
      right:15px;
      top:0;
    }
}

details summary::-webkit-details-marker{
  display:none;
}

.faux-select,body,button,input,select,textarea{
  -webkit-font-smoothing:antialiased;
  -webkit-text-size-adjust:100%;
  font-family:var(--typeBasePrimary), var(--typeBaseFallback);
  font-size:calc(var(--typeBaseSize)*0.92);
  letter-spacing:var(--typeBaseSpacing);
  line-height:var(--typeBaseLineHeight);
  text-rendering:optimizeSpeed;
}

@media only screen and (min-width:769px){

.faux-select,body,button,input,select,textarea{
    font-size:var(--typeBaseSize);
}
  }

body{
  font-weight:var(--typeBaseWeight);
}

p{
  margin:0 0 15px 0;
}

p img{
    margin:0;
  }

em{
  font-style:italic;
}

b,strong{
  font-weight:700;
}

p[data-spam-detection-disclaimer],small{
  font-size:0.85em;
}

sub,sup{
  font-size:60%;
  position:relative;
  vertical-align:baseline;
}

sup{
  top:-0.5em;
}

sub{
  bottom:-0.5em;
}

.rte blockquote,blockquote{
  margin:0;
  padding:15px 30px 40px;
}

.rte blockquote p,blockquote p{
    margin-bottom:0;
  }

.rte blockquote p+cite,blockquote p+cite{
      margin-top:15px;
    }

.rte blockquote cite,blockquote cite{
    display:block;
  }

code,pre{
  background-color:#faf7f5;
  border:0 none;
  color:#51ab62;
  font-family:Consolas,monospace;
  font-size:1em;
  padding:0 2px;
}

pre{
  margin:0 0 30px;
  overflow:auto;
  padding:15px;
}

.label,label:not(.variant__button-label):not(.text-label){
  font-size:0.9em;
  letter-spacing:0.3em;
  text-transform:uppercase;
}

label{
  display:block;
  margin-bottom:10px;
}

.label-info{
  display:block;
  margin-bottom:10px;
}

.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{
  display:block;
  margin:0 0 10px;
}

@media only screen and (min-width:769px){

.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{
    margin:0 0 15px;
}
  }

.h1 a,.h2 a,.h3 a,.h4 a,.h5 a,.h6 a,h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{
    font-weight:inherit;
    -webkit-text-decoration:none;
    text-decoration:none;
  }

.h1,.h2,.h3,h1,h2,h3{
  font-family:var(--typeHeaderPrimary), var(--typeHeaderFallback);
  font-weight:var(--typeHeaderWeight);
  letter-spacing:var(--typeHeaderSpacing);
  line-height:var(--typeHeaderLineHeight);
}

[data-type_header_capitalize=true] .h1,[data-type_header_capitalize=true] .h2,[data-type_header_capitalize=true] .h3,[data-type_header_capitalize=true] h1,[data-type_header_capitalize=true] h2,[data-type_header_capitalize=true] h3{
    text-transform:uppercase;
}

.h1,h1{
  font-size:calc(var(--typeHeaderSize)*0.85);
}

.h2,h2{
  font-size:calc(var(--typeHeaderSize)*0.73);
}

.h3,h3{
  font-size:calc(var(--typeHeaderSize)*0.62);
}

@media only screen and (min-width:769px){
  .h1,h1{
    font-size:var(--typeHeaderSize);
  }

  .h2,h2{
    font-size:calc(var(--typeHeaderSize)*0.85);
  }

  .h3,h3{
    font-size:calc(var(--typeHeaderSize)*0.65);
  }
}

.h4,h4{
  font-size:0.8em;
  letter-spacing:0.3em;
  text-transform:uppercase;
}

.h5,.h6,h5,h6{
  font-size:0.8em;
  letter-spacing:0.3em;
  margin-bottom:10px;
  text-transform:uppercase;
}

@media only screen and (max-width:768px){

.h5,.h6,h5,h6{
    margin-bottom:5px;
}
  }

.subheading{
  letter-spacing:0.3em;
  text-transform:uppercase;
}

.text-spacing,.text-spacing.rte:last-child{
  margin-bottom:15px;
}

@media only screen and (max-width:768px){

      .rte table td,.rte table th{
        padding:6px 8px;
      }
    }

.collapsible-content .rte table td,.collapsible-content .rte table th{
        padding:6px 8px;
      }

.comment-author{
  margin-bottom:0;
}

.comment-date{
  display:block;
  font-size:calc(var(--typeBaseSize)*0.85);
  margin-top:3px;
}

@media only screen and (max-width:768px){

.comment-date{
    margin-bottom:15px;
}
  }

.ajaxcart__subtotal{
  font-size:0.8em;
  letter-spacing:0.3em;
  text-transform:uppercase;
}

.rte .enlarge-text{
    font-size:1.3em;
    margin:0;
  }

@media only screen and (min-width:769px){

.rte .enlarge-text--offset p{
        padding-right:15%;
    }

.text-center .rte .enlarge-text--offset p{
          padding:0 5%;
    }
      }

@media only screen and (min-width:769px){
  .table--small-text{
    font-size:calc(var(--typeBaseSize)*0.85);
  }
}

.index-section--footer h3{
    font-size:1.5em;
  }

html[dir=rtl] .text-left{
    text-align:right !important;
  }

html[dir=rtl] .text-right{
    text-align:left !important;
  }

.icon-and-text{
  align-items:center;
  display:flex;
  flex-wrap:nowrap;
}

.icon-and-text .icon{
    flex:0 0 auto;
  }

ol,ul{
  margin:0 0 15px 30px;
  padding:0;
  text-rendering:optimizeLegibility;
}

ol ol{
  list-style:lower-alpha;
}

ol{ list-style:decimal; }

ol ol,ol ul,ul ol,ul ul{ margin:4px 0 5px 20px; }

li{ margin-bottom:0.25em; }

ul.square{ list-style:square outside; }

ul.disc{ list-style:disc outside; }

ol.alpha{ list-style:lower-alpha outside; }

.no-bullets{
  list-style:none outside;
  margin-left:0;
}

.inline-list{
  margin:0;
  padding:0;
}

}

.inline-list-left{
  margin:0;
  padding:0;
}

.inline-list li{
    display:inline-block;
    margin-bottom:0;
    vertical-align:middle;
  }

table{
  background:var(--colorBorder);
  border:0 none;
  border-spacing:1px;
  position:relative;
  width:100%;
}

.table-wrapper{
  -webkit-overflow-scrolling:touch;
  max-width:100%;
  overflow:auto;
}

td,th{
  background:var(--colorBody);
  border:0 none;
  padding:10px 15px;
  text-align:left;
}

html[dir=rtl] td,html[dir=rtl] th{
    text-align:right;
}

th{
  font-weight:700;
}

.table__title,th{
  font-weight:700;
}

.text-link,a{
  background:transparent;
  color:var(--colorTextBody);
  -webkit-text-decoration:none;
  text-decoration:none;
}

.text-link:hover,a:hover{
    color:var(--colorTextBody);
  }

.text-link{
  background:none;
  border:0 none;
  display:inline;
  margin:0;
  padding:0;
}

.rte a,.shopify-email-marketing-confirmation__container a,.shopify-policy__container a{
  color:var(--colorLink);
}

button{
  color:currentColor;
  overflow:visible;
}

button[disabled],html input[disabled]{
  cursor:default;
}

.btn,.rte .btn,.shopify-payment-button .shopify-payment-button__button--unbranded,.spr-container .spr-button,.spr-container .spr-summary-actions a{
  -webkit-appearance:none;
  -moz-appearance:none;
  background:#009688;
  border:1px solid transparent;
  border-radius:var(--buttonRadius);
  color:var(--colorBtnPrimaryText);
  cursor:pointer;

  display:inline-block;

  font-size:calc(var(--typeBaseSize) - 4px);
  font-size:max(calc(var(--typeBaseSize) - 4px), 13px);
  font-weight:700;
  letter-spacing:0.3em;
  line-height:1.42;
  margin:0;
  min-width:90px;
  padding:11px 20px;
  text-align:center;
  -webkit-text-decoration:none;
  text-decoration:none;
  text-transform:uppercase;
  -webkit-user-select:none;
             -moz-user-select:none;
          user-select:none;
  vertical-align:middle;
  white-space:normal;
  width:auto;
}

@media only screen and (max-width:768px){

.btn,.rte .btn,.shopify-payment-button .shopify-payment-button__button--unbranded,.spr-container .spr-button,.spr-container .spr-summary-actions a{
    font-size:calc(var(--typeBaseSize) - 5px);
    font-size:max(calc(var(--typeBaseSize) - 5px), 11px);
    padding:9px 17px;
}
  }

.btn:hover,.rte .btn:hover,.shopify-payment-button .shopify-payment-button__button--unbranded:hover,.spr-container .spr-button:hover,.spr-container .spr-summary-actions a:hover{
    background-color:var(--colorBtnPrimary);
    color:var(--colorBtnPrimaryText);
  }

.btn.disabled,.btn[disabled],.rte .btn.disabled,.rte .btn[disabled],.shopify-payment-button .shopify-payment-button__button--unbranded.disabled,.shopify-payment-button .shopify-payment-button__button--unbranded[disabled],.spr-container .spr-button.disabled,.spr-container .spr-button[disabled],.spr-container .spr-summary-actions a.disabled,.spr-container .spr-summary-actions a[disabled]{
    background-color:#f6f6f6;
    color:#b6b6b6;
    cursor:default;
  }

.btn.disabled:hover,.btn[disabled]:hover,.rte .btn.disabled:hover,.rte .btn[disabled]:hover,.shopify-payment-button .shopify-payment-button__button--unbranded.disabled:hover,.shopify-payment-button .shopify-payment-button__button--unbranded[disabled]:hover,.spr-container .spr-button.disabled:hover,.spr-container .spr-button[disabled]:hover,.spr-container .spr-summary-actions a.disabled:hover,.spr-container .spr-summary-actions a[disabled]:hover{
      background-color:#f6f6f6;
      color:#b6b6b6;
    }

[data-button_style=angled] .btn.disabled:after,[data-button_style=angled] .btn.disabled:before,[data-button_style=angled] .btn[disabled]:after,[data-button_style=angled] .btn[disabled]:before,[data-button_style=angled] .rte .btn.disabled:after,[data-button_style=angled] .rte .btn.disabled:before,[data-button_style=angled] .rte .btn[disabled]:after,[data-button_style=angled] .rte .btn[disabled]:before,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.disabled:after,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.disabled:before,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded[disabled]:after,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded[disabled]:before,[data-button_style=angled] .spr-container .spr-button.disabled:after,[data-button_style=angled] .spr-container .spr-button.disabled:before,[data-button_style=angled] .spr-container .spr-button[disabled]:after,[data-button_style=angled] .spr-container .spr-button[disabled]:before,[data-button_style=angled] .spr-container .spr-summary-actions a.disabled:after,[data-button_style=angled] .spr-container .spr-summary-actions a.disabled:before,[data-button_style=angled] .spr-container .spr-summary-actions a[disabled]:after,[data-button_style=angled] .spr-container .spr-summary-actions a[disabled]:before{
        background-color:#f6f6f6;
        border-bottom:1px solid;
        border-bottom-color:#b6b6b6;
        border-top:1px solid;
        border-top-color:#b6b6b6;
      }

[data-button_style=angled] .btn,[data-button_style=angled] .rte .btn,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded,[data-button_style=angled] .spr-container .spr-button,[data-button_style=angled] .spr-container .spr-summary-actions a{
    border:0;
    margin-left:10px;
    margin-right:10px;
    position:relative;
}

[data-button_style=angled] .btn:after,[data-button_style=angled] .btn:before,[data-button_style=angled] .rte .btn:after,[data-button_style=angled] .rte .btn:before,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:after,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:before,[data-button_style=angled] .spr-container .spr-button:after,[data-button_style=angled] .spr-container .spr-button:before,[data-button_style=angled] .spr-container .spr-summary-actions a:after,[data-button_style=angled] .spr-container .spr-summary-actions a:before{
      background-color:inherit;
      bottom:0;
      content:"";
      display:block;
      position:absolute;
      top:0;
      transform:skewX(-12deg);
      width:20px;
    }

[data-button_style=angled] .btn:before,[data-button_style=angled] .rte .btn:before,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:before,[data-button_style=angled] .spr-container .spr-button:before,[data-button_style=angled] .spr-container .spr-summary-actions a:before{
      left:-6px;
    }

[data-button_style=angled] .btn:after,[data-button_style=angled] .rte .btn:after,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded:after,[data-button_style=angled] .spr-container .spr-button:after,[data-button_style=angled] .spr-container .spr-summary-actions a:after{
      right:-6px;
    }

[data-button_style=angled] .btn.btn--small:before,[data-button_style=angled] .rte .btn.btn--small:before,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.btn--small:before,[data-button_style=angled] .spr-container .spr-button.btn--small:before,[data-button_style=angled] .spr-container .spr-summary-actions a.btn--small:before{
        left:-5px;
      }

[data-button_style=angled] .btn.btn--small:after,[data-button_style=angled] .rte .btn.btn--small:after,[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded.btn--small:after,[data-button_style=angled] .spr-container .spr-button.btn--small:after,[data-button_style=angled] .spr-container .spr-summary-actions a.btn--small:after{
        right:-5px;
      }

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style=square] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style=square] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style^=round] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static),[data-button_style^=round] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static){
      overflow:hidden;
      position:relative;
      transition:background 0.2s ease 0s;
    }

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style=square] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style=square] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style^=round] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after,[data-button_style^=round] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):after{
        background-image:linear-gradient(90deg,transparent, hsla(0,0%,100%,.25),transparent);
        content:"";
        height:100%;
        left:150%;
        position:absolute;
        top:0;
        transform:skewX(-20deg);
        width:200%;
      }

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style=square] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style=square] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style^=round] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after,[data-button_style^=round] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover:after{
        animation:shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
      }

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style=square] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style=square] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style^=round] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover,[data-button_style^=round] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):hover{
        background:var(--colorBtnPrimaryLight);
        transition-delay:0.25s;
      }

[data-button_style=square] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style=square] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style=square] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style=square] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style=square] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style^=round] .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style^=round] .rte .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style^=round] .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style^=round] .spr-container .spr-button:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active,[data-button_style^=round] .spr-container .spr-summary-actions a:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):not(.btn--body):not(.btn--static):active{
        background:var(--colorBtnPrimary);
        transition-delay:0s;
      }

.shopify-payment-button .shopify-payment-button__button--unbranded:hover:not([disabled]){
  background-color:var(--colorBtnPrimary);
  color:var(--colorBtnPrimaryText);
}

.shopify-payment-button__more-options{
  color:inherit;
  display: none !important;
}

.btn--secondary,.rte .btn--secondary{
  background-color:transparent;
  border:1px solid;
  border-color:var(--colorBorder);
  color:var(--colorTextBody);
color: #ffffff;
}

[data-button_style=angled] .btn--secondary,[data-button_style=angled] .rte .btn--secondary{
    border-bottom:1px solid;
    border-bottom-color:var(--colorBorder);
    border-left:0;
    border-right:0;
    border-top:1px solid;
    border-top-color:var(--colorBorder);
}

[data-button_style=angled] .btn--secondary:after,[data-button_style=angled] .btn--secondary:before,[data-button_style=angled] .rte .btn--secondary:after,[data-button_style=angled] .rte .btn--secondary:before{
      background-color:transparent;
      bottom:-1px;
      top:-1px;
    }

[data-button_style=angled] .btn--secondary:before,[data-button_style=angled] .rte .btn--secondary:before{
      border-bottom:1px solid;
      border-bottom-color:var(--colorBorder);
      border-left:1px solid;
      border-left-color:var(--colorBorder);
    }

[data-button_style=angled] .btn--secondary:after,[data-button_style=angled] .rte .btn--secondary:after{
      border-right:1px solid;
      border-right-color:var(--colorBorder);
      border-top:1px solid;
      border-top-color:var(--colorBorder);
    }

.btn--secondary:hover,.rte .btn--secondary:hover{
    background-color:transparent;
    border-color:var(--colorTextBody);
    color:var(--colorTextBody);
    transition:border 0.3s ease;
  }

.btn--secondary:hover:before,.rte .btn--secondary:hover:before{
      border-color:var(--colorTextBody);
      transition:border 0.3s ease;
    }

.btn--secondary:hover:after,.rte .btn--secondary:hover:after{
      border-color:var(--colorTextBody);
      transition:border 0.3s ease;
    }

.btn--tertiary,.rte .btn--tertiary{
  background-color:transparent;
  border:1px solid;
  border-color:var(--colorBorder);
  color:var(--colorTextBody);
  font-weight:400;
  letter-spacing:normal;
  padding:8px 10px;
  text-transform:none;
  white-space:nowrap;
}

.btn--tertiary:hover,.rte .btn--tertiary:hover{
    background-color:transparent;
    color:var(--colorTextBody);
  }

.btn--tertiary.disabled,.btn--tertiary[disabled],.rte .btn--tertiary.disabled,.rte .btn--tertiary[disabled]{
    background-color:#f6f6f6;
    border-color:#b6b6b6;
    color:#b6b6b6;
    cursor:default;
  }

[data-button_style=angled] .btn--tertiary,[data-button_style=angled] .rte .btn--tertiary{
    margin-left:0;
    margin-right:0;
}

[data-button_style=angled] .btn--tertiary:after,[data-button_style=angled] .btn--tertiary:before,[data-button_style=angled] .rte .btn--tertiary:after,[data-button_style=angled] .rte .btn--tertiary:before{
      content:none;
    }

.btn--tertiary-active{
  background:var(--colorBtnPrimary);
  border-color:var(--colorBtnPrimary);
  color:var(--colorBtnPrimaryText);
}

.btn--tertiary-active:hover{
    background:var(--colorBtnPrimary);
    color:var(--colorBtnPrimaryText);
  }

.btn--body{
  background-color:var(--colorBody);
  border:1px solid;
  border-color:var(--colorBorder);
  color:var(--colorTextBody);
}

.btn--body:active,.btn--body:hover{
    background-color:var(--colorBody);
    border:1px solid;
    border-color:var(--colorBorder);
    color:var(--colorTextBody);
  }

.btn--circle{
  border-radius:50%;
  line-height:1;
  min-width:0;
  padding:10px;
}

.btn--circle .icon{
    height:20px;
    width:20px;
  }

.btn--circle:after,.btn--circle:before{
    background:none;
    content:none;
    width:auto;
  }

.btn--circle.btn--large .icon{
    height:30px;
    width:30px;
  }

.btn--circle.btn--large{
    padding:15px;
  }

[data-button_style=angled] .btn--circle{
    border:1px solid;
    border-color:var(--colorBorder);
}

[data-button_style=angled] .btn--circle:after,[data-button_style=angled] .btn--circle:before{
      display:none;
    }

.btn--small{
  background-position:150% 45%;
  font-size:calc(var(--typeBaseSize) - 6px);
  font-size:max(calc(var(--typeBaseSize) - 6px), 12px);
  min-width:90px;
  padding:8px 14px;
}

[data-button_style=angled] .btn--small{
    margin-left:10px;
    padding-left:16px;
    padding-right:16px;
}

.btn--secondary.btn--small{
      font-weight: 600;
    color: #ffffff;
    font-size: 14px;
      background: #009688 !important;
    padding: 10px !important;
  border-bottom: none !important;
}
}

.btn--large{
  padding:15px 20px;
}

.btn--full{
  padding:11px 20px;
  padding:13px 20px;
  transition:none;
  width:100%;
}

[data-button_style=angled] .btn--full{
    max-width:94%;
}

[data-button_style=angled] .shopify-payment-button .shopify-payment-button__button--unbranded{
    max-width:94%;
}

.btn--inverse{
  background-color:transparent;
  border:2px solid #fff;
  color:#fff;
}

.btn--inverse:focus,.btn--inverse:hover{
    background-color:transparent;
  }

[data-button_style=angled] .btn--inverse{
    border-bottom:2px solid;
    border-left:0;
    border-right:0;
    border-top:2px solid;
}

[data-button_style=angled] .btn--inverse:after,[data-button_style=angled] .btn--inverse:before{
      background-color:transparent;
      border-color:#fff;
      bottom:-2px;
      top:-2px;
    }

[data-button_style=angled] .btn--inverse:before{
      border-bottom:2px solid;
      border-left:2px solid;
    }

[data-button_style=angled] .btn--inverse:after{
      border-right:2px solid;
      border-top:2px solid;
    }

.hero__link .btn--inverse{
    border-color:var(--colorHeroText);
    color:var(--colorHeroText);
}

[data-button_style=angled] .hero__link .btn--inverse:before{
        border-color:var(--colorHeroText);
      }

[data-button_style=angled] .hero__link .btn--inverse:after{
        border-color:var(--colorHeroText);
      }

.btn--loading{
  background-color:var(--colorBtnPrimaryDim);
  color:var(--colorBtnPrimaryDim);
  position:relative;
  text-indent:-9999px;
}

.btn--loading:active,.btn--loading:hover{
    background-color:var(--colorBtnPrimaryDim);
    color:var(--colorBtnPrimaryDim);
  }

.btn--loading:before{
    animation:spin 1s linear infinite;
    border:3px solid;
    border-color:var(--colorBtnPrimaryText);
    border-radius:50%;
    border-top-color:transparent;
    content:"";
    display:block;
    height:24px;
    left:50%;
    margin-left:-12px;
    margin-top:-12px;
    position:absolute;
    top:50%;
    width:24px;
  }

[data-button_style=angled] .btn--loading:before{
      border-color:var(--colorBtnPrimaryText) !important;
      border-top-color:transparent !important;
    }

[data-button_style=angled] .btn--loading:before{
      border:3px solid;
      height:24px;
      left:50%;
      top:50%;
      transform:none;
      width:24px;
    }

[data-button_style=angled] .btn--loading:after{
      background-color:var(--colorBtnPrimaryDim);
    }

[data-button_style=angled] .btn--loading.btn--secondary:after{
      bottom:1px;
    }

.btn--loading.btn--secondary{
  background:transparent;
  color:var(--colorTextBody);
}

.btn--loading.btn--secondary:before{
    border-color:var(--colorTextBody);
    border-top-color:transparent;
  }

.return-link{
  margin-top:50px;
  padding:15px 25px;
  text-align:center;
}

@media only screen and (max-width:768px){

.return-link{
    padding:22px 17px;
    width:100%;
}

[data-button_style=angled] .return-link{
      width:90%;
}
  }

.return-link .icon{
    margin-right:8px;
    width:20px;
  }

.collapsible-trigger-btn{
  text-align:left;
}

[data-center-text=true] .collapsible-trigger-btn{
    text-align:center;
}

.collapsible-trigger-btn{
  display:block;
  font-size:0.8em;
  letter-spacing:0.3em;
  padding:15px 10px 15px 0;
  text-transform:uppercase;
  width:100%;
}

.collection-sidebar__group .collapsible-trigger-btn{
    text-align:left;
}

.collapsible-trigger-btn--borders{
  border:1px solid;
  border-color:var(--colorBorder);
  border-bottom:0;
  padding:12px;
}

.collapsible-trigger-btn--borders .collapsible-trigger__icon{
    right:12px;
  }

@media only screen and (min-width:769px){

.collapsible-trigger-btn--borders{
    padding:15px;
}

    .collapsible-trigger-btn--borders .collapsible-trigger__icon{
      right:15px;
    }
  }

.collapsible-content+.collapsible-trigger-btn--borders{
    margin-top:-1px;
}

.collapsible-trigger-btn--borders+.collapsible-content .collapsible-content__inner{
    border:1px solid;
    border-color:var(--colorBorder);
    border-top:0;
    font-size:calc(var(--typeBaseSize)*0.92);
    padding:0 20px 20px;
  }

.collapsible-trigger-btn--borders+.collapsible-content--expanded{
    margin-bottom:30px;
  }

.collapsible-trigger-btn--borders+.collapsible-content--expanded:last-child{
      margin-bottom:-1px;
    }

.collapsible-trigger-btn--borders-top{
  border-top:1px solid;
  border-top-color:var(--colorBorder);
}

.shopify-payment-button{
  margin-top:10px;
}

.shopify-payment-button .shopify-payment-button__button--unbranded{
  display:block;
  transition:none;
  width:100%;
}

.payment-buttons .add-to-cart,.payment-buttons .shopify-payment-button,.payment-buttons .shopify-payment-button__button--unbranded{
    min-height:50px;
  }

.add-to-cart.btn--secondary{
  border:1px solid;
  border-color:#ffffff;
background-color: #009688;
}

[data-button_style=angled] .add-to-cart.btn--secondary{
    border-left:0;
    border-right:0;
}

[data-button_style=angled] .add-to-cart.btn--secondary:after,[data-button_style=angled] .add-to-cart.btn--secondary:before{
      border-color:var(--colorTextBody);
    }

.add-to-cart.btn--secondary.disabled,.add-to-cart.btn--secondary[disabled]{
    border-color:#b6b6b6;
  }

[data-button_style=angled] .add-to-cart.btn--secondary.disabled:after,[data-button_style=angled] .add-to-cart.btn--secondary.disabled:before,[data-button_style=angled] .add-to-cart.btn--secondary[disabled]:after,[data-button_style=angled] .add-to-cart.btn--secondary[disabled]:before{
        border-color:#b6b6b6;
      }

.shopify-payment-button__button--hidden{
  display:none !important;
}

svg:not(:root){
  overflow:hidden;
}

iframe{
  max-width:100%;
}

.video-wrapper{
  height:0;
  height:auto;
  max-width:100%;
  overflow:hidden;
  padding-bottom:56.25%;
  position:relative;
}

.video-wrapper iframe,.video-wrapper video{
    height:100%;
    left:0;
    position:absolute;
    top:0;
    width:100%;
  }

.video-wrapper--modal{
  width:1000px;
}

.grid__image-ratio{
  background-color:var(--colorSmallImageBg);
  position:relative;
}

.grid__image-ratio img{
    height:100%;
    left:0;
    -o-object-fit:cover;
       object-fit:cover;
    position:absolute;
    top:0;
    width:100%;
  }

.grid__image-ratio img.grid__image-contain{
      -o-object-fit:contain;
         object-fit:contain;
    }

.grid__image-ratio:before{
    content:"";
    display:block;
    height:0;
    width:100%;
  }

.grid__image-ratio .placeholder-svg{
    bottom:0;
    left:0;
    position:absolute;
    right:0;
    top:0;
  }

.grid__image-ratio--object{
  opacity:1;
}

.grid__image-ratio--wide:before{
  padding-bottom:56.25%;
}

.grid__image-ratio--landscape:before{
  padding-bottom:75%;
}

.grid__image-ratio--square:before{
  padding-bottom:100%;
}

.grid__image-ratio--portrait:before{
  padding-bottom:150%;
}

.image-fit{
  font-family:"object-fit: cover";
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  position:relative;
  width:100%;
  z-index:1;
}

.parallax-container{
  height:160%;
  left:0;
  position:absolute;
  top:-30%;
  width:100%;
}

.parallax-image{
  height:110%;
  left:0;
  position:absolute;
  top:-5%;
  width:100%;
}

.parallax-image img{
    display:block;
    height:100%;
    -o-object-fit:cover;
       object-fit:cover;
    width:100%;
  }

form{
  margin:0;
}

[data-center-text=true] .form-vertical{
    text-align:center;
}

.form-vertical{
  margin-bottom:15px;
}

.form-vertical label{
    text-align:left;
  }

.inline{
  display:inline;
}

@media only screen and (max-width:959px){
  input,select,textarea{
    font-size:16px !important;
  }
}

button,input,textarea{
  -webkit-appearance:none;
  -moz-appearance:none;
}

button{
  background:none;
  border:none;
  cursor:pointer;
  display:inline-block;
}

fieldset{
  border:1px solid;
  border-color:var(--colorBorder);
  padding:15px;
}

legend{
  border:0;
  padding:0;
}

button,input[type=submit]{
  cursor:pointer;
}

input,select,textarea{
  border:1px solid;
  border-color:##000000
  border-radius:0;
  max-width:100%;
  padding:8px 10px;
}

input.disabled,input[disabled],select.disabled,select[disabled],textarea.disabled,textarea[disabled]{
    border-color:#b6b6b6;
    cursor:default;
  }

input.input-full,select.input-full,textarea.input-full{
    width:100%;
  }

textarea{
  min-height:100px;
}

input[type=checkbox],input[type=radio]{
  margin:0 10px 0 0;
  padding:0;
  width:auto;
}

input[type=checkbox]{
  -webkit-appearance:checkbox;
  -moz-appearance:checkbox;
}

input[type=radio]{
  -webkit-appearance:radio;
  -moz-appearance:radio;
}

input[type=image]{
  padding-left:0;
  padding-right:0;
}

.faux-select,select{
  -webkit-appearance:none;
             -moz-appearance:none;
          appearance:none;
  background-color:transparent;
  color:inherit;
  cursor:pointer;
  padding-right:28px;
  text-indent:0.01px;
  text-overflow:"";
}

select{
  background-image:var(--urlIcoSelect);
  background-position:100%;
  background-position:right 10px center;
  background-repeat:no-repeat;
  background-size:11px;
}

.is-light select{
    background-image:var(--urlIcoSelectWhite);
}

.faux-select .icon{
  height:11px;
  position:absolute;
  right:10px;
  top:50%;
  transform:translateY(-50%);
  width:11px;
}

optgroup{
  font-weight:700;
}

option{
  background-color:#fff;
  color:#000;
}

option[disabled]{
    color:#ccc;
  }

select::-ms-expand{
  display:none;
}

.hidden-label{
  clip:rect(0 0 0 0);
  border:0;
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px;
}

label[for]{
  cursor:pointer;
}

.form-vertical input,.form-vertical select,.form-vertical textarea{
    display:block;
    margin-bottom:30px;
  }

.form-vertical .btn,.form-vertical input[type=checkbox],.form-vertical input[type=radio]{
    display:inline-block;
  }

.form-vertical .btn:not(:last-child){
    margin-bottom:30px;
  }

small{
  display:block;
}

input.error,textarea.error{
    background-color:#fff6f6;
    border-color:#d02e2e;
    color:#d02e2e;
  }

label.error{
  color:#d02e2e;
}

.selector-wrapper label{
    margin-right:10px;
  }

.selector-wrapper+.selector-wrapper{
    margin-top:15px;
  }

.input-group{
  display:flex;
}

.input-group .input-group-btn:first-child .btn,.input-group .input-group-field:first-child,.input-group input[type=hidden]:first-child+.input-group-field{
    border-radius:0 0 0 0;
  }

.input-group .input-group-field:last-child{
    border-radius:0 0 0 0;
  }

.input-group .input-group-btn:first-child .btn,.input-group input[type=hidden]:first-child+.input-group-btn .btn{
    border-radius:var(--buttonRadius) 0 0 var(--buttonRadius);
  }

.input-group .input-group-btn:last-child .btn{
    border-radius:0 var(--buttonRadius) var(--buttonRadius) 0;
  }

.input-group input::-moz-focus-inner{
      border:0;
      margin-bottom:-1px;
      margin-top:-1px;
      padding:0;
    }

.input-group-field{
  flex:1 1 auto;
  margin:0;
  min-width:0;
}

.input-group-btn{
  display:flex;
  flex:0 1 auto;
  margin:0;
}

.input-group-btn .icon{
    vertical-align:initial;
  }

[data-button_style=angled] .input-group-btn{
    left:-8px;
    position:relative;
}

.icon{
  fill:currentColor;
  display:inline-block;
  height:20px;
  vertical-align:middle;
  width:20px;
}

.no-svg .icon{
    display:none;
}

.icon--full-color{
  fill:initial;
}

svg.icon:not(.icon--full-color) circle,svg.icon:not(.icon--full-color) ellipse,svg.icon:not(.icon--full-color) g,svg.icon:not(.icon--full-color) line,svg.icon:not(.icon--full-color) path,svg.icon:not(.icon--full-color) polygon,svg.icon:not(.icon--full-color) polyline,svg.icon:not(.icon--full-color) rect,symbol.icon:not(.icon--full-color) circle,symbol.icon:not(.icon--full-color) ellipse,symbol.icon:not(.icon--full-color) g,symbol.icon:not(.icon--full-color) line,symbol.icon:not(.icon--full-color) path,symbol.icon:not(.icon--full-color) polygon,symbol.icon:not(.icon--full-color) polyline,symbol.icon:not(.icon--full-color) rect{
      fill:inherit;
      stroke:inherit;
    }

.icon-bag circle,.icon-bag ellipse,.icon-bag g,.icon-bag line,.icon-bag path,.icon-bag polygon,.icon-bag polyline,.icon-bag rect,.icon-bag-minimal circle,.icon-bag-minimal ellipse,.icon-bag-minimal g,.icon-bag-minimal line,.icon-bag-minimal path,.icon-bag-minimal polygon,.icon-bag-minimal polyline,.icon-bag-minimal rect,.icon-cart circle,.icon-cart ellipse,.icon-cart g,.icon-cart line,.icon-cart path,.icon-cart polygon,.icon-cart polyline,.icon-cart rect,.icon-chevron-down circle,.icon-chevron-down ellipse,.icon-chevron-down g,.icon-chevron-down line,.icon-chevron-down path,.icon-chevron-down polygon,.icon-chevron-down polyline,.icon-chevron-down rect,.icon-circle-checkmark circle,.icon-circle-checkmark ellipse,.icon-circle-checkmark g,.icon-circle-checkmark line,.icon-circle-checkmark path,.icon-circle-checkmark polygon,.icon-circle-checkmark polyline,.icon-circle-checkmark rect,.icon-close circle,.icon-close ellipse,.icon-close g,.icon-close line,.icon-close path,.icon-close polygon,.icon-close polyline,.icon-close rect,.icon-email circle,.icon-email ellipse,.icon-email g,.icon-email line,.icon-email path,.icon-email polygon,.icon-email polyline,.icon-email rect,.icon-filter circle,.icon-filter ellipse,.icon-filter g,.icon-filter line,.icon-filter path,.icon-filter polygon,.icon-filter polyline,.icon-filter rect,.icon-gift circle,.icon-gift ellipse,.icon-gift g,.icon-gift line,.icon-gift path,.icon-gift polygon,.icon-gift polyline,.icon-gift rect,.icon-globe circle,.icon-globe ellipse,.icon-globe g,.icon-globe line,.icon-globe path,.icon-globe polygon,.icon-globe polyline,.icon-globe rect,.icon-hamburger circle,.icon-hamburger ellipse,.icon-hamburger g,.icon-hamburger line,.icon-hamburger path,.icon-hamburger polygon,.icon-hamburger polyline,.icon-hamburger rect,.icon-heart circle,.icon-heart ellipse,.icon-heart g,.icon-heart line,.icon-heart path,.icon-heart polygon,.icon-heart polyline,.icon-heart rect,.icon-leaf circle,.icon-leaf ellipse,.icon-leaf g,.icon-leaf line,.icon-leaf path,.icon-leaf polygon,.icon-leaf polyline,.icon-leaf rect,.icon-lock circle,.icon-lock ellipse,.icon-lock g,.icon-lock line,.icon-lock path,.icon-lock polygon,.icon-lock polyline,.icon-lock rect,.icon-package circle,.icon-package ellipse,.icon-package g,.icon-package line,.icon-package path,.icon-package polygon,.icon-package polyline,.icon-package rect,.icon-phone circle,.icon-phone ellipse,.icon-phone g,.icon-phone line,.icon-phone path,.icon-phone polygon,.icon-phone polyline,.icon-phone rect,.icon-ribbon circle,.icon-ribbon ellipse,.icon-ribbon g,.icon-ribbon line,.icon-ribbon path,.icon-ribbon polygon,.icon-ribbon polyline,.icon-ribbon rect,.icon-search circle,.icon-search ellipse,.icon-search g,.icon-search line,.icon-search path,.icon-search polygon,.icon-search polyline,.icon-search rect,.icon-shield circle,.icon-shield ellipse,.icon-shield g,.icon-shield line,.icon-shield path,.icon-shield polygon,.icon-shield polyline,.icon-shield rect,.icon-size-chart circle,.icon-size-chart ellipse,.icon-size-chart g,.icon-size-chart line,.icon-size-chart path,.icon-size-chart polygon,.icon-size-chart polyline,.icon-size-chart rect,.icon-tag circle,.icon-tag ellipse,.icon-tag g,.icon-tag line,.icon-tag path,.icon-tag polygon,.icon-tag polyline,.icon-tag rect,.icon-tcwi-bills circle,.icon-tcwi-bills ellipse,.icon-tcwi-bills g,.icon-tcwi-bills line,.icon-tcwi-bills path,.icon-tcwi-bills polygon,.icon-tcwi-bills polyline,.icon-tcwi-bills rect,.icon-tcwi-calendar circle,.icon-tcwi-calendar ellipse,.icon-tcwi-calendar g,.icon-tcwi-calendar line,.icon-tcwi-calendar path,.icon-tcwi-calendar polygon,.icon-tcwi-calendar polyline,.icon-tcwi-calendar rect,.icon-tcwi-cart circle,.icon-tcwi-cart ellipse,.icon-tcwi-cart g,.icon-tcwi-cart line,.icon-tcwi-cart path,.icon-tcwi-cart polygon,.icon-tcwi-cart polyline,.icon-tcwi-cart rect,.icon-tcwi-charity circle,.icon-tcwi-charity ellipse,.icon-tcwi-charity g,.icon-tcwi-charity line,.icon-tcwi-charity path,.icon-tcwi-charity polygon,.icon-tcwi-charity polyline,.icon-tcwi-charity rect,.icon-tcwi-chat circle,.icon-tcwi-chat ellipse,.icon-tcwi-chat g,.icon-tcwi-chat line,.icon-tcwi-chat path,.icon-tcwi-chat polygon,.icon-tcwi-chat polyline,.icon-tcwi-chat rect,.icon-tcwi-gears circle,.icon-tcwi-gears ellipse,.icon-tcwi-gears g,.icon-tcwi-gears line,.icon-tcwi-gears path,.icon-tcwi-gears polygon,.icon-tcwi-gears polyline,.icon-tcwi-gears rect,.icon-tcwi-gift circle,.icon-tcwi-gift ellipse,.icon-tcwi-gift g,.icon-tcwi-gift line,.icon-tcwi-gift path,.icon-tcwi-gift polygon,.icon-tcwi-gift polyline,.icon-tcwi-gift rect,.icon-tcwi-globe circle,.icon-tcwi-globe ellipse,.icon-tcwi-globe g,.icon-tcwi-globe line,.icon-tcwi-globe path,.icon-tcwi-globe polygon,.icon-tcwi-globe polyline,.icon-tcwi-globe rect,.icon-tcwi-open-envelope circle,.icon-tcwi-open-envelope ellipse,.icon-tcwi-open-envelope g,.icon-tcwi-open-envelope line,.icon-tcwi-open-envelope path,.icon-tcwi-open-envelope polygon,.icon-tcwi-open-envelope polyline,.icon-tcwi-open-envelope rect,.icon-tcwi-package circle,.icon-tcwi-package ellipse,.icon-tcwi-package g,.icon-tcwi-package line,.icon-tcwi-package path,.icon-tcwi-package polygon,.icon-tcwi-package polyline,.icon-tcwi-package rect,.icon-tcwi-phone circle,.icon-tcwi-phone ellipse,.icon-tcwi-phone g,.icon-tcwi-phone line,.icon-tcwi-phone path,.icon-tcwi-phone polygon,.icon-tcwi-phone polyline,.icon-tcwi-phone rect,.icon-tcwi-plant circle,.icon-tcwi-plant ellipse,.icon-tcwi-plant g,.icon-tcwi-plant line,.icon-tcwi-plant path,.icon-tcwi-plant polygon,.icon-tcwi-plant polyline,.icon-tcwi-plant rect,.icon-tcwi-recycle circle,.icon-tcwi-recycle ellipse,.icon-tcwi-recycle g,.icon-tcwi-recycle line,.icon-tcwi-recycle path,.icon-tcwi-recycle polygon,.icon-tcwi-recycle polyline,.icon-tcwi-recycle rect,.icon-tcwi-ribbon circle,.icon-tcwi-ribbon ellipse,.icon-tcwi-ribbon g,.icon-tcwi-ribbon line,.icon-tcwi-ribbon path,.icon-tcwi-ribbon polygon,.icon-tcwi-ribbon polyline,.icon-tcwi-ribbon rect,.icon-tcwi-sales-tag circle,.icon-tcwi-sales-tag ellipse,.icon-tcwi-sales-tag g,.icon-tcwi-sales-tag line,.icon-tcwi-sales-tag path,.icon-tcwi-sales-tag polygon,.icon-tcwi-sales-tag polyline,.icon-tcwi-sales-tag rect,.icon-tcwi-shield circle,.icon-tcwi-shield ellipse,.icon-tcwi-shield g,.icon-tcwi-shield line,.icon-tcwi-shield path,.icon-tcwi-shield polygon,.icon-tcwi-shield polyline,.icon-tcwi-shield rect,.icon-tcwi-stopwatch circle,.icon-tcwi-stopwatch ellipse,.icon-tcwi-stopwatch g,.icon-tcwi-stopwatch line,.icon-tcwi-stopwatch path,.icon-tcwi-stopwatch polygon,.icon-tcwi-stopwatch polyline,.icon-tcwi-stopwatch rect,.icon-tcwi-store circle,.icon-tcwi-store ellipse,.icon-tcwi-store g,.icon-tcwi-store line,.icon-tcwi-store path,.icon-tcwi-store polygon,.icon-tcwi-store polyline,.icon-tcwi-store rect,.icon-tcwi-thumbs-up circle,.icon-tcwi-thumbs-up ellipse,.icon-tcwi-thumbs-up g,.icon-tcwi-thumbs-up line,.icon-tcwi-thumbs-up path,.icon-tcwi-thumbs-up polygon,.icon-tcwi-thumbs-up polyline,.icon-tcwi-thumbs-up rect,.icon-tcwi-trophy circle,.icon-tcwi-trophy ellipse,.icon-tcwi-trophy g,.icon-tcwi-trophy line,.icon-tcwi-trophy path,.icon-tcwi-trophy polygon,.icon-tcwi-trophy polyline,.icon-tcwi-trophy rect,.icon-tcwi-truck circle,.icon-tcwi-truck ellipse,.icon-tcwi-truck g,.icon-tcwi-truck line,.icon-tcwi-truck path,.icon-tcwi-truck polygon,.icon-tcwi-truck polyline,.icon-tcwi-truck rect,.icon-tcwi-wallet circle,.icon-tcwi-wallet ellipse,.icon-tcwi-wallet g,.icon-tcwi-wallet line,.icon-tcwi-wallet path,.icon-tcwi-wallet polygon,.icon-tcwi-wallet polyline,.icon-tcwi-wallet rect,.icon-truck circle,.icon-truck ellipse,.icon-truck g,.icon-truck line,.icon-truck path,.icon-truck polygon,.icon-truck polyline,.icon-truck rect,.icon-user circle,.icon-user ellipse,.icon-user g,.icon-user line,.icon-user path,.icon-user polygon,.icon-user polyline,.icon-user rect{
    fill:none !important;
    stroke:currentColor !important;
  }

.icon-bag circle,.icon-bag ellipse,.icon-bag g,.icon-bag line,.icon-bag path,.icon-bag polygon,.icon-bag polyline,.icon-bag rect,.icon-bag-minimal circle,.icon-bag-minimal ellipse,.icon-bag-minimal g,.icon-bag-minimal line,.icon-bag-minimal path,.icon-bag-minimal polygon,.icon-bag-minimal polyline,.icon-bag-minimal rect,.icon-cart circle,.icon-cart ellipse,.icon-cart g,.icon-cart line,.icon-cart path,.icon-cart polygon,.icon-cart polyline,.icon-cart rect,.icon-chevron-down circle,.icon-chevron-down ellipse,.icon-chevron-down g,.icon-chevron-down line,.icon-chevron-down path,.icon-chevron-down polygon,.icon-chevron-down polyline,.icon-chevron-down rect,.icon-circle-checkmark circle,.icon-circle-checkmark ellipse,.icon-circle-checkmark g,.icon-circle-checkmark line,.icon-circle-checkmark path,.icon-circle-checkmark polygon,.icon-circle-checkmark polyline,.icon-circle-checkmark rect,.icon-close circle,.icon-close ellipse,.icon-close g,.icon-close line,.icon-close path,.icon-close polygon,.icon-close polyline,.icon-close rect,.icon-email circle,.icon-email ellipse,.icon-email g,.icon-email line,.icon-email path,.icon-email polygon,.icon-email polyline,.icon-email rect,.icon-filter circle,.icon-filter ellipse,.icon-filter g,.icon-filter line,.icon-filter path,.icon-filter polygon,.icon-filter polyline,.icon-filter rect,.icon-gift circle,.icon-gift ellipse,.icon-gift g,.icon-gift line,.icon-gift path,.icon-gift polygon,.icon-gift polyline,.icon-gift rect,.icon-globe circle,.icon-globe ellipse,.icon-globe g,.icon-globe line,.icon-globe path,.icon-globe polygon,.icon-globe polyline,.icon-globe rect,.icon-hamburger circle,.icon-hamburger ellipse,.icon-hamburger g,.icon-hamburger line,.icon-hamburger path,.icon-hamburger polygon,.icon-hamburger polyline,.icon-hamburger rect,.icon-heart circle,.icon-heart ellipse,.icon-heart g,.icon-heart line,.icon-heart path,.icon-heart polygon,.icon-heart polyline,.icon-heart rect,.icon-leaf circle,.icon-leaf ellipse,.icon-leaf g,.icon-leaf line,.icon-leaf path,.icon-leaf polygon,.icon-leaf polyline,.icon-leaf rect,.icon-lock circle,.icon-lock ellipse,.icon-lock g,.icon-lock line,.icon-lock path,.icon-lock polygon,.icon-lock polyline,.icon-lock rect,.icon-package circle,.icon-package ellipse,.icon-package g,.icon-package line,.icon-package path,.icon-package polygon,.icon-package polyline,.icon-package rect,.icon-phone circle,.icon-phone ellipse,.icon-phone g,.icon-phone line,.icon-phone path,.icon-phone polygon,.icon-phone polyline,.icon-phone rect,.icon-ribbon circle,.icon-ribbon ellipse,.icon-ribbon g,.icon-ribbon line,.icon-ribbon path,.icon-ribbon polygon,.icon-ribbon polyline,.icon-ribbon rect,.icon-search circle,.icon-search ellipse,.icon-search g,.icon-search line,.icon-search path,.icon-search polygon,.icon-search polyline,.icon-search rect,.icon-shield circle,.icon-shield ellipse,.icon-shield g,.icon-shield line,.icon-shield path,.icon-shield polygon,.icon-shield polyline,.icon-shield rect,.icon-size-chart circle,.icon-size-chart ellipse,.icon-size-chart g,.icon-size-chart line,.icon-size-chart path,.icon-size-chart polygon,.icon-size-chart polyline,.icon-size-chart rect,.icon-tag circle,.icon-tag ellipse,.icon-tag g,.icon-tag line,.icon-tag path,.icon-tag polygon,.icon-tag polyline,.icon-tag rect,.icon-tcwi-bills circle,.icon-tcwi-bills ellipse,.icon-tcwi-bills g,.icon-tcwi-bills line,.icon-tcwi-bills path,.icon-tcwi-bills polygon,.icon-tcwi-bills polyline,.icon-tcwi-bills rect,.icon-tcwi-calendar circle,.icon-tcwi-calendar ellipse,.icon-tcwi-calendar g,.icon-tcwi-calendar line,.icon-tcwi-calendar path,.icon-tcwi-calendar polygon,.icon-tcwi-calendar polyline,.icon-tcwi-calendar rect,.icon-tcwi-cart circle,.icon-tcwi-cart ellipse,.icon-tcwi-cart g,.icon-tcwi-cart line,.icon-tcwi-cart path,.icon-tcwi-cart polygon,.icon-tcwi-cart polyline,.icon-tcwi-cart rect,.icon-tcwi-charity circle,.icon-tcwi-charity ellipse,.icon-tcwi-charity g,.icon-tcwi-charity line,.icon-tcwi-charity path,.icon-tcwi-charity polygon,.icon-tcwi-charity polyline,.icon-tcwi-charity rect,.icon-tcwi-chat circle,.icon-tcwi-chat ellipse,.icon-tcwi-chat g,.icon-tcwi-chat line,.icon-tcwi-chat path,.icon-tcwi-chat polygon,.icon-tcwi-chat polyline,.icon-tcwi-chat rect,.icon-tcwi-gears circle,.icon-tcwi-gears ellipse,.icon-tcwi-gears g,.icon-tcwi-gears line,.icon-tcwi-gears path,.icon-tcwi-gears polygon,.icon-tcwi-gears polyline,.icon-tcwi-gears rect,.icon-tcwi-gift circle,.icon-tcwi-gift ellipse,.icon-tcwi-gift g,.icon-tcwi-gift line,.icon-tcwi-gift path,.icon-tcwi-gift polygon,.icon-tcwi-gift polyline,.icon-tcwi-gift rect,.icon-tcwi-globe circle,.icon-tcwi-globe ellipse,.icon-tcwi-globe g,.icon-tcwi-globe line,.icon-tcwi-globe path,.icon-tcwi-globe polygon,.icon-tcwi-globe polyline,.icon-tcwi-globe rect,.icon-tcwi-open-envelope circle,.icon-tcwi-open-envelope ellipse,.icon-tcwi-open-envelope g,.icon-tcwi-open-envelope line,.icon-tcwi-open-envelope path,.icon-tcwi-open-envelope polygon,.icon-tcwi-open-envelope polyline,.icon-tcwi-open-envelope rect,.icon-tcwi-package circle,.icon-tcwi-package ellipse,.icon-tcwi-package g,.icon-tcwi-package line,.icon-tcwi-package path,.icon-tcwi-package polygon,.icon-tcwi-package polyline,.icon-tcwi-package rect,.icon-tcwi-phone circle,.icon-tcwi-phone ellipse,.icon-tcwi-phone g,.icon-tcwi-phone line,.icon-tcwi-phone path,.icon-tcwi-phone polygon,.icon-tcwi-phone polyline,.icon-tcwi-phone rect,.icon-tcwi-plant circle,.icon-tcwi-plant ellipse,.icon-tcwi-plant g,.icon-tcwi-plant line,.icon-tcwi-plant path,.icon-tcwi-plant polygon,.icon-tcwi-plant polyline,.icon-tcwi-plant rect,.icon-tcwi-recycle circle,.icon-tcwi-recycle ellipse,.icon-tcwi-recycle g,.icon-tcwi-recycle line,.icon-tcwi-recycle path,.icon-tcwi-recycle polygon,.icon-tcwi-recycle polyline,.icon-tcwi-recycle rect,.icon-tcwi-ribbon circle,.icon-tcwi-ribbon ellipse,.icon-tcwi-ribbon g,.icon-tcwi-ribbon line,.icon-tcwi-ribbon path,.icon-tcwi-ribbon polygon,.icon-tcwi-ribbon polyline,.icon-tcwi-ribbon rect,.icon-tcwi-sales-tag circle,.icon-tcwi-sales-tag ellipse,.icon-tcwi-sales-tag g,.icon-tcwi-sales-tag line,.icon-tcwi-sales-tag path,.icon-tcwi-sales-tag polygon,.icon-tcwi-sales-tag polyline,.icon-tcwi-sales-tag rect,.icon-tcwi-shield circle,.icon-tcwi-shield ellipse,.icon-tcwi-shield g,.icon-tcwi-shield line,.icon-tcwi-shield path,.icon-tcwi-shield polygon,.icon-tcwi-shield polyline,.icon-tcwi-shield rect,.icon-tcwi-stopwatch circle,.icon-tcwi-stopwatch ellipse,.icon-tcwi-stopwatch g,.icon-tcwi-stopwatch line,.icon-tcwi-stopwatch path,.icon-tcwi-stopwatch polygon,.icon-tcwi-stopwatch polyline,.icon-tcwi-stopwatch rect,.icon-tcwi-store circle,.icon-tcwi-store ellipse,.icon-tcwi-store g,.icon-tcwi-store line,.icon-tcwi-store path,.icon-tcwi-store polygon,.icon-tcwi-store polyline,.icon-tcwi-store rect,.icon-tcwi-thumbs-up circle,.icon-tcwi-thumbs-up ellipse,.icon-tcwi-thumbs-up g,.icon-tcwi-thumbs-up line,.icon-tcwi-thumbs-up path,.icon-tcwi-thumbs-up polygon,.icon-tcwi-thumbs-up polyline,.icon-tcwi-thumbs-up rect,.icon-tcwi-trophy circle,.icon-tcwi-trophy ellipse,.icon-tcwi-trophy g,.icon-tcwi-trophy line,.icon-tcwi-trophy path,.icon-tcwi-trophy polygon,.icon-tcwi-trophy polyline,.icon-tcwi-trophy rect,.icon-tcwi-truck circle,.icon-tcwi-truck ellipse,.icon-tcwi-truck g,.icon-tcwi-truck line,.icon-tcwi-truck path,.icon-tcwi-truck polygon,.icon-tcwi-truck polyline,.icon-tcwi-truck rect,.icon-tcwi-wallet circle,.icon-tcwi-wallet ellipse,.icon-tcwi-wallet g,.icon-tcwi-wallet line,.icon-tcwi-wallet path,.icon-tcwi-wallet polygon,.icon-tcwi-wallet polyline,.icon-tcwi-wallet rect,.icon-truck circle,.icon-truck ellipse,.icon-truck g,.icon-truck line,.icon-truck path,.icon-truck polygon,.icon-truck polyline,.icon-truck rect,.icon-user circle,.icon-user ellipse,.icon-user g,.icon-user line,.icon-user path,.icon-user polygon,.icon-user polyline,.icon-user rect{
    stroke-width:var(--iconWeight);
    stroke-linecap:var(--iconLinecaps);
    stroke-linejoin:var(--iconLinecaps);
  }

.icon-cart circle{
  fill:currentColor !important;
}

.icon__fallback-text{
  clip:rect(0 0 0 0);
  border:0;
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px;
}

.js-drawer-open{
  overflow:hidden;
}

.drawer{
  -webkit-overflow-scrolling:touch;
  background-color:var(--colorDrawers);
  bottom:0;
  box-shadow:0 0 150px rgba(0,0,0,.1);
  color:var(--colorDrawerText);
  display:none;
  max-width:95%;
  overflow:hidden;
  position:fixed;
  top:0;
  transition:transform 0.25s cubic-bezier(0.165, 0.84, 0.44, 1);
  z-index:30;
}

@media screen and (max-height:400px){

.drawer{
    overflow:scroll;
}

    .drawer .drawer__contents{
      height:auto;
    }
  }

.drawer a:not(.btn){
    color:var(--colorDrawerText);
font-size: 18px;
  }

.drawer a:not(.btn):hover{
      color:var(--colorDrawerText);
    }

.drawer input,.drawer textarea{
    border-color:var(--colorDrawerBorder);
  }

.drawer .btn{
    background-color:var(--colorDrawerButton);
    color:var(--colorDrawerButtonText);
  }

.drawer--left{
  left:-350px;
  width:350px;
}

.drawer--left.drawer--is-open{
    display:block;
    transform:translateX(350px);
    transition-duration:0.35s;
  }

.drawer--right{
  right:-350px;
  width:350px;
}

@media only screen and (min-width:769px){

.drawer--right{
    right:-450px;
    width:450px;
}
  }

.drawer--right.drawer--is-open {
    display: block;
    transform: translateX(-350px);
    transition-duration: 0.45s;
    z-index: 99999999 !important;
}

@media only screen and (max-width: 767px) {
  a[href*="/account/login"],
  .site-header__account,
  .header__icon--account {
    display: none !important;
  }
}

@media only screen and (min-width:769px){

.drawer--right.drawer--is-open{
      transform:translateX(-450px);
  }
    }

.js-drawer-closing .main-content:after,.js-drawer-open .main-content:after{
  background-color:var(--colorModalBg);
  bottom:0;
  content:"";
  display:block;
  left:0;
  opacity:0;
  position:fixed;
  right:0;
  top:0;
  z-index:26;
}

.js-drawer-open .main-content:after{
  animation:overlay-on 0.35s forwards;
}

.js-drawer-closing .main-content:after{
  animation:overlay-off 0.25s forwards;
}

.drawer__fixed-header,.drawer__footer,.drawer__header,.drawer__scrollable{
  padding-left:var(--drawer-gutter);
  padding-right:var(--drawer-gutter);
}

.drawer__header{
  border-bottom:1px solid;
  border-bottom-color:var(--colorDrawerBorder);
  display:table;
  margin-bottom:0;
  min-height:70px;
  padding:11.53846px 0;
  width:100%;
}

.drawer__fixed-header{
  min-height:70px;
  overflow:visible;
}

.drawer__fixed-header,.drawer__header{
  height:auto;
}

@media only screen and (min-width:769px){
  .drawer__fixed-header,.drawer__header{
    min-height:80px;
  }
}

.drawer__close,.drawer__title{
  display:table-cell;
  vertical-align:middle;
}

.drawer__title{
  width:100%;
}

.drawer__close{
  text-align:center;
  width:1%;
}

.drawer__close-button{
  color:inherit;
  height:100%;
  padding:0 var(--drawer-gutter);
  position:relative;
  right:calc(var(--drawer-gutter)*-1);
}

.drawer__close-button:active{
    background-color:var(--colorDrawersDim);
  }

.drawer__close-button .icon{
    height:28px;
    width:28px;
  }

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

.drawer__close--left .drawer__close-button{
    left:calc(var(--drawer-gutter)*-1);
    right:auto;
  }

.drawer__contents{
  display:flex;
  flex-direction:column;
  height:100%;
}

.drawer__inner,.drawer__scrollable{
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  overflow-y:hidden;
}

.drawer__scrollable{
  -webkit-overflow-scrolling:touch;
  overflow:hidden;
  overflow-y:auto;
  padding-top:var(--drawer-gutter);
}

.drawer__footer{
  border-top:1px solid;
  border-top-color:var(--colorDrawerBorder);
  padding-bottom:var(--drawer-gutter);
  padding-top:15px;
}

@media only screen and (min-width:769px){

.drawer__footer{
    padding-top:22.22222px;
}
  }

.drawer__inner.is-loading .drawer__scrollable{
    opacity:0.4;
    transition:opacity 0.3s ease 0.7s;
  }

.cart-notes{
  height:60px;
  margin-bottom:10px;
  margin-top:10px;
  min-height:60px;
}

@media only screen and (min-width:769px){

.cart-notes{
    height:80px;
    min-height:80px;
}
  }

.placeholder-svg{
  fill:#999;
  background-color:#e1e1e1;
  display:block;
  height:100%;
  max-height:100%;
  max-width:100%;
  padding:30px 0;
  width:100%;
}

.placeholder-noblocks{
  padding:40px;
  text-align:center;
}

.placeholder-content{
  animation:placeholder-shimmer 1.3s linear infinite;
  background-size:400% 100%;
  border-radius:4px;
  margin-bottom:20px;
  overflow:hidden;
}

@media only screen and (max-width:768px){

.placeholder-content{
    margin-left:auto;
    margin-right:auto;
}
  }

.animation-delay-20{animation-delay:1.2s;}

.animation-delay-19{animation-delay:1.14s;}

.animation-delay-18{animation-delay:1.08s;}

.animation-delay-17{animation-delay:1.02s;}

.animation-delay-16{animation-delay:0.96s;}

.animation-delay-15{animation-delay:0.9s;}

.animation-delay-14{animation-delay:0.84s;}

.animation-delay-13{animation-delay:0.78s;}

.animation-delay-12{animation-delay:0.72s;}

.animation-delay-11{animation-delay:0.66s;}

.animation-delay-10{animation-delay:0.6s;}

.animation-delay-9{animation-delay:0.54s;}

.animation-delay-8{animation-delay:0.48s;}

.animation-delay-7{animation-delay:0.42s;}

.animation-delay-6{animation-delay:0.36s;}

.animation-delay-5{animation-delay:0.3s;}

.animation-delay-4{animation-delay:0.24s;}

.animation-delay-3{animation-delay:0.18s;}

.animation-delay-2{animation-delay:0.12s;}

.appear-delay-20{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.3s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.4s;}

.appear-delay-19{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.24s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.34s;}

.appear-delay-18{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.18s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.28s;}

.appear-delay-17{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.12s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.22s;}

.appear-delay-16{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.06s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.16s;}

.appear-delay-15{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.1s;}

.appear-delay-14{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.94s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.04s;}

.appear-delay-13{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.88s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.98s;}

.appear-delay-12{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.82s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.92s;}

.appear-delay-11{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.76s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.86s;}

.appear-delay-10{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;}

.appear-delay-9{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.64s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.74s;}

.appear-delay-8{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.58s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.68s;}

.appear-delay-7{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.52s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.62s;}

.appear-delay-6{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.46s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.56s;}

.appear-delay-5{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;}

.appear-delay-4{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.34s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.44s;}

.appear-delay-3{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.28s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.38s;}

.appear-delay-2{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.22s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.32s;}

.appear-delay-1{transition:transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s,opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;}

.animation-cropper{
  display:inline-flex;
  overflow:hidden;
  padding-bottom: 2px
}

.image-wrap{
  background:var(--colorSmallImageBg);
  overflow:hidden;
  position:relative;
}

.image-wrap img:not([role=presentation]){
  display:block;
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  position:absolute;
  width:100%;
}

.image-wrap .animate-me,.image-wrap svg{
    opacity:0;
  }

.no-js .image-wrap .animate-me,.no-js .image-wrap svg{
      opacity:1;
  }

.aos-animate .image-wrap .animate-me,.aos-animate .image-wrap svg{
    animation:fade-in 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  }

.aos-animate[data-aos=row-of-3]:nth-child(3n+2) .image-wrap img{
    animation-delay:150ms;
}

.aos-animate[data-aos=row-of-3]:nth-child(3n+3) .image-wrap img{
    animation-delay:300ms;
}

.aos-animate[data-aos=row-of-4]:nth-child(4n+2) .image-wrap img{
    animation-delay:120ms;
}

.aos-animate[data-aos=row-of-4]:nth-child(4n+3) .image-wrap img{
    animation-delay:240ms;
}

.aos-animate[data-aos=row-of-4]:nth-child(4n+4) .image-wrap img{
    animation-delay:360ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+2) .image-wrap img{
    animation-delay:75ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+3) .image-wrap img{
    animation-delay:150ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+4) .image-wrap img{
    animation-delay:225ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+5) .image-wrap img{
    animation-delay:300ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+2) .image-wrap img{
    animation-delay:50ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+3) .image-wrap img{
    animation-delay:100ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+4) .image-wrap img{
    animation-delay:150ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+5) .image-wrap img{
    animation-delay:200ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+6) .image-wrap img{
    animation-delay:250ms;
}

.aos-animate[data-aos=row-of-3]:nth-child(3n+2) .collection-image{
    animation-delay:150ms;
}

.aos-animate[data-aos=row-of-3]:nth-child(3n+3) .collection-image{
    animation-delay:300ms;
}

.aos-animate[data-aos=row-of-4]:nth-child(4n+2) .collection-image{
    animation-delay:120ms;
}

.aos-animate[data-aos=row-of-4]:nth-child(4n+3) .collection-image{
    animation-delay:240ms;
}

.aos-animate[data-aos=row-of-4]:nth-child(4n+4) .collection-image{
    animation-delay:360ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+2) .collection-image{
    animation-delay:75ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+3) .collection-image{
    animation-delay:150ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+4) .collection-image{
    animation-delay:225ms;
}

.aos-animate[data-aos=row-of-5]:nth-child(5n+5) .collection-image{
    animation-delay:300ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+2) .collection-image{
    animation-delay:50ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+3) .collection-image{
    animation-delay:100ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+4) .collection-image{
    animation-delay:150ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+5) .collection-image{
    animation-delay:200ms;
}

.aos-animate[data-aos=row-of-6]:nth-child(6n+6) .collection-image{
    animation-delay:250ms;
}

.loading:after,.loading:before,.unload:after,.unload:before{
  background:var(--colorBody);
  content:"";
  height:3px;
  left:50%;
  margin:-1px 0 0 -50px;
  opacity:0;
  position:absolute;
  top:50%;
  width:100px;
  z-index:4;
}

.no-js .loading:after,.no-js .loading:before,.no-js .unload:after,.no-js .unload:before{
    display:none;
}

.loading:before,.unload:before{
  background:var(--colorTextBody);
  opacity:1;
}

.loading:after,.unload:after{
  animation:preloading 0.5s ease 0.3s infinite;
  opacity:0;
}

.loading--delayed:before{
  animation-delay:0.8s !important;
  animation-duration:1s !important;
}

.loading--delayed:after{
  animation-delay:1.3s !important;
}

.appear-animation{
  opacity:0;
  transform:translateY(60px);
}

[data-disable-animations=true] .appear-animation{
    opacity:1;
    transform:none;
}

.js-drawer-open .appear-animation{
  opacity:1;
  transform:translateY(0px);
}

.js-drawer-closing .appear-animation{
  transition-delay:0.5s;
  transition-duration:0s;
}

.shopify-product-reviews-badge{
  display:block;
  min-height:25px;
}

.product-single__meta .spr-icon{
  font-size:14px !important;
}

.product-single__meta .spr-icon{
  vertical-align:text-bottom;
}

.spr-header-title{
  font-family:var(--typeHeaderPrimary), var(--typeHeaderFallback);
  font-weight:var(--typeHeaderWeight);
  letter-spacing:var(--typeHeaderSpacing);
  line-height:var(--typeHeaderLineHeight);
}

[data-type_header_capitalize=true] .spr-header-title{
    text-transform:uppercase;
}

.spr-header-title{
  font-size:calc(var(--typeHeaderSize)*0.7) !important;
  margin-bottom:20px !important;
}

.spr-container.spr-container{
  border:0;
  padding:0;
  text-align:center;
}

.spr-container .spr-summary-actions-newreview{
    float:none;
  }

.spr-container .spr-summary-starrating{
    justify-content:center;
  }

.spr-container .spr-summary.spr-summary{
    text-align:center;
  }

.spr-container .spr-form-label,.spr-container .spr-review-content-body{
    font-size:calc(var(--typeBaseSize) - 2px);
    line-height:1.563;
  }

.spr-container .spr-review-header-byline{
    font-size:11px;
    opacity:1;
  }

.spr-container .spr-review-header-byline strong{
      font-weight:400;
    }

.spr-container .spr-review{
    border:none !important;
  }

.spr-container .spr-form-label{
    display:block;
    margin-top:20px;
    text-align:left;
  }

.spr-container .spr-summary-actions,.spr-container .spr-summary-caption{
    display:block;
  }

.spr-container .spr-summary-actions{
    margin-top:20px;
  }

.spr-form-contact-name label{
  text-align:left;
}

@media only screen and (min-width:769px){
    .product-full-width .spr-container.index-section{
      margin-top:0;
    }

    .product-full-width .spr-container .spr-form-title{
      display:none;
    }

    .product-full-width .spr-container .spr-form{
      border-top:none;
      margin:0 auto;
      max-width:650px;
    }

    .product-full-width .spr-container .spr-reviews{
      display:flex;
      flex-wrap:wrap;
      margin-top:45px;
    }

    [data-type_headers_align_text=true] .product-full-width .spr-container .spr-reviews{
        justify-content:center;
    }

    .product-full-width .spr-container .spr-review:first-child{
      margin-top:0;
    }

    .product-full-width .spr-container .spr-review{
      flex:1 1 40%;
      margin-bottom:22px;
      margin-left:22px;
      padding:20px;
    }

    [data-type_headers_align_text=true] .product-full-width .spr-container .spr-review{
        max-width:30%;
    }

      .product-full-width .spr-container .spr-review:nth-child(3n+1){
        margin-left:0;
      }

      .product-full-width .spr-container .spr-review:last-child{
        padding-bottom:20px;
      }
  }

.grid-product .spr-badge[data-rating="0.0"]{
    display:none;
  }

.grid-product .spr-badge{
    text-align:center;
  }

.grid-product .spr-badge-starrating{
    display:inline-block;
    font-size:0.65em;
  }

.grid-product .spr-icon{
    margin-right:1px;
  }

.grid-product .spr-badge-caption{
    font-size:11px;
    margin-left:4px;
    vertical-align:bottom;
  }

@media only screen and (min-width:769px){

.grid-product .spr-badge-caption{
      font-size:12px;
  }
    }

.spr-content .spr-review-header-title{
  font-family:var(--typeBasePrimary), var(--typeBaseFallback);
  font-size:calc(var(--typeBaseSize)*0.92);
  font-weight:700;
  letter-spacing:var(--typeBaseSpacing);
  line-height:var(--typeBaseLineHeight);
  text-transform:none;
}

@media only screen and (min-width:769px){

.spr-content .spr-review-header-title{
    font-size:var(--typeBaseSize);
}
  }

.spr-pagination{
  flex:1 1 100%;
}

.spr-review-reportreview{
  float:none !important;
}

.spr-review-reportreview{
  display:block;
  opacity:0.4;
}

.spr-summary-starrating{
  font-size:0.8em;
}

tool-tip[data-tool-tip-open=true] .tool-tip__inner{
  padding:45px;
}

@media only screen and (max-width:768px){

tool-tip[data-tool-tip-open=true] .tool-tip__inner{
    padding:45px 20px 20px;
}
  }

.tool-tip__close{
  padding:10px;
}

[data-center-text=true] product-recommendations[data-intent=complementary] .grid-product__colors{
    justify-content:flex-start;
  }

[data-center-text=true] product-recommendations[data-intent=complementary] .grid-product .spr-badge{
    text-align:left;
  }

[data-center-text=true] product-recommendations[data-intent=complementary] .grid-product .spr-badge-caption{
    font-size:medium;
  }

[data-product-blocks] product-recommendations[data-intent=complementary] .spr-starrating{
  margin-bottom:0;
}

@media only screen and (max-width:768px){

predictive-search .search__results{
      margin-left:-20px;
      margin-right:-10px;
      width:calc(100% + 30px);
  }
    }

@media only screen and (max-width:768px){

predictive-search form{
      margin:0 10px 0 20px;
  }
    }

[data-center-text=true] .footer-promotions{
    text-align:center;
}

@media only screen and (max-width:768px){
    .footer-promotions .grid__item{
      margin-bottom:32px;
    }

      .footer-promotions .grid__item:last-child{
        margin-bottom:0;
      }
  }

.site-footer{
  background-color:#1d705b;
  color:#ffffff;
  padding-bottom:30px;
  border-top: none !important;
}

@media only screen and (min-width:769px){

.site-footer{
    padding-bottom:60px;
    padding-top:60px;
}
  }

.site-footer .footer__collapsible{
    font-size:calc(var(--typeBaseSize)*0.85);
  }

@media only screen and (min-width:769px){
    .site-footer input,.site-footer select,.site-footer textarea{
      font-size:calc(var(--typeBaseSize)*0.85);
    }
  }

@media only screen and (max-width:768px){

[data-center-text=true] .site-footer{
    text-align:center;
}

.site-footer{
    padding-bottom:0;
}

    .site-footer .grid__item{
      padding-bottom:5px;
    }

      .site-footer .grid__item:after{
        border-bottom:1px solid;
        border-bottom-color:var(--colorFooterText);
        content:"";
        display:block;
        opacity:0.12;
      }

      .site-footer .grid__item:first-child{
        padding-top:7.5px;
      }

      .site-footer .grid__item:last-child:after{
        display:none;
      }
  }

.site-footer a{
    color:#ffffff;
  }

.footer__small-text{
  font-size:max(calc(var(--typeBaseSize)*0.7), 12px);
  margin:0;
  padding:7.5px 0;
  text-align:center;
}

ul+.footer__small-text{
    padding-top:15px;
}

.footer__clear{
  clear:both;
  height:30px;
}

.footer__section{
  margin-bottom:15px;
}

@media only screen and (min-width:769px){

.footer__section{
    margin-bottom:0;
    margin-top:30px;
}
  }

@media only screen and (min-width:769px){
  .footer__item-padding{
    padding-right:60px;
  }
}

.footer__title{
  color:#ffffff;
  font-weight: 600;
}

@media only screen and (min-width:769px){

.footer__title{
    margin-bottom:20px;
}
  }

@media only screen and (max-width:768px){

[data-center-text=true] .footer__title{
    text-align:center;
}
  }

.site-footer__linklist{
  margin:0;
}

.site-footer__linklist a{
    color:currentColor;
    display:inline-block;
    padding:4px 0;
  }

.footer__newsletter{
  display:inline-block;
  max-width:300px;
  position:relative;
  width:100%;
}

.footer__newsletter-input{
  background-color:var(--colorFooter);
  border:0;
  border-bottom:2px solid;
  border-bottom-color:var(--colorFooterText);
  border-radius:2;
  color:var(--colorFooterText);
  max-width:300px;
  padding:10px 45px 10px 5px;
  width:100%;
}

.footer__newsletter-input:focus{
    border:0;
    border-bottom:2px solid;
    border-bottom-color:var(--colorFooterText);
  }

.footer__newsletter-input::-webkit-input-placeholder{
    color:var(--colorFooterText);
    opacity:1;
  }

.footer__newsletter-input:-moz-placeholder{
    color:var(--colorFooterText);
    opacity:1;
  }

.footer__newsletter-input::-moz-placeholder{
    color:var(--colorFooterText);
    opacity:1;
  }

.footer__newsletter-input:-ms-input-placeholder{
    color:var(--colorFooterText);
    opacity:1;
  }

.footer__newsletter-input::-ms-input-placeholder{
    color:var(--colorFooterText);
    opacity:1;
  }

.footer__newsletter-input--active{
  padding-right:80px;
}

.footer__newsletter-btn{
  color:var(--colorFooterText);
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
}

.footer__newsletter-btn .icon{
    height:24px;
    width:26px;
  }

.footer__newsletter-input--active+.footer__newsletter-btn .icon{
      display:none;
    }

.footer__newsletter-input--active+.footer__newsletter-btn .footer__newsletter-btn-label{
      display:block;
    }

.footer__newsletter-btn-label{
  display:none;
  font-size:calc(var(--typeBaseSize)*0.85);
}

.footer__logo{
  margin:15px 0;
}

@media only screen and (min-width:769px){

.footer__logo{
    margin:0 0 20px;
}
  }

.footer__logo a{
    display:block;
  }

.footer__logo img{
    display:inline-block;
    max-height:100%;
    transform:translateZ(0);
  }

.footer__social{
  margin:0;
}

form+.footer__social{
    margin-top:30px;
}

.footer__social li{
    display:inline-block;
    margin:0 15px 15px 0;
  }

.footer__social a{
    display:block;
  }

.footer__social .icon{
    height:22px;
    width:22px;
  }

@media only screen and (min-width:769px){

.footer__social .icon{
      height:24px;
      width:24px;
  }
    }

.footer__social .icon.icon--wide{
      width:40px;
    }

@media only screen and (max-width:768px){

.footer__collapsible{
    padding:0 0 15px 0;
}
  }

@media only screen and (max-width:768px){

.footer_collapsible--disabled{
    padding-top:15px;
}
  }

.collapsible-content__inner p a:after{
    border-bottom:2px solid;
    border-bottom-color:var(--colorFooterText);
    bottom:-2px;
    content:"";
    left:0;
    position:absolute;
    transition:width 0.5s ease;
    width:0;
  }

.collapsible-content__inner p a{
    border-bottom:2px solid;
    border-color:var(--colorFooterTextAlpha01);
    position:relative;
    -webkit-text-decoration:none;
    text-decoration:none;
  }

.collapsible-content__inner p a:focus:after,.collapsible-content__inner p a:hover:after{
      width:100%;
    }

.site-footer select{
    background-image:var(--urlIcoSelectFooter);
  }

[data-center-text=true] .payment-icons{
    text-align:center;
}

.payment-icons{
  cursor:default;
  -webkit-user-select:none;
             -moz-user-select:none;
          user-select:none;
}

.payment-icons li{
    cursor:default;
    margin:0 4px 0;
  }

.errors,.note{
  border:1px solid transparent;
  border-radius:0;
  margin-bottom:15px;
  padding:6px 12px;
  text-align:left;
}

.errors ol,.errors ul,.note ol,.note ul{
    margin-bottom:0;
    margin-top:0;
  }

.errors li:last-child,.note li:last-child{
    margin-bottom:0;
  }

.errors p,.note p{
    margin-bottom:0;
  }

.note{
  border-color:var(--colorBorder);
}

.errors ul{
    list-style:disc outside;
    margin-left:20px;
  }

.note--success{
  background-color:#ecfef0;
  border-color:#56ad6a;
  color:#56ad6a;
}

.note--success a{
    color:#56ad6a;
    -webkit-text-decoration:underline;
    text-decoration:underline;
  }

.note--success a:hover{
      -webkit-text-decoration:none;
      text-decoration:none;
    }

.errors,.form-error{
  background-color:#fff6f6;
  border-color:#d02e2e;
  color:#d02e2e;
}

.errors a,.form-error a{
    color:#d02e2e;
    -webkit-text-decoration:underline;
    text-decoration:underline;
  }

.errors a:hover,.form-error a:hover{
      -webkit-text-decoration:none;
      text-decoration:none;
    }

.pagination{
  margin:0;
  padding:60px 0;
  text-align:center;
}

.pagination>span{
    display:inline-block;
    line-height:1;
    vertical-align:middle;
  }

.pagination a{
    display:inline-block;
  }

.pagination .page.current,.pagination a{
    padding:8px 12px;
  }

.pagination .page.current{
    opacity:0.3;
  }

.pagination .next,.pagination .prev{
    background:var(--colorBtnPrimary);
    color:var(--colorBtnPrimaryText);
    margin:0 10px;
    width:43px;
  }

@media only screen and (max-width:768px){

.pagination .next,.pagination .prev{
      width:35px;
  }
    }

.pagination .next a,.pagination .prev a{
      align-items:center;
      display:flex;
      justify-content:center;
      padding:15px;
    }

.pagination .next .icon,.pagination .prev .icon{
      color:var(--colorBtnPrimaryText);
      height:14px;
      width:13px;
    }

@media only screen and (max-width:768px){

.pagination .next .icon,.pagination .prev .icon{
        height:12px;
        width:12px;
    }
      }

.rte{
  margin-bottom:7.5px;
}

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

@media only screen and (min-width:769px){

.rte{
    margin-bottom:15px;
}
  }

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

.rte+.rte{
    margin-top:30px;
  }

.rte ol,.rte p,.rte table,.rte ul{
    margin-bottom:15px;
  }

@media only screen and (min-width:769px){

.rte ol,.rte p,.rte table,.rte ul{
      margin-bottom:25px;
  }
    }

.rte ol:last-child,.rte p:last-child,.rte table:last-child,.rte ul:last-child{
      margin-bottom:0;
    }

.rte ul ul{
      margin-bottom:0;
    }

.rte h1,.rte h2,.rte h3,.rte h4,.rte h5,.rte h6{
    margin-bottom:25px;
    margin-top:60px;
  }

.rte h1:first-child,.rte h2:first-child,.rte h3:first-child,.rte h4:first-child,.rte h5:first-child,.rte h6:first-child{
      margin-top:0;
    }

.rte h1 a,.rte h2 a,.rte h3 a,.rte h4 a,.rte h5 a,.rte h6 a{
      -webkit-text-decoration:none;
      text-decoration:none;
    }

.rte meta:first-child+h1,.rte meta:first-child+h2,.rte meta:first-child+h3,.rte meta:first-child+h4,.rte meta:first-child+h5,.rte meta:first-child+h6{
      margin-top:0;
    }

.rte>div{
    margin-bottom:15px;
  }

.rte>div:last-child{
      margin-bottom:0;
    }

.rte li{
    margin-bottom:0;
  }

.rte table{
    table-layout:fixed;
  }

.rte--block{
  margin-bottom:8px;
}

@media only screen and (min-width:769px){

.rte--block{
    margin-bottom:12px;
}
  }

.rte-setting>p:last-child{
    margin-bottom:0;
  }

.rte a,.rte-setting a{
    -webkit-text-decoration:none;
    text-decoration:none;
  }

.rte img,.rte-setting img{
    height:auto;
  }

.rte a:not(.rte__image):not(.btn):not(.spr-summary-actions-newreview),.rte-setting a:not(.rte__image):not(.btn):not(.spr-summary-actions-newreview){
    border-bottom:1px solid;
    border-bottom-color:var(--colorTextBodyAlpha015);
    display:inline-block;
    position:relative;
    -webkit-text-decoration:none;
    text-decoration:none;
  }

.rte a:not(.btn):not(.spr-summary-actions-newreview):after,.rte-setting a:not(.btn):not(.spr-summary-actions-newreview):after{
    border-bottom:2px solid currentColor;
    bottom:-2px;
    content:"";
    left:0;
    position:absolute;
    transition:width 0.5s ease;
    width:0;
  }

.rte a:not(.btn):focus:after,.rte a:not(.btn):hover:after,.rte-setting a:not(.btn):focus:after,.rte-setting a:not(.btn):hover:after{
      width:100%;
    }

.rte a.rte__image:after,.rte-setting a.rte__image:after{
    content:none;
  }

.text-center .rte ol,.text-center .rte ul,.text-center.rte ol,.text-center.rte ul{
    list-style-position:inside;
    margin-left:0;
  }

.rte--nomargin{
  margin-bottom:0;
}

.header-layout{
  display:flex;
  justify-content:space-between;
}

       .header-wrapper--fixed-bg {
  background-color: #ffffff !important;
  z-index: 10;
}


.header-layout--center{
  align-items:center;
}

.header-item{
  align-items:center;
  display:flex;
  flex:1 1 auto;
}

.header-item--logo{
  flex:0 0 auto;
}

.header-item--icons{
  flex:0 1 auto;
  justify-content:flex-end;
}

.header-layout--left-center .header-item--icons,.header-layout--left-center .header-item--logo{
    flex:0 0 200px;
    max-width:50%;
  }

@media only screen and (min-width:769px){

.header-layout--left-center .header-item--icons,.header-layout--left-center .header-item--logo{
      min-width:130px;
  }
    }

@media only screen and (min-width:769px){

.header-layout[data-logo-align=center] .header-item--logo{
      margin:0 30px;
  }
    }

.header-layout[data-logo-align=center] .header-item--icons,.header-layout[data-logo-align=center] .header-item--navigation{
    flex:1 1 130px;
  }

.header-layout[data-logo-align=left] .site-header__logo{
    margin-right:10px;
  }

.header-item--logo-split{
  align-items:center;
  display:flex;
  flex:1 1 100%;
  justify-content:center;
}

.header-item--logo-split .header-item:not(.header-item--logo){
    flex:1 1 20%;
    text-align:center;
  }

.header-item--split-left{
  justify-content:flex-end;
}

.header-item--left .site-nav{
    margin-left:-12px;
  }

@media only screen and (max-width:768px){

.header-item--left .site-nav{
      margin-left:-7.5px;
  }
    }

.header-item--icons .site-nav{
    margin-right:-12px;
  }

@media only screen and (max-width:768px){

.header-item--icons .site-nav{
      margin-right:-7.5px;
  }
    }

.site-header{
  background:var(--colorNav);
  padding:7px 0;
  position:relative;
}

@media only screen and (min-width:769px){

.site-header{
    padding:20px 0;
}

.toolbar+.header-sticky-wrapper .site-header{
      border-top:1px solid;
      border-top-color:var(--colorHeaderTextAlpha01);
}
  }

.site-header--stuck{
  left:0;
  position:fixed;
  right:0;
  top:0;
  transform:translate3d(0, -100%, 0);
  transition:none;
  z-index:20;
}

.js-drawer-open--search .site-header--stuck{
    z-index:28;
}

@media only screen and (min-width:769px){

.site-header--stuck{
    padding:10px 0;
}
  }

@media screen and (min-width:700px) and (max-height:550px){
  .site-header--stuck{
    position:static;
  }
}

.site-header--opening{
  transform:translateZ(0);
  transition:transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.site-header__logo{
  display:block;
  font-size:30px;
  margin:10px 0;
  position:relative;
  z-index:6;
}

@media only screen and (min-width:769px){

.text-center .site-header__logo{
      margin:10px auto;
      padding-right:0;
}
  }

.header-layout[data-logo-align=center] .site-header__logo{
    margin-left:auto;
    margin-right:auto;
    text-align:center;
}

.site-header__logo a{
    max-width:100%;
  }

.site-header__logo a,.site-header__logo a:hover{
    -webkit-text-decoration:none;
    text-decoration:none;
  }

.site-header__logo img{
    display:block;
  }

.site-header .site-header__logo img{
      left:50%;
      position:absolute;
      top:50%;
      transform:translate(-50%, -50%);
  }

.site-header__logo-link{
  align-items:center;
  color:var(--colorNavText);
  display:flex;
  position:relative;
}

.site-header__logo-link:hover{
    color:var(--colorNavText);
  }

@media only screen and (max-width:768px){

.site-header__logo-link{
    margin:0 auto;
}
  }

.header-sticky-wrapper{
  position:relative;
  z-index:28;
}

.js-drawer-open:not(.js-drawer-open--search) .header-sticky-wrapper{
    z-index:6;
}

.header-wrapper--sticky{
  background:none;
  background:linear-gradient(180deg, rgba(0,0,0,.3) 0%,transparent);
  left:0;
  position:absolute;
  right:0;
  top:0;
  z-index:6;
}

.header-wrapper--sticky .site-header:not(.site-header--stuck){
    background:none;
  }

.js-drawer-open--search .header-wrapper--sticky{
    z-index:28;
}

.site-header__search-container{
  bottom:200%;
  display:none;
  height:100%;
  left:0;
  overflow:hidden;
  position:absolute;
  right:0;
  z-index:28;
}

.site-header__search-container.is-active{
    bottom:0;
    display:block;
    overflow:visible;
  }

.site-header__search{
  background-color:var(--colorBody);
  bottom:0;
  box-shadow:0 15px 45px rgba(0,0,0,.1);
  color:var(--colorTextBody);
  display:flex;
  left:0;
  position:absolute;
  right:0;
  top:0;
  transform:translate3d(0, -110%, 0);
  z-index:28;
}

.site-header__search .page-width{
    align-items:stretch;
    display:flex;
    flex:1 1 100%;
  }

@media only screen and (max-width:768px){

.site-header__search .page-width{
      padding:0;
  }
    }

.is-active .site-header__search{
    transform:translateZ(0);
}

.site-header__search .icon{
    height:30px;
    width:30px;
  }

.site-header__search-input{
  border:0;
  flex:1 1 auto;
  width:100px;
}

.site-header__search-input:focus{
    border:0;
    outline:0;
  }

.site-header__search-btn{
  padding:0 15px;
}

@media only screen and (min-width:769px){
  .site-header__search-btn--submit{
    padding:0 15px 0 0;
  }

    .site-header__search-btn--submit .icon{
      height:28px;
      position:relative;
      top:-1px;
      width:28px;
    }
}

.predictive-results{
  background-color:var(--colorBody);
  box-shadow:0 10px 20px rgba(0,0,0,.09);
  color:var(--colorTextBody);
  left:0;
  max-height:70vh;
  max-height:calc(90vh - 100%);
  overflow:auto;
  position:absolute;
  right:0;
  top:100%;
}

@media only screen and (min-width:769px){

.predictive-results{
    max-height:calc(100vh - 100% - 33px);
}
  }

.predictive__label{
  border-bottom:1px solid;
  border-bottom-color:var(--colorBorder);
  margin-bottom:20px;
  padding-bottom:5px;
}

.predictive-result__layout{
  display:flex;
  flex-wrap:wrap;
  margin-left:-10px;
  margin-right:-10px;
  padding:10px;
}

.predictive-result__layout>div{
    margin:0 10px 30px;
  }

.predictive-result__layout>div:last-child{
      margin-bottom:0;
    }

.predictive-result__layout [data-type-products]{
    flex:1 1 60%;
    margin-bottom:0;
  }

@media only screen and (max-width:768px){

.predictive-result__layout [data-type-products]{
      margin-left:-17px;
  }

html[dir=rtl] .predictive-result__layout [data-type-products]{
        margin-left:0;
        margin-right:-17px;
  }
    }

.predictive-result__layout [data-type-products] .grid-product__image{
      height:auto;
      opacity:1;
    }

.predictive-result__layout [data-type-collections],.predictive-result__layout [data-type-pages]{
    flex:1 1 200px;
  }

.predictive-result__layout [data-type-articles]{
    flex:1 1 60%;
  }

.predictive-result__layout [data-type-articles] .grid-product__link--inline{
      gap:10px;
    }

.predictive__image-wrap{
  bottom:0;
  left:0;
  position:absolute;
  right:0;
  top:0;
}

.predictive__image-wrap img{
    -o-object-position:50% 0;
       object-position:50% 0;
  }

.predictive-results__footer{
  padding:0 0 30px;
}

.search-bar{
  max-width:100%;
}

.search-bar--page{
  margin-top:-15px;
  max-width:300px;
}

[data-type_headers_align_text=true] .search-bar--page{
    margin:-15px auto 0;
}

.search-bar--drawer{
  border-bottom:1px solid;
  border-bottom-color:var(--colorDrawerBorder);
  margin-bottom:15px;
  padding-bottom:15px;
}

.search-bar--drawer input{
    border:0;
  }

.search-bar .icon{
  height:24px;
  vertical-align:middle;
  width:24px;
}

.toolbar{
  background:var(--colorNav);
  color:var(--colorNavText);
  font-size:calc(var(--typeBaseSize)*0.85);
}

.toolbar a{
    color:var(--colorNavText);
  }

.site-header--stuck .toolbar{
    display:none;
}

.toolbar--transparent{
  background-color:transparent;
  border-bottom:none;
  color:#000000;
  display: none!important;
}

.toolbar--transparent a{
    color:#000000;
  }

.toolbar--transparent .toolbar__content{
    border-bottom:1px solid hsla(0,0%,100%,.2);
  }

.toolbar__content{
  align-items:center;
  display:flex;
  justify-content:flex-end;
}

.toolbar__item{
  flex:0 1 auto;
  padding:0 5px;
}

.toolbar__item:first-child{
    padding-left:0;
  }

.toolbar__item:last-child{
    padding-right:0;
  }

.toolbar__item .faux-select,.toolbar__item select{
    font-size:14px;
    padding-bottom:5px;
    padding-left:5px;
    padding-top:5px;
  }

.toolbar__item--menu{
  flex:1 1 auto;
}

.toolbar__menu{
  margin-left:-10px;
}

.toolbar__menu a{
    display:block;
    padding:5px 10px;
  }

.toolbar__social{
  text-align:right;
}

.toolbar__social{
  text-align:left;
}

.toolbar__social a{
    display:block;
    padding:5px;
  }

.toolbar__social .icon{
    height:16px;
    position:relative;
    top:-2px;
    width:16px;
  }

.section-header{
  margin-bottom:30px;
 margin-top:10px;
  
}

@media only screen and (min-width:769px){

.section-header{
    margin-bottom: 50px;
    padding-top: 20px;
 margin-top:10px;
}
  }

[data-type_headers_align_text=true] .section-header{
    text-align:center;
}

.section-header select{
    display:inline-block;
    vertical-align:middle;
  }

.section-header--flush{
  margin-bottom:0;
}

.section-header--with-link{
  align-items:center;
  display:flex;
}

.section-header--with-link select{
    flex:0 1 auto;
  }

.section-header--hero{
  color:var(--colorHeroText);
  flex:1 1 100%;
  margin-bottom:0;
  position:relative;
}

.section-header--hero a{
    color:var(--colorHeroText);
  }

.section-header__shadow{
  display:inline-block;
  position:relative;
}

.section-header__shadow:before{
    background:radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
    bottom:0;
    content:"";
    left:0;
    margin:-100px -200px -100px -200px;
    position:absolute;
    right:0;
    top:0;
    z-index:auto;
    z-index:-1;
  }

.section-header__shadow .breadcrumb,.section-header__shadow .section-header__title{
    position:relative;
  }

.section-header__title{
  margin-bottom:0;
}

.section-header--with-link .section-header__title{
    flex:1 1 auto;
}

@media only screen and (min-width:769px){

.section-header--hero .section-header__title{
      font-size:calc(var(--typeHeaderSize)*1.45);
}
  }

.section-header__link{
  flex:0 1 auto;
  margin-top:15px;
}

.section-header--with-link .section-header__link{
    margin-top:0;
}

.section-header--404{
  padding-top:80px;
}

.section-header select{
  margin:10px 0;
}

.section-header p{
  margin:10px 0;
}

.site-nav{
  margin:0;
}

.text-center .site-navigation{
    margin:0 auto;
}

.header-layout--left .site-navigation{
    padding-left:10px;
}

.site-nav__icons{
  white-space:nowrap;
}

.site-nav__item{
  display:inline-block;
  margin:0;
  position:relative;
}

.site-nav__item li{
    display:block;
  }

.site-nav__item .icon-chevron-down{
    height:10px;
    width:10px;
  }

.site-nav__link{
  color:var(--colorNavText);
  display:inline-block;
  padding:7.5px 15px;
  -webkit-text-decoration:none;
  text-decoration:none;
  vertical-align:middle;
  white-space:nowrap;
}

.site-header--heading-style .site-nav__link{
    font-family:var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight:var(--typeHeaderWeight);
    letter-spacing:var(--typeHeaderSpacing);
    line-height:var(--typeHeaderLineHeight);
}

[data-type_header_capitalize=true] .site-header--heading-style .site-nav__link{
    text-transform:uppercase;
}

.site-nav__link:hover{
    color:var(--colorNavText);
  }

.is-light .site-nav__link{
    color:#fff;
}

.is-light .site-nav__link:hover{
      color:#fff;
    }

.site-nav--has-dropdown>.site-nav__link{
    position:relative;
    z-index:6;
}

.site-nav__link .icon-chevron-down{
    margin-left:5px;
  }

@media only screen and (max-width:959px){

.site-nav__link{
    padding:7.5px;
}

.header-layout--center .site-nav__link{
      padding-left:2px;
      padding-right:2px;
}
  }

.site-nav__link--underline{
  position:relative;
}

.site-nav__link--underline:after{
    border-bottom:2px solid;
    border-bottom-color:var(--colorNavText);
    bottom:0;
    content:"";
    display:block;
    left:0;
    margin:0 15px;
    position:absolute;
    right:100%;
    transition:right 0.4s;
  }

[data-disable-animations=true] .site-nav__link--underline:after{
      transition:none;
  }

.is-light .site-nav__item:not(.site-nav--has-dropdown) .site-nav__link--underline:after{
    border-bottom-color:#fff;
}

.site-nav--has-dropdown .site-nav__link--underline:after{
    border-bottom-color:var(--colorTextBody);
}

.site-nav__item:hover .site-nav__link--underline:after{
    right:0;
}

.site-nav__details{
  cursor:pointer;
}

.site-nav--has-dropdown{
  z-index:6;
}

.site-nav--has-dropdown.is-focused,.site-nav--has-dropdown:hover{
    z-index:7;
  }

.site-nav--has-dropdown.is-focused>a,.site-nav--has-dropdown:hover>a{
  color:var(--colorTextBody) !important;
}

.site-nav--has-dropdown.is-focused>a,.site-nav--has-dropdown:hover>a{
  background-color:var(--colorBody);
  opacity:1;
  transition:none;
}

.site-nav__link--icon{
  padding-left:12px;
  padding-right:12px;
}

@media only screen and (max-width:768px){

.site-nav__link--icon{
    padding-left:7.5px;
    padding-right:7.5px;
}

    .site-nav__link--icon+.site-nav__link--icon{
      margin-left:-4px;
    }
  }

.site-nav__link--icon .icon{
    height:30px;
    width:30px;
  }

.site-nav__dropdown{
  background-color:var(--colorBody);
  box-shadow:0 10px 20px rgba(0,0,0,.09);
  display:block;
  left:0;
  margin:0;
  min-width:100%;
  padding:10px 0 5px;
  position:absolute;
  transform:translate3d(0, -12px, 0);
  visibility:hidden;
  z-index:5;
}

details[open]>.site-nav__dropdown{
    display:block;
    transform:translateZ(0);
    transition:all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95);
    visibility:visible;
}

.site-nav__dropdown li{
    margin:0;
  }

.site-nav__dropdown>li{
    position:relative;
  }

.site-nav__dropdown>li>a{
      position:relative;
      z-index:6;
    }

.site-nav__dropdown a{
    background-color:var(--colorBody);
  }

.site-nav__deep-dropdown{
  background-color:var(--colorBody);
  box-shadow:0 10px 20px rgba(0,0,0,.09);
  left:100%;
  margin:0;
  opacity:0;
  position:absolute;
  top:0;
  transform:translate3d(-12px, 0, 0);
  visibility:hidden;
  z-index:5;
}

.is-focused+.site-nav__deep-dropdown,.site-nav__deep-dropdown-trigger:hover .site-nav__deep-dropdown{
    opacity:1;
    transform:translateZ(0);
    transition:all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95);
    visibility:visible;
}

.site-nav__deep-dropdown:before{
    background-image:linear-gradient(90deg, rgba(0,0,0,.09), transparent);
    bottom:0;
    content:"";
    display:block;
    left:0;
    pointer-events:none;
    position:absolute;
    top:0;
    width:10px;
  }

.site-nav__deep-dropdown-trigger:hover .site-nav__dropdown-link--has-children{
    background-color:var(--colorBodyDim);
}

.site-nav__dropdown-link--has-children:focus,.site-nav__dropdown-link--has-children:hover{
    background-color:var(--colorBodyDim);
  }

.site-nav__deep-dropdown-trigger .icon-chevron-down{
  height:10px;
  position:absolute;
  right:10px;
  top:50%;
  transform:rotate(-90deg) translateX(50%);
  width:10px;
}

.mobile-nav{
  margin:calc(var(--drawer-gutter)*-1) calc(var(--drawer-gutter)*-1) 0;
}

.mobile-nav li{
    list-style:none;
    margin-bottom:0;
  }

.mobile-nav__search{
  padding:15px;
}

.mobile-nav__item{
  display:block;
  position:relative;
}

.mobile-nav>.mobile-nav__item{
    background-color:var(--colorDrawers);
}

.mobile-nav__item:after{
    border-bottom:1px solid;
    border-bottom-color:var(--colorDrawerBorder);
    bottom:0;
    content:"";
    left:var(--drawer-gutter);
    position:absolute;
    right:var(--drawer-gutter);
  }

.mobile-nav__faux-link,.mobile-nav__link{
  display:block;
}

.mobile-nav__link--top-level{
  font-size:1.4em;
}

.mobile-nav--heading-style .mobile-nav__link--top-level{
    font-family:var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight:var(--typeHeaderWeight);
    letter-spacing:var(--typeHeaderSpacing);
    line-height:var(--typeHeaderLineHeight);
}

[data-type_header_capitalize=true] .mobile-nav--heading-style .mobile-nav__link--top-level{
    text-transform:uppercase;
}

.mobile-nav__faux-link,.mobile-nav__link,.mobile-nav__toggle .faux-button,.mobile-nav__toggle button{
  color:var(--colorDrawerText);
  padding:15px var(--drawer-gutter);
  -webkit-text-decoration:none;
  text-decoration:none;
}

.mobile-nav__faux-link:active,.mobile-nav__link:active,.mobile-nav__toggle .faux-button:active,.mobile-nav__toggle button:active{
    color:var(--colorDrawerTextDark);
  }

.mobile-nav__faux-link:active,.mobile-nav__link:active,.mobile-nav__toggle .faux-button:active,.mobile-nav__toggle button:active{
    background-color:var(--colorDrawersDim);
  }

.mobile-nav__child-item{
  display:flex;
}

.mobile-nav__child-item .mobile-nav__link,.mobile-nav__child-item a{
    flex:1 1 auto;
  }

.mobile-nav__child-item .collapsible-trigger:not(.mobile-nav__link--button){
    flex:0 0 43px;
  }

.mobile-nav__child-item .collapsible-trigger__icon{
    margin-right:15px;
    padding:0;
  }

.mobile-nav__item--secondary a{
    padding-bottom:5px;
    padding-top:10px;
  }

.mobile-nav__item--secondary:after{
    display:none;
  }

.mobile-nav__item:not(.mobile-nav__item--secondary)+.mobile-nav__item--secondary{
  margin-top:10px;
}

.mobile-nav__has-sublist,.mobile-nav__link--button{
  display:flex;
}

.mobile-nav__has-sublist>*,.mobile-nav__link--button>*{
    flex:1 1 auto;
    word-break:break-word;
  }

.mobile-nav__link--button{
  padding:0;
  text-align:left;
  width:100%;
}

.mobile-nav__toggle{
  flex:0 1 auto;
}

.mobile-nav__toggle .icon{
    height:16px;
    width:16px;
  }

.mobile-nav__toggle .faux-button,.mobile-nav__toggle button{
    height:60%;
    margin:20% 0;
    padding:0 30px;
  }

.mobile-nav__toggle button{
    border-left:1px solid;
    border-left-color:var(--colorDrawerBorder);
  }

.mobile-nav__sublist{
  margin:0;
}

.mobile-nav__sublist .mobile-nav__item:after{
    border-bottom:none;
    bottom:auto;
    top:0;
  }

.mobile-nav__sublist .mobile-nav__item:last-child{
    padding-bottom:15px;
  }

.mobile-nav__sublist .mobile-nav__faux-link,.mobile-nav__sublist .mobile-nav__link{
    font-weight:400;
    padding:7.5px 25px 7.5px var(--drawer-gutter);
  }

.mobile-nav__grandchildlist{
  margin:0;
}

.mobile-nav__grandchildlist:before{
    background:#000;
    bottom:10px;
    content:"";
    display:block;
    left:17px;
    position:absolute;
    top:10px;
    width:1px;
  }

.mobile-nav__grandchildlist .mobile-nav__item:last-child{
    padding-bottom:0;
  }

.mobile-nav__grandchildlist .mobile-nav__link{
    padding-left:35px;
  }

.mobile-nav__social{
  display:flex;
  flex-wrap:wrap;
  justify-content:stretch;
  list-style:none outside;
  margin:15px 0 20px 0;
}

@media only screen and (min-width:769px){

.mobile-nav__social{
    margin-left:calc(var(--drawer-gutter)*-1);
    margin-right:calc(var(--drawer-gutter)*-1);
}
  }

.mobile-nav__social a{
    display:block;
    padding:12px 30px;
  }

.mobile-nav__social a .icon{
      position:relative;
      top:-1px;
    }

.mobile-nav__social-item{
  border:1px solid;
  border-color:var(--colorDrawerBorder);
  flex:0 1 33.33%;
  margin:0 0 -1px;
  text-align:center;
}

.mobile-nav__social-item:nth-child(3n-1){
    margin-left:-1px;
    margin-right:-1px;
  }

@media only screen and (min-width:769px){
  .site-nav__link--icon .icon{
    height:28px;
    width:28px;
  }

    .site-nav__link--icon .icon.icon-user{
      position:relative;
      top:1px;
    }
}

.cart-link{
  display:block;
  position:relative;
}

.cart-link__bubble{
  display:none;
}

.cart-link__bubble--visible{
  background-color:var(--colorCartDot);
  border:2px solid var(--colorBody);
  border-radius:50%;
  display:block;
  height:15px;
  position:absolute;
  right:0;
  top:50%;
  width:15px;
}

[data-icon=cart] .cart-link__bubble--visible{
    right:-4px;
    top:0;
}

[data-icon=bag-minimal] .cart-link__bubble--visible{
    right:0;
    top:50%;
}

[data-type_headers_align_text=true] .breadcrumb{
    text-align:center;
}

.breadcrumb{
  font-size:calc(var(--typeBaseSize)*0.85);
  margin:-25px 0 10px;
}

.template-product .breadcrumb{
    margin-top:10px;
}

@media only screen and (min-width:769px){

.template-product .breadcrumb{
      text-align:left;
}
    }

@media only screen and (max-width:768px){

.breadcrumb{
    margin-bottom:15px;
}
  }

.breadcrumb__divider{
  color:currentColor;
}

.megamenu{
  line-height:1.8;
  opacity:0;
  padding:39px 0;
  transform:none;
  transition:all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95);
  transition-delay:0.3s;
}

details[open]>.megamenu{
    opacity:1;
    transition-delay:0s;
}

details[open]>.megamenu .appear-animation{
      opacity:1;
      transform:none;
    }

.site-nav--is-megamenu.site-nav__item{
  position:static;
}

.megamenu__collection-image{
  display:block;
  height:100%;
  margin-bottom:20px;
  -o-object-fit:cover;
     object-fit:cover;
  width:100%;
}

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

.text-center .megamenu .grid .grid__item{
    display:inline-block;
    float:none;
    text-align:left;
    vertical-align:top;
  }

.megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level){
    font-size:calc(var(--typeBaseSize) - 1px);
    line-height:1.5;
}

.megamenu .h5,.megamenu h5{
  font-weight:700;
  margin-bottom:5px;
}

.modal{
  align-items:center;
  bottom:0;
  color:#fff;
  display:none;
  justify-content:center;
  left:0;
  opacity:1;
  overflow:hidden;
  position:fixed;
  right:0;
  top:0;
  z-index:30;
}

.modal.modal--quick-shop{
    align-items:flex-start;
  }

.modal a,.modal a:hover{
    color:inherit;
  }

.modal .btn:not([disabled]):not(.btn--secondary):not(.btn--body),.modal .btn:not([disabled]):not(.btn--secondary):not(.btn--body):hover{
    color:var(--colorBtnPrimaryText);
  }

.modal-open .modal .modal__inner{
      animation:modal-open 0.5s forwards;
    }

.modal-open .modal:before{
      animation:overlay-on 0.5s forwards;
      background-color:var(--colorModalBg);
      content:"";
      cursor:pointer;
      height:100%;
      left:0;
      position:fixed;
      top:0;
      width:100%;
    }

.modal-closing .modal .modal__inner{
      animation:modal-closing 0.5s forwards;
    }

.modal-closing .modal:before{
      animation:overlay-off 0.5s forwards;
      background-color:var(--colorModalBg);
      content:"";
      height:100%;
      left:0;
      position:fixed;
      top:0;
      width:100%;
    }

.modal-open--solid .modal:before{
    background-color:var(--colorModalBg);
}

.modal-open .modal--solid:before{
      animation:full-overlay-on 0.5s forwards;
      background-color:#000;
    }

.modal-closing .modal--solid:before{
      animation:full-overlay-off 0.5s forwards;
      background-color:#000;
    }

.modal--is-closing{
  display:flex !important;
}

.modal--is-closing{
  overflow:hidden;
}

.modal--is-active{
  display:flex !important;
}

.modal--is-active{
  overflow:hidden;
}

@media only screen and (min-width:769px){
  .modal-open{
    overflow:hidden;
  }
}

.modal__inner{
  align-items:center;
  display:flex;
  flex:0 1 auto;
  margin:15px;
  max-width:calc(100% - 15px);
  transform-style:preserve-3d;
}

@media only screen and (min-width:769px){

.modal__inner{
    margin:40px;
    max-width:calc(100% - 80px);
}
  }

.modal--square .modal__inner{
    background-color:var(--colorBody);
    box-shadow:0 15px 45px rgba(0,0,0,.1);
    color:var(--colorTextBody);
}

.modal__inner img{
    display:block;
    max-height:90vh;
  }

.modal__inner .image-wrap img{
    max-height:none;
  }

.modal__centered{
  flex:0 1 auto;
  max-width:100%;
  min-width:1px;
  position:relative;
}

.modal--square .modal__centered-content{
    -webkit-overflow-scrolling:touch;
    max-height:80vh;
    min-height:200px;
    min-width:200px;
    overflow:auto;
    padding:22.5px;
}

@media only screen and (min-width:769px){

.modal--square .modal__centered-content{
      max-height:90vh;
      max-width:1200px;
      padding:45px;
}
    }

.modal__close{
  border:0;
  color:#fff;
  padding:15px;
  position:fixed;
  right:0;
  top:0;
}

@media only screen and (min-width:769px){

.modal__close{
    padding:30px;
}
  }

.modal__close .icon{
    height:28px;
    width:28px;
  }

.modal__close:focus,.modal__close:hover{
    color:#fff;
  }

.modal--square .modal__close{
    color:var(--colorTextBody);
    padding:10px;
    position:absolute;
}

.modal--square .modal__close:focus,.modal--square .modal__close:hover{
      color:var(--colorTextBody);
    }

.modal .page-content,.modal .page-width{
    padding:0;
  }

.popup-cta{
  margin-bottom:15px;
}

@media only screen and (max-width:768px){
  .modal--mobile-friendly{
    bottom:0;
    overflow:auto;
    top:auto;
  }

    .modal--mobile-friendly.modal--square .modal__centered-content{
      padding:40px 20px;
    }

    .modal--mobile-friendly.modal--is-active{
      overflow:auto;
    }
      .modal-open .modal--mobile-friendly:before{
        display:none;
      }

    .modal--mobile-friendly .modal__inner{
      margin:0;
    }

    .modal--mobile-friendly .h1{
      padding-right:25px;
    }

    .modal--mobile-friendly input{
      font-size:16px !important;
    }

    .modal--mobile-friendly .text-close{
      display:none;
    }
}

.js-qty__wrapper{
  background-color:var(--colorBody);
  color:var(--colorTextBody);
  display:inline-block;
  max-width:80px;
  min-width:60px;
  overflow:visible;
  position:relative;
}

.js-qty__wrapper.is-loading{
    opacity:0.5;
    pointer-events:none;
  }

.js-qty__num{
  background:none;
  display:block;
  margin:0;
  padding:5px 20px;
  text-align:center;
  width:100%;
  z-index:1;
}

.js-qty__adjust{
  fill:var(--colorTextBody);
  backface-visibility:hidden;
  background:none;
  border:0 none;
  bottom:0;
  cursor:pointer;
  display:block;
  line-height:1;
  overflow:hidden;
  padding:0 10px;
  position:absolute;
  text-align:center;
  top:0;
  transition:background-color 0.1s ease-out;
  -webkit-user-select:none;
             -moz-user-select:none;
          user-select:none;
  z-index:2;
}

.js-qty__adjust .icon{
    fill:inherit;
    display:block;
    font-size:8px;
    height:10px;
    vertical-align:middle;
    width:10px;
  }

.js-qty__adjust:hover{
    background-color:var(--colorBodyDim);
    color:var(--colorTextBody);
  }

.js-qty__num:active~.js-qty__adjust,.js-qty__num:focus~.js-qty__adjust{
    border-color:var(--colorTextBody);
}

.js-qty__adjust--plus{
  right:0;
}

.js-qty__adjust--minus{
  left:0;
}

.drawer .js-qty__wrapper{
    background-color:transparent;
    border-color:var(--colorDrawerBorder);
  }

.drawer .js-qty__num{
    color:var(--colorDrawerText);
    padding-bottom:2px;
    padding-top:2px;
  }

.drawer .js-qty__adjust{
    fill:var(--colorDrawerText);
    color:var(--colorDrawerText);
  }

.drawer .js-qty__adjust:hover{
      fill:var(--colorDrawers);
      background-color:var(--colorDrawerText);
      color:var(--colorDrawers);
    }

.currency-flag{
  margin:-0.55rem;
  transform:scale(0.55);
}

@media only screen and (max-width:768px){
  [data-disclosure-currency] .disclosure-list{
    left:50%;
    max-width:95vw;
    transform:translateX(-50%);
  }
}

.collapsibles-wrapper--border-bottom{
  border-bottom:1px solid;
  border-bottom-color:var(--colorBorder);
}

.collapsibles-wrapper--border-bottom+.collapsibles-wrapper--border-bottom .collapsible-trigger-btn--borders{
  border-top:0;
}

.product-block--tab+.product-block--tab .collapsible-trigger-btn--borders{
  border-top:0;
}

.collapsible-trigger{
  color:inherit;
  position:relative;
}

.collapsible-trigger__icon{
  display:block;
  height:10px;
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  width:10px;
}

@media only screen and (min-width:769px){

.collapsible-trigger__icon{
    height:12px;
    width:12px;
}
  }

.mobile-nav__has-sublist .collapsible-trigger__icon{
    right:25px;
}

.collapsible-trigger__icon .icon{
    display:block;
    height:10px;
    transition:all 0.1s ease-in;
    width:10px;
  }

@media only screen and (min-width:769px){

.collapsible-trigger__icon .icon{
      height:12px;
      width:12px;
  }
    }

.collapsible-trigger--inline{
  padding:11px 0 11px 40px;
}

.collapsible-trigger--inline .collapsible-trigger__icon{
    left:0;
    right:auto;
  }

.collapsible-trigger__icon--circle{
  border:1px solid;
  border-color:var(--colorBorder);
  border-radius:28px;
  height:28px;
  text-align:center;
  width:28px;
}

.collapsible-trigger__icon--circle .icon{
    left:50%;
    position:absolute;
    top:50%;
    transform:translate(-50%, -50%);
  }

.collapsible-trigger.is-open .collapsible-trigger__icon>.icon-chevron-down{
  transform:scaleY(-1);
}

.collapsible-trigger.is-open .collapsible-trigger__icon--circle>.icon-chevron-down{
  transform:translate(-50%, -50%) scaleY(-1);
}

.collapsible-content{
  transition:opacity 0.3s cubic-bezier(.25,.46,.45,.94),height 0.3s cubic-bezier(.25,.46,.45,.94);
}

.collapsible-content.is-open{
    opacity:1;
    transition:opacity 1s cubic-bezier(.25,.46,.45,.94),height 0.35s cubic-bezier(.25,.46,.45,.94);
    visibility:visible;
  }

.collapsible-content--all{
  backface-visibility:hidden;
  height:0;
  opacity:0;
  overflow:hidden;
  visibility:hidden;
}

.collapsible-content--all .collapsible-content__inner{
    transform:translateY(40px);
  }

@media only screen and (max-width:768px){
  .collapsible-content--small{
    backface-visibility:hidden;
    height:0;
    opacity:0;
    overflow:hidden;
    visibility:hidden;
  }

    .collapsible-content--small .collapsible-content__inner{
      transform:translateY(40px);
    }
}

.collapsible-content__inner{
  transition:transform 0.3s cubic-bezier(.25,.46,.45,.94);
}

.is-open .collapsible-content__inner{
    transform:translateY(0);
    transition:transform 0.5s cubic-bezier(.25,.46,.45,.94);
}

.rte.collapsible-content__inner--faq{
  padding-bottom:30px;
}

.collapsible-trigger[aria-expanded=true] .collapsible-label__closed{
    display:none;
}

.collapsible-label__open{
  display:none;
}

.collapsible-trigger[aria-expanded=true] .collapsible-label__open{
    display:inline-block;
}

.collapsible-content--sidebar{
  backface-visibility:hidden;
  height:0;
  opacity:0;
  overflow:hidden;
  visibility:hidden;
}

@media only screen and (min-width:769px){
    .collapsible-content--sidebar.is-open{
      height:auto;
      opacity:1;
      overflow:initial;
      visibility:visible;
    }
  }

.pswp{
  -webkit-text-size-adjust:100%;
  -webkit-backface-visibility:hidden;
  display:none;
  height:100%;
  left:0;
  outline:none;
  overflow:hidden;
  position:absolute;
  top:0;
  touch-action:none;
  width:100%;
  z-index:1500;
}

.pswp img{
  max-width:none;
}

.pswp--animate_opacity{
  opacity:0.001;
  transition:opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  will-change:opacity; }

.pswp--open{
  display:block; }

.pswp--zoom-allowed .pswp__img{
  cursor:zoom-in; }

.pswp--zoomed-in .pswp__img{
  cursor:grab; }

.pswp--dragging .pswp__img{
  cursor:grabbing; }

.pswp__bg{
  -webkit-backface-visibility:hidden;
  background:var(--colorBody);
  height:100%;
  left:0;
  opacity:0;
  position:absolute;
  top:0;
  transform:translateZ(0);
  width:100%; }

.pswp__scroll-wrap{
  height:100%;
  left:0;
  overflow:hidden;
  position:absolute;
  top:0;
  width:100%; }

.pswp__container,.pswp__zoom-wrap{
  bottom:0;
  left:0;
  position:absolute;
  right:0;
  top:0;
  touch-action:none; }

.pswp__container,.pswp__img{
  -webkit-tap-highlight-color:transparent;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
             -moz-user-select:none;
          user-select:none; }

.pswp__zoom-wrap{
  position:absolute;
  transform-origin:left top;
  transition:transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  width:100%; }

.pswp__bg{
  transition:opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  will-change:opacity; }

.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap{
  transition:none; }

.pswp__container,.pswp__zoom-wrap{
  -webkit-backface-visibility:hidden; }

.pswp__item{
  bottom:0;
  left:0;
  overflow:hidden;
  position:absolute;
  right:0;
  top:0; }

.pswp__img{
  height:auto;
  left:0;
  position:absolute;
  top:0;
  width:auto; }

.pswp__img--placeholder{
  -webkit-backface-visibility:hidden; }

.pswp--ie .pswp__img{
  height:auto !important;
  width:100% !important; }

.pswp--ie .pswp__img{
  left:0;
  top:0; }

.pswp__error-msg{
  color:#ccc;
  left:0;
  line-height:16px;
  margin-top:-8px;
  position:absolute;
  text-align:center;
  top:50%;
  width:100%; }

.pswp__error-msg a{
  color:#ccc;
  -webkit-text-decoration:underline;
  text-decoration:underline; }

.pswp__button{
  position:relative;
}

.pswp__button:after{
    bottom:0;
    content:"";
    display:block;
    left:0;
    position:absolute;
    right:0;
    top:0;
  }

.pswp__button svg{
    pointer-events:none;
  }

.pswp__button--arrow--left .icon,.pswp__button--arrow--right .icon{
  height:13px;
  margin:8px;
  width:13px;
}

.pswp__button[disabled]{
  opacity:0;
  pointer-events:none;
}

.pswp__ui{
  align-items:center;
  bottom:70px;
  display:flex;
  justify-content:center;
  left:0;
  position:absolute;
  right:0;
  transform:translateY(0);
  transition:transform 0.25s 0.6s;
  z-index: 3333 !important;
}

.pswp__ui .btn{
    margin:15px;
  background-color: #f1f1f1
  }

.pswp__ui--hidden{
  transform:translateY(150%);
  transition:transform 0.25s;
}

html.pswp-open-in-ios,html.pswp-open-in-ios body{
  background:#444;
  box-sizing:border-box;
  height:var(--window-inner-height);
  overflow:hidden;
}

.pswp-open-in-ios body>*{
  display:none; 
}

.pswp-open-in-ios body .pswp.pswp--open{
  display:block; 
}

.disclosure{
  position:relative;
}

.disclosure__toggle{
  white-space:nowrap;
}

.disclosure-list{
  background-color:var(--colorBody);
  border-radius:0;
  bottom:100%;
  box-shadow:0 0 20px rgba(0,0,0,.09);
  color:var(--colorTextBody);
  display:none;
  margin:0;
  max-height:60vh;
  min-height:92px;
  overflow-y:auto;
  padding:10px 0;
  position:absolute;
}

.disclosure-list a{
    color:currentColor;
  }

.disclosure-list--down{
  bottom:auto;
  top:100%;
  z-index:30;
}

.disclosure-list--left{
  right:0;
}

.disclosure-list--visible{
  display:block;
}

.disclosure-list__item{
  padding:5px 15px 4px;
  text-align:left;
  white-space:nowrap;
}

.disclosure-list__option:focus .disclosure-list__label,.disclosure-list__option:hover .disclosure-list__label{
      -webkit-text-decoration:underline;
      text-decoration:underline;
    }

.disclosure-list__item--current .disclosure-list__label{
    -webkit-text-decoration:underline;
    text-decoration:underline;
  }

.disclosure-list__label{
  display:inline-block;
  text-underline-offset:0.2rem;
  vertical-align:middle;
}

[data-disclosure-currency] .disclosure-list__label{
    padding-left:10px;
}

.disclosure-list__label span{
    border-bottom:2px solid transparent;
  }

.is-active .disclosure-list__label span{
      border-bottom:2px solid currentColor;
  }

.multi-selectors{
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}

.multi-selectors__item{
  margin:0 20px 10px;
}

@media only screen and (max-width:768px){

.multi-selectors__item{
    margin:10px 20px;
}
  }

.toolbar .multi-selectors__item{
    margin-bottom:0;
    margin-right:0;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area{
    background:var(--colorBody);
    border-color:var(--colorTextBodyAlpha005);
    border-radius:50px;
    opacity:1;
  }

.shopify-model-viewer-ui .shopify-model-viewer-ui__button{
    color:var(--colorTextBody);
  }

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover{
      color:var(--colorTextBody);
    }

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus,.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active{
      background-color:var(--colorTextBodyAlpha005);
      color:var(--colorTextBody);
    }

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after{
      border-color:var(--colorTextBodyAlpha005);
    }

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster{
    background-color:var(--colorTextBody);
    border:1px solid;
    border-color:var(--colorBodyAlpha05);
    border-radius:100%;
    color:var(--colorBody);
  }

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus,.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover{
      color:var(--colorBody);
    }

.product-single__view-in-space{
  background-color:var(--colorTextBodyAlpha008);
  color:var(--colorTextBody);
  display:block;
  margin:40px 10% 10px;
  padding:5px 10px 10px;
  width:80%;
  width:calc(80% - 4px);
}

.product-single__view-in-space[data-shopify-xr-hidden]{
    display:none;
  }

.product-single__view-in-space-text{
  display:inline-block;
  font-size:calc(var(--typeBaseSize)*0.85);
  margin-left:5px;
  vertical-align:middle;
}

.shopify-model-viewer-ui,.shopify-model-viewer-ui model-viewer{
  display:block;
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
}

.shopify-model-viewer-ui__button[hidden]{
  display:none;
}

.product-single__close-media{
  position:absolute;
  right:10px;
  top:10px;
  z-index:2;
}

.price-range__slider-wrapper{
  padding:0 8px 8px;
}

@media only screen and (max-width:768px){

.price-range__slider-wrapper{
    padding:0 10px 8px;
}
  }

.price-range__input{
  display:none;
}

.price-range__display-wrapper{
  display:flex;
  flex:1 1 auto;
  justify-content:space-between;
  padding:0;
  padding-bottom:8px;
  width:100%;
}

@media only screen and (max-width:768px){

.price-range__display-wrapper{
    padding:0;
}
  }

.noUi-horizontal .noUi-handle{
  background:var(--colorTextBody);
  border:0;
  border-radius:50%;
  box-shadow:0 0 1px 2px #fff;
  cursor:pointer;
  height:12px;
  right:-6px;
  top:-3px;
  width:12px;
}

.noUi-horizontal .noUi-handle:focus,.noUi-horizontal .noUi-handle:hover{
    height:14px;
    right:-7px;
    top:-4px;
    width:14px;
  }

.noUi-horizontal .noUi-handle:after,.noUi-horizontal .noUi-handle:before{
    content:none;
  }

.noUi-target{
  background:#f4f4f4;
  border:0;
  box-shadow:none;
}

.noUi-connect{
  background:var(--colorTextBody);
}

.noUi-horizontal{
  height:6px;
}

.countdown__content{
  background-color:var(--countdown-background-color);
  color:var(--countdown-text-color);
}

.countdown__block--button .btn.btn--secondary{
    color:var(--accent-color);
  }

::-webkit-input-placeholder{
   color:inherit;
   opacity:0.5;
}

:-moz-placeholder{
   color:inherit;
   opacity:0.5;
}

:-ms-input-placeholder{
   color:inherit;
   opacity:0.5;
}

::-ms-input-placeholder{
   color:inherit;
   opacity:1;
}

input,select,textarea{
  background-color:inherit;
  color:inherit;
}

input.disabled,input[disabled],select.disabled,select[disabled],textarea.disabled,textarea[disabled]{
    background-color:#f6f6f6;
    border-color:transparent;
  }

input:active,input:focus,select:active,select:focus,textarea:active,textarea:focus{
    border:1px solid;
    border-color:var(--colorTextBody);
  }

input[type=image]{
  background-color:transparent;
}

[data-center-text=true] .social-sharing{
    text-align:center;
}

.social-sharing .icon{
    height:18px;
    width:18px;
  }

.social-sharing__link{
  border-radius:2px;
  color:var(--colorTextBody);
  display:inline-block;
  font-weight:400;
  margin:0 18px 0 0;
  -webkit-text-decoration:none;
  text-decoration:none;
}

.social-sharing__link:last-child{
    margin-right:0;
  }

.social-sharing__title{
  display:inline-block;
  font-size:calc(var(--typeBaseSize)*0.85);
  padding-left:3px;
  padding-right:15px;
  vertical-align:middle;
}

.grid-search{
  margin-bottom:30px;
}

.grid-search__product{
  position:relative;
  text-align:center;
}

.grid-search__page-link{
  background-color:var(--colorBodyLightDim);
  color:var(--colorTextBody);
  display:block;
  overflow:hidden;
  padding:20px;
  text-overflow:ellipsis;
}

.grid-search__page-link:focus,.grid-search__page-link:hover{
    background-color:var(--colorBodyMediumDim);
  }

.grid-search__page-content{
  display:block;
  height:100%;
  overflow:hidden;
}

.grid-search__page-content img{
  display:block;
  margin-bottom:10px;
}

.grid-search__image{
  display:block;
  margin:0 auto;
  max-height:100%;
  max-width:100%;
  padding:20px;
}

@media only screen and (min-width:769px){

.grid-search__image{
    left:50%;
    position:absolute;
    top:50%;
    transform:translate(-50%, -50%);
}
  }

.index-section{
  margin:40px 0;
}

.index-section--small{
  margin:18px 0;
}

.index-section+.index-section,.index-section+.index-section--hidden,.main-content+.index-section{
  margin-top:0;
}

.index-section--flush{
  margin:0;
}

.section--divider{
  border-top:1px solid;
  border-top-color:var(--colorBorder);
  padding-top:40px;
}

.index-section--faq{
  margin-bottom:40px;
}

.newsletter-section{
  padding:40px 0;
}

.newsletter-section--with-divider{
  border-top:1px solid;
  border-top-color:var(--colorBorder);
}

.template-challange .index-section--footer{
  display:none;
}

.testimonials-section{
  padding:25.5px 0;
}

.testimonials-section--with-divider{
  border-top:1px solid;
  border-top-color:var(--colorBorder);
}

@media only screen and (min-width:769px){
  .index-section{
    margin:30px 0;
  }

  .index-section--small{
    margin:30px 0;
  }

  .section--divider{
    padding-top:75px;
  }

  .index-section--faq{
    margin:75px 0 37.5px;
  }

  .newsletter-section{
    padding:75px 0;
  }

  .testimonials-section{
    padding:75px 0;
  }
}

.page-blocks--flush .page-width{
  padding:0;
}

.page-blocks>div:first-child .index-section{
    margin-top:0;
  }

.feature-row-wrapper{
  direction:ltr;
  overflow:hidden;
}

.feature-row{
  align-items:center;
  display:flex;
  justify-content:space-between;
  margin:0 auto;
}

@media only screen and (min-width:1050px){

.feature-row{
    margin:0%;
}
  }

@media only screen and (max-width:768px){

.feature-row{
    flex-direction:column;
    margin:0;
}
  }

@media only screen and (max-width:959px){
  .feature-row--small-none{
    display:block;
  }
}

.feature-row__item{
  flex:0 1 57%;
  margin:0 auto;
}

@media only screen and (max-width:768px){

.feature-row__item{
    flex:1 1 auto;
    max-width:100%;
    min-width:100%;
}
  }

.feature-row__item--overlap-images{
  align-items:center;
  display:flex;
  justify-content:space-between;
  margin:0 0 0 -30px;
  padding:0 0 15px;
}

@media only screen and (min-width:769px){

.feature-row__item--overlap-images{
    margin:0 auto;
    padding:50px 0;
}
  }

.feature-row__item--overlap-images>*{
    width:50%;
  }

.feature-row__item--overlap-images>:first-child{
      transform:translate(30px, 30px);
      z-index:1;
    }

@media only screen and (min-width:769px){

.feature-row__item--overlap-images>:first-child{
        transform:translate(50px, 50px);
    }
      }

.feature-row__item--overlap-images svg{
    border:2px solid;
    border-color:var(--colorBody);
  }

.feature-row__image{
  display:block;
  margin:0 auto;
  order:1;
}

@media only screen and (min-width:769px){

.feature-row__image{
    order:2;
}
  }

.feature-row__text{
  flex:0 1 43%;
  min-width:43%;
  padding:0;
}

@media only screen and (max-width:768px){

.feature-row__text{
    margin-top:0;
    order:2;
    padding:30px 20px 0;
    padding-bottom:0;
}
  }

.feature-row__text .rte{
    margin:0;
  }

.feature-row__text .btn{
    margin-top:15px;
  }

@media only screen and (min-width:769px){
  .feature-row__text--left{
    padding-left:60px;
  }

  .feature-row__text--right{
    padding-right:60px;
  }
}

.product-block{
  margin-bottom:25px;
}

.product-block hr{
    margin:0;
  }

.product-block--tab+.product-block--tab{
  margin-top:-25px;
}

.product-block--sales-point+.product-block--sales-point{
  margin-top:-20px;
}

.product-block--header+.product-block--price{
  margin-top:-20px;
}

.theme-block{
  margin-bottom:30px;
}

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

[data-product-blocks] .spr-starrating{
  margin-bottom:15px;
  margin-top:-15px;
}

.size-chart__standalone .tool-tip-trigger__title{
  font-size:0.8em;
  letter-spacing:0.3em;
}

.slideshow-wrapper{
  position:relative;
}

.slideshow__pause:focus{
  clip:auto;
  background-color:var(--colorBtnPrimary);
  color:var(--colorBtnPrimaryText);
  height:auto;
  margin:0;
  padding:10px;
  transition:none;
  width:auto;
  z-index:10000;
}

.video-is-playing .slideshow__pause:focus{
    display:none;
}

.slideshow__pause-stop{
  display:block;
}

.is-paused .slideshow__pause-stop{
    display:none;
}

.slideshow__pause-play{
  display:none;
}

.is-paused .slideshow__pause-play{
    display:block;
}

.slideshow__slide{
  display:none;
  height:100%;
  overflow:hidden;
  position:relative;
  width:100%;
}

.slideshow__slide:first-child{
    display:block;
  }

.flickity-slider .slideshow__slide{
    display:block;
}

.hero{
  background:var(--colorLargeImageBg);
  overflow:hidden;
  position:relative;
}

.hero__media-container{
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
}

.hero__image-wrapper,.hero__media{
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
}

.hero__image-wrapper:before,.hero__media:before{
    background-color:var(--colorImageOverlay);
    bottom:0;
    content:"";
    left:0;
    opacity:var(--colorImageOverlayOpacity);
    position:absolute;
    right:0;
    top:0;
    z-index:3;
  }

.video-interactable .hero__image-wrapper:before,.video-interactable .hero__media:before{
      pointer-events:none;
  }
  

@media only screen and (max-width: 768px) {
    .hero__text-shadow {
        display: inline-block;
        position: relative;
        text-align: center;
    }
}


.hero__image{
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  position:relative;
  width:100%;
  z-index:1;
}

.hero__media{
  background-position:top;
  background-repeat:no-repeat;
  background-size:cover;
  z-index:1;
}

.hero__image-wrapper--no-overlay:before{
  content:none;
}

.hero__media iframe,.hero__media video{
  height:100%;
  pointer-events:none;
  width:100%;
}

.video-interactable .hero__media iframe,.video-interactable .hero__media video{
    pointer-events:auto;
}

.video-parent-section.loading .hero__media iframe,.video-parent-section.loading .hero__media video{
    opacity:0.01;
}

.video-parent-section.loaded .hero__media iframe,.video-parent-section.loaded .hero__media video{
    animation:zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    opacity:1;
    transition:none;
}

.hero__media video{
  font-family:"object-fit: cover";
  -o-object-fit:cover;
     object-fit:cover;
  position:relative;
}

.hero__media iframe{
  left:0;
  left:-100%;
  max-width:none;
  position:absolute;
  top:0;
  width:300%;
}

@media screen and (min-width:1140px){

.hero__media iframe{
    height:300%;
    left:auto;
    top:-100%;
    width:100%;
}
  }

.vimeo-mobile-trigger{
  display:block;
  margin-top:90px;
  position:absolute;
  width:100%;
  z-index:2;
}

.hero__text-content .vimeo-mobile-trigger{
    bottom:120%;
}

.vimeo-mobile-trigger .icon{
    background-color:#fff;
    border-radius:50%;
    height:40px;
    padding:10px;
    width:40px;
  }

.hero__slide-link{
  display:block;
  height:100%;
  position:absolute;
  width:100%;
  z-index:5;
}

.hero__slide-link:hover~.hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse){
      background:var(--colorBtnPrimaryLight);
      transition-delay:0.25s;
    }

.hero__slide-link:hover~.hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after{
        animation:shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
      }

[data-button_style=angled] .hero__slide-link:hover~.hero__text-wrap .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after{
          animation:none;
        }

.hero__text-wrap{
  color:var(--colorHeroText);
  height:100%;
  position:relative;
}

.video-interactable .hero__text-wrap{
    pointer-events:none;
}

.hero__text-wrap .page-width{
    display:table;
    height:100%;
    width:100%;
  }

.hero__text-content{
  padding:15px 0;
  position:relative;
  z-index:4;
}

@media only screen and (min-width:769px){

.hero__text-content{
    padding:45px 0;
}
  }

[data-dots=true] .hero__text-content{
    padding-bottom:40px;
}

.hero__text-shadow{
  display:inline-block;
  position:relative;
}

.hero__text-shadow:before{
/*     background:radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
    bottom:0; */
    content:"";
    left:0;
    margin:-100px -200px -100px -200px;
    position:absolute;
    right:0;
    top:0;
    z-index:auto;
    z-index:-1;
  }

.hero__top-subtitle{
  font-size:1.1em;
  letter-spacing:0.3em;
  margin-bottom:5px;
  text-transform:uppercase;
}

.hero__title{
  display:block;
  margin-bottom:0;
}

.hero__subtext{
  margin-top:20px;
}

.hero__subtitle{
  display:block;
  font-size:1.3em;
  margin-bottom:5px;
  margin-top:5px;
  vertical-align:middle;
}

.hero__link{
  display:block;
  position:relative;
}

.video-interactable .hero__link{
    pointer-events:auto;
}

.hero__link .btn{
    margin:4px 3px 2px 0;
  }

@media only screen and (min-width:769px){

.hero__link .btn{
      margin-right:5px;
      margin-top:0;
  }
    }

[data-button_style=angled] .hero__link .btn{
      margin-left:12px;
  }

.hero__link .btn+.btn{
    margin-left:2px;
  }

@media only screen and (min-width:769px){

.hero__link .btn+.btn{
      margin-left:10px;
  }
    }

[data-button_style=angled] .hero__link .btn+.btn{
      margin-left:12px;
  }

.hero__link .btn .icon-play{
    margin-right:5px;
    position:relative;
    top:-2px;
  }

[data-button_style=angled] .hero__link .animation-cropper{
      padding-right:10px;
    }

.hero__text-content{
  display:table-cell;
}

.hero__text-content .hero__link{
    margin-top:7.5px;
  }

@media only screen and (min-width:769px){

.hero__text-content .hero__link{
      margin-top:15px;
  }
    }

.hero__text-content.horizontal-left{
    text-align:left;
  }

.hero__text-content.horizontal-center{
    text-align:center;
  }

.hero__text-content.horizontal-right{
    text-align:right;
  }

.hero__text-content.vertical-center{
    vertical-align:middle;
  }

.hero__text-content.vertical-bottom{
    vertical-align:bottom;
  }

.overlaid-header .index-section--hero:first-child .hero__text-content.vertical-center{
  padding-top:50px;
}

@media only screen and (min-width:769px){

.overlaid-header .index-section--hero:first-child .hero__text-content.vertical-center{
    padding-top:90px;
}
  }

.hero--450px{
  height:292.5px;
}

.hero--550px{
  height:357.5px;
}

.hero--650px{
  height:422.5px;
}

.hero--750px{
  height:487.5px;
}

.hero--100vh{
  height:100vh;
}

@media only screen and (min-width:769px){
  .hero--natural[data-natural]{
    bottom:0;
    left:0;
    position:absolute;
    right:0;
    top:0;
  }
  .hero--450px{
    height:450px;
  }
  .hero--550px{
    height:550px;
  }
  .hero--650px{
    height:650px;
  }
  .hero--750px{
    height:750px;
  }
}

@media only screen and (max-width:768px){
  .hero--mobile--auto[data-mobile-natural=true]{
    bottom:0;
    height:auto;
    left:0;
    position:absolute;
    right:0;
    top:0;
  }
  .hero--natural[data-mobile-natural=false]{
    height:500px;
  }
  .hero--mobile--250px[data-mobile-natural=false]{
    height:250px;
  }
  .hero--mobile--300px[data-mobile-natural=false]{
    height:300px;
  }
  .hero--mobile--400px[data-mobile-natural=false]{
    height:400px;
  }
  .hero--mobile--500px[data-mobile-natural=false]{
    height:500px;
  }
  .hero--mobile--100vh[data-mobile-natural=false]{
    height:90vh;
  }
}

.slideshow__slide .animation-cropper,[data-aos=hero__animation] .animation-cropper{
    opacity:0;
  }

.slideshow__slide .animation-contents,[data-aos=hero__animation] .animation-contents{
    opacity:0;
    transform:translateY(15px);
    transition:none;
  }

.slideshow__slide:not(.animate-out) .hero__image,[data-aos=hero__animation]:not(.animate-out) .hero__image{
    opacity:0;
    transition:none;
  }

.slideshow__slide .hero__link .btn,[data-aos=hero__animation] .hero__link .btn{
    opacity:0;
    transition:none;
  }

.slideshow__slide .hero__image-wrapper,[data-aos=hero__animation] .hero__image-wrapper{
    opacity:0;
    transform:translateX(200px);
    transition:none;
  }

.loaded .slideshow__slide.is-selected .animation-cropper,.loaded[data-aos=hero__animation] .animation-cropper{
    opacity:1;
  }

.loaded .slideshow__slide.is-selected .animation-contents,.loaded[data-aos=hero__animation] .animation-contents{
    transform:translateY(0px);
  }

.loaded .slideshow__slide.is-selected .hero__title .animation-contents,.loaded[data-aos=hero__animation] .hero__title .animation-contents{
    animation:0.8s cubic-bezier(0.26, 0.54, 0.32, 1) 0.3s forwards;
    animation-name:rise-up;
  }

.loaded .slideshow__slide.is-selected .hero__subtitle .animation-contents,.loaded .slideshow__slide.is-selected .hero__top-subtitle .animation-contents,.loaded[data-aos=hero__animation] .hero__subtitle .animation-contents,.loaded[data-aos=hero__animation] .hero__top-subtitle .animation-contents{
    animation:1s cubic-bezier(0.26, 0.54, 0.32, 1) 0.7s forwards;
    animation-name:rise-up;
  }

.loaded .slideshow__slide.is-selected .hero__link .animation-contents,.loaded[data-aos=hero__animation] .hero__link .animation-contents{
    opacity:1;
  }

.loaded .slideshow__slide.is-selected .hero__link .btn,.loaded[data-aos=hero__animation] .hero__link .btn{
    animation:fade-in 2s ease 1.3s forwards;
  }

.loaded .slideshow__slide.is-selected .hero__link .btn:nth-child(2),.loaded[data-aos=hero__animation] .hero__link .btn:nth-child(2){
    animation:fade-in 2s ease 1.6s forwards;
  }

.loaded .slideshow__slide.is-selected .hero__image,.loaded .slideshow__slide.is-selected .hero__image--svg,.loaded .slideshow__slide.is-selected .hero__media,.loaded[data-aos=hero__animation] .hero__image,.loaded[data-aos=hero__animation] .hero__image--svg,.loaded[data-aos=hero__animation] .hero__media{
    opacity:1;
    transition:none;
  }

.loaded .slideshow__slide.is-selected .hero__image-wrapper,.loaded[data-aos=hero__animation] .hero__image-wrapper{
    opacity:1;
    transform:translateX(0px);
    transition:transform 0.7s ease,opacity 0.7s ease;
  }

.loaded[data-aos=hero__animation] .hero__image-wrapper{
    transition:opacity 0.7s ease !important;
  }

.no-js .hero__image,.no-js .hero__image-wrapper{
    opacity:1 !important;
  }

.no-js .hero__image,.no-js .hero__image-wrapper{
    transform:none;
  }

.slideshow__slide.animate-out .animation-cropper{
    opacity:0;
    transition:none;
  }

.slideshow__slide.animate-out .hero__image-wrapper{
    opacity:0;
    transform:translateX(-200px);
    transition:transform 0.5s ease-in 0.05s,opacity 0.5s ease-in 0.05s;
  }

.slideshow__slide.animate-out .hero__link{
    opacity:0;
    transition:none;
  }

.collection-content{
  padding-top:22.5px;
}

@media only screen and (min-width:769px){

.collection-content{
    padding-top:45px;
}
  }

.collection-filter{
  align-items:center;
  display:flex;
  justify-content:flex-end;
}

@media only screen and (max-width:768px){

.collection-filter{
    flex-wrap:wrap;
    justify-content:space-between;
    position:sticky;
    top:17px;
    z-index:5;
}

.sticky-header .collection-filter{
      top:86px;
}
  }

.collection-filter .btn,.collection-filter select{
    font-size:16px;
    height:44px;
  }

.collection-filter select{
    display:block;
    width:100%;
  }

.collection-filter .btn{
    border:1px solid;
    border-color:var(--colorBorder);
    padding:0 20px;
  }

@media only screen and (max-width:768px){

.collection-filter .btn{
      text-align:left;
      width:100%;
  }
    }

.collection-filter .btn .icon{
      margin-right:10px;
      position:relative;
      top:-2px;
    }

.collection-filter__item{
  flex:1 1 auto;
  margin-bottom:15px;
}

.collection-filter .btn:not(.btn--tertiary-active),.collection-filter__sort-container{
  background:var(--colorBody);
}

.collection-filter__item--drawer{
  flex:0 1 48%;
}

.collection-filter__item--count{
  flex:1 1 170%;
  text-align:center;
}

.collection-filter__item--sort{
  flex:0 1 48%;
}

@media only screen and (max-width:768px){
  .collection-filter__item--count{
    flex:1 1 100%;
    order:3;
  }
}

.rte.collection__description{
  margin-bottom:45px;
}

.collection-hero{
  background:var(--colorLargeImageBg);
  box-sizing:initial;
  height:250px;
  overflow:hidden;
  position:relative;
  width:100%;
}

@media only screen and (min-width:769px){

.collection-hero{
    height:420px;
}
  }

.collection-hero__content{
  align-items:flex-end;
  bottom:0;
  display:flex;
  left:0;
  padding:15px 0;
  position:absolute;
  top:0;
  width:100%;
  z-index:1;
}

@media only screen and (min-width:769px){

.collection-hero__content{
    padding:30px 0;
}
  }

[data-type_headers_align_text=true] .collection-hero__content{
    align-items:center;
}

.overlaid-header .collection-hero__content{
    padding-top:70px;
}

@media only screen and (min-width:769px){

.overlaid-header .collection-hero__content{
      padding-top:100px;
}
    }

.collection-hero__content .page-width{
    width:100%;
  }

.collection-hero__content:before{
    background-color:var(--colorImageOverlay);
    bottom:0;
    content:"";
    display:block;
    left:0;
    opacity:var(--colorImageOverlayOpacity);
    position:absolute;
    right:0;
    top:0;
    z-index:auto;
  }

.collection-hero__content .section-header{
    animation:fade-in 0.5s 1s forwards;
    opacity:0;
  }

[data-disable-animations=true] .collection-hero__content .section-header{
      animation:none;
      opacity:1;
  }

.collection-hero__image{
  animation:zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  transition:none;
}

[data-disable-animations=true] .collection-hero__image{
    animation:none;
    opacity:1;
}

.collection-grid__wrapper.unload{
  min-height:180px;
  opacity:0.2;
  position:relative;
  transition:opacity 0.3s;
}

.collection-grid__wrapper.unload [data-section-type=collection-grid]{
    animation:grid-product__loading 1.5s ease 1.5s infinite;
  }

.collection-sidebar{
  margin-bottom:20px;
  padding-right:10px;
}

@media only screen and (min-width:769px){
  .grid__item--sidebar{
    max-height:90vh;
    overflow-y:auto;
    position:sticky;
    top:10px;
  }
}

.collection-sidebar__group{
  border-top:1px solid;
  border-top-color:var(--colorDrawerBorder);
  margin-bottom:5px;
  margin-top:5px;
  overflow:hidden;
  padding-top:5px;
}

.collection-sidebar__group:first-child{
    margin-top:0;
  }

.collection-sidebar__group .collapsible-content__inner{
    padding-bottom:5px;
  }

.filter-form div:first-of-type .collection-sidebar__group{
  border-top:0;
  padding-top:0;
}

.is-light .site-header__logo .logo--has-inverted{
    display:none;
}

.site-header__logo .logo--inverted{
  display:none;
}

.is-light .site-header__logo .logo--inverted{
    display:block;
}

@media only screen and (min-width:769px){

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

.header-logo a,.site-header__logo a{
  color:var(--colorNavText);
}

.is-light .header-logo a,.is-light .site-header__logo a{
    color:#fff;
}

.is-light .header-logo a:hover,.is-light .site-header__logo a:hover{
      color:#fff;
    }

.is-light .site-header{
    box-shadow:none;
}

.site-header--password{
  color:var(--colorNavText);
}

.site-header--password a,.site-header--password a:hover{
    color:var(--colorNavText);
  }

.is-light .site-header--password{
    color:#fff;
}

.is-light .site-header--password a,.is-light .site-header--password a:hover{
      color:#fff;
    }

.site-nav__dropdown-link{
  display:block;
  padding:8px 15px;
  white-space:nowrap;
}

.megamenu .site-nav__dropdown-link{
    padding:4px 0;
    white-space:normal;
}

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

.tag-list .tag-list{
  margin-left:15px;
}

.tag-list a,.tag-list label{
  cursor:pointer;
  display:block;
  line-height:1.4;
}

.tag-list label:hover{
  -webkit-text-decoration:underline;
  text-decoration:underline;
  text-underline-offset:2px;
}

.tag--active>a,.tag--active>label{
  font-weight:900;
}

.tag-list--active-tags:empty{
  display:none;
}

.tag-list--checkboxes{
  padding-bottom:6px;
}

.tag-list--checkboxes a{
    font-size:calc(var(--typeBaseSize) - 2px);
    font-size:max(calc(var(--typeBaseSize) - 2px), 14px);
    padding-left:25px;
    position:relative;
  }

.tag-list--checkboxes a:before{
      content:"";
      left:0;
      position:absolute;
      top:50%;
      transform:translateY(-50%);
    }

.tag-list--checkboxes a:before{
      border:1px solid;
      border-color:var(--colorBorder);
      height:16px;
      width:16px;
    }

.tag--active .tag__checkbox:after,.tag-list--checkboxes .tag--active a:after,input:checked~.tag__checkbox:after{
  background-color:var(--colorTextBody);
  border-color:var(--colorTextBody);
}

.tag--remove{
  position:relative;
}

.tag--remove a{
    text-align:left;
  }

.tag--remove .icon{
    color:var(--colorBtnPrimaryText);
    pointer-events:none;
    position:absolute;
    right:10px;
    top:50%;
    transform:translateY(-50%);
  }

.tag-list--swatches{
  margin-left:-2px;
  margin-top:2px;
}

.drawer .tag-list--swatches{
    margin-left:-2px;
}

.tag-list--swatches li{
    display:inline-block;
  }

label.tag__checkbox-wrapper{
  display:flex;
}

.tag__checkbox{
  padding-left:25px;
  position:relative;
}

.tag__checkbox:after,.tag__checkbox:before{
    content:"";
    left:0;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
  }

.tag__checkbox:before{
    border:1px solid;
    border-color:var(--colorBorder);
    height:16px;
    width:16px;
  }

.tag__checkbox:after{
    height:10px;
    left:3px;
    width:10px;
  }

.tag__input{
    cursor:pointer;
    height:0;
    opacity:0;
  position:absolute;
    width:0;
}

.variant-input-wrap{
  border:0;
  margin:0 0 -12px;
  padding:0;
  position:relative;
}

.variant-input-wrap input{
    clip:rect(0 0 0 0);
    border:0;
    height:1px;
    margin:-1px;
    overflow:hidden;
    padding:0;
    position:absolute;
    width:1px;
  }

.variant-input-wrap label{
    background-color:var(--colorBody);
    box-shadow:0 0 0 1px var(--colorBorder);
    display:inline-block;
    font-family:var(--typeBasePrimary), var(--typeBaseFallback);
    font-size:calc(var(--typeBaseSize)*0.92);
    font-weight:400;
    letter-spacing:var(--typeBaseSpacing);
    line-height:var(--typeBaseLineHeight);
    margin:0 8px 12px 0;
    overflow:hidden;
    padding:7px 15px 7px;
    position:relative;
  }

@media only screen and (min-width:769px){

.variant-input-wrap label{
    font-size:var(--typeBaseSize);
  }
  }

[data-center-text=true] .variant-input-wrap label{
      margin:0 4px 12px;
  }

.variant-input-wrap label.disabled{
      color:var(--colorBorder);
    }

.variant-input-wrap label.disabled:after{
      border-left:1px solid;
      border-color:var(--colorBorder);
      bottom:0;
      content:"";
      left:50%;
      position:absolute;
      top:0;
      transform:rotate(45deg);
    }

.variant-input-wrap input[type=radio]:focus+label{
    border-color:var(--colorTextBodyAlpha005);
    box-shadow:0 0 0 1px var(--colorTextBody);
  }

.variant-input-wrap input[type=radio]:checked+label{
    box-shadow:0 0 0 2px var(--colorTextBody);
  }

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

select .variant-input{
    display:block;
}

.variant-wrapper+.variant-wrapper{
  margin-top:25px;
}

.no-js .variant-wrapper{
  display:none;
}

.variant-wrapper--dropdown{
  display:inline-block;
  margin-bottom:0;
  margin-right:15px;
  max-width:100%;
}

.variant__label[for]{
  cursor:default;
  display:block;
  margin-bottom:10px;
}

.variant__label-info{
  font-weight:400;
  letter-spacing:0;
  text-transform:none;
}

.grid-product{
  margin-bottom:15px;
}

@media only screen and (min-width:769px){

.grid-product{
    margin-bottom:30px;
}
  }

@media only screen and (max-width:768px){

.grid-overflow-wrapper .grid-product{
      margin-bottom:0;
padding-bottom:40px;

}
  }

.grid-product__content{
  position:relative;
  text-align:left;
}

html[dir=rtl] .grid-product__content{
    text-align:right;
}

.grid__item-image-wrapper{
  position:relative;
}

.grid-product__title--heading{
  font-family:var(--typeHeaderPrimary), var(--typeHeaderFallback);
  font-weight:var(--typeHeaderWeight);
  letter-spacing:var(--typeHeaderSpacing);
  line-height:var(--typeHeaderLineHeight);
}

[data-type_header_capitalize=true] .grid-product__title--heading{
    text-transform:uppercase;
}

.grid-product__title--heading{
  font-size:calc(var(--typeBaseSize) + 2px);
  line-height:1;
}

[data-type_product_capitalize=true] .grid-product__title{
    font-size:calc(var(--typeBaseSize) - 2px);
    letter-spacing:0.2em;
    text-transform:uppercase;
  }

@media only screen and (max-width:768px){

[data-type_product_capitalize=true] .grid-product__title{
      font-size:calc(var(--typeBaseSize) - 3px);
  }
    }

.grid-product__title{
  -webkit-hyphens:auto;
          hyphens:auto;
  word-break:break-word;
}

.grid-product__link{
  display:block;
}

.grid-product__link:after{
    bottom:0;
    content:"";
    left:0;
    position:absolute;
    right:0;
    top:0;
    z-index:1;
  }

.grid-product__link--inline{
  display:flex;
}

.grid-product__link--inline .grid-product__image-mask{
    flex:0 0 auto;
    margin-right:10px;
  }

.grid-product__link--inline .grid__image-ratio{
    width:80px;
  }

.grid-product__link--inline .grid-product__meta{
    text-align:left;
  }

.grid-product__image-mask{
  overflow:hidden;
  position:relative;
}

.grid-product__image{
  display:block;
  height:100%;
  margin:0 auto;
  -o-object-fit:cover;
     object-fit:cover;
  width:100%;
}

.grid-product__secondary-image{
  background-color:var(--colorBody);
  bottom:-1px;
  left:-1px;
  opacity:0;
  position:absolute;
  right:-1px;
  top:-1px;
}

.grid-product__secondary-image img{
    height:100%;
    -o-object-fit:cover;
       object-fit:cover;
    width:100%;
  }

.grid-product__image-mask:hover .grid-product__secondary-image{
    animation:fade-in 0.2s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}

@media only screen and (max-width:768px){

.supports-touch .grid-product__secondary-image{
      display:none;
}
  }

.grid-product__color-image{
  background-color:var(--colorBody);
  background-position:50%;
  background-repeat:no-repeat;
  background-size:cover;
  bottom:0;
  left:0;
  opacity:0;
  position:absolute;
  right:0;
  top:0;
  transition:opacity 0.4s ease;
}

.grid-product__color-image.is-active{
    animation:fade-in 0.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  }

[data-center-text=true] .grid-product__meta{
    text-align:center;
}

.grid-product__meta{
  line-height:var(--typeBaselineHeightMinus01);
  padding:10px 0 6px 0;
  position:relative;
}

@media only screen and (max-width:768px){

.small--grid--flush .grid-product__meta{
      padding-left:10px;
      padding-right:10px;
}
  }

.grid-product__vendor{
  font-size:0.8em;
  letter-spacing:0.3em;
  margin-top:5px;
  opacity:0.65;
  text-transform:uppercase;
}

.grid-product__price{
  color:var(--colorPrice);
  font-size:calc(var(--typeBaseSize)*0.85);
  margin-top:5px;
}

.grid-product__price--original{
  margin-right:5px;
  -webkit-text-decoration:line-through;
  text-decoration:line-through;
}

.grid-product__price--savings{
  color:var(--colorTextSavings);
  margin-left:5px;
  white-space:nowrap;
}

.grid-product__tag{
  background-color:var(--colorBtnPrimary);
  color:var(--colorBtnPrimaryText);
  font-size:calc(var(--typeBaseSize)*0.65);
  line-height:1;
  padding:6px 5px 6px 7px;
  position:absolute;
  right:0;
  top:0;
  transition:opacity 0.4s ease;
  z-index:2;
}

.grid-product__tag.grid-product__tag--sold-out{
    background-color:var(--colorBody);
    color:var(--colorTextBody);
  }

@media only screen and (min-width:769px){

.grid-product__tag{
    font-size:calc(var(--typeBaseSize)*0.85);
    padding:7px 7px 7px 9px;
}
  }

.grid-product__tag--sale{
  background-color:var(--colorSaleTag);
  color:var(--colorSaleTagText);
}

.quick-product__btn{
  background-color:var(--colorBtnPrimary);
  bottom:10px;
  color:var(--colorBtnPrimaryText);
  cursor:pointer;
  font-size:calc(var(--typeBaseSize)*0.85);
  left:10px;
  opacity:0;
  overflow:hidden;
  padding:8px 5px;
  position:absolute;
  right:10px;
  text-align:center;
  transform:translateY(5px);
  transition:opacity 0.25s ease,transform 0.25s ease-out,background 0.4s ease;
  width:calc(100% - 20px);
  z-index:2;
}

.no-js .quick-product__btn{
    display:none;
}

.grid-product__content:hover .quick-product__btn{
    opacity:1;
    transform:translateY(0);
    transition:opacity 0.25s ease,transform 0.25s ease-out;
}

.supports-touch .quick-product__btn{
    display:none;
}

.grid-product:focus-within .quick-product__btn{
    opacity:1;
    transform:translateY(0);
    transition:opacity 0.25s ease,transform 0.25s ease-out;
}

.quick-product__btn--not-ready{
  pointer-events:none;
}

@media only screen and (max-width:768px){
  .grid-overflow-wrapper{
    -webkit-overflow-scrolling:touch;
    overflow:hidden;
    overflow-x:scroll;
  }

    .grid-overflow-wrapper .grid{
      display:flex;
      white-space:nowrap;
    }

    .grid-overflow-wrapper .grid__item{
      display:inline-block;
      flex:0 0 39vw;
      float:none;
      white-space:normal;
      width:39vw;
    }

      .grid-overflow-wrapper .grid__item:first-child{
        margin-left:17px;
      }

      .grid-overflow-wrapper .grid__item:last-child:after{
        content:"";
        display:inline-block;
        margin-right:17px;
        width:100%;
      }

    .grid-overflow-wrapper .grid__item--view-all{
      align-self:center;
    }

    .grid-overflow-wrapper .grid-product__price,.grid-overflow-wrapper .grid__item{
      font-size:0.75rem;
    }

  [data-aos=overflow__animation]{
    transform:translateX(100vw);
    transition:all 0.8s cubic-bezier(.25, .46, .45, .94);
  }

    .aos-animate[data-aos=overflow__animation]{
      transform:translateX(0);
    }

  [data-disable-animations=true] [data-aos=overflow__animation]{
      transform:none;
      transition:none;
  }
}

.grid-product__see-all{
  border:1px solid;
  border-color:var(--colorBorder);
  display:inline-block;
  margin-top:-60px;
  padding:15px;
  text-align:center;
}

[data-center-text=true] .grid-product__colors{
    text-align:center;
}

.grid-product__colors{
  display:flex;
  flex-wrap:wrap;
  line-height:15px;
  margin-top:3px;
}

@media only screen and (min-width:769px){

.grid-product__colors{
    line-height:19px;
}
  }

[data-center-text=true] .grid-product__colors{
    align-items:center;
    justify-content:center;
}

.grid-product__colors+.grid-product__colors{
    margin-top:4px;
  }

.sales-points{
  list-style:none;
  margin:25px 0;
  padding:0;
}

.quick-add-modal .sales-points{
    display:none;
}

.sales-point{
  display:block;
  margin-bottom:10px;
}

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

.sales-point .icon{
    height:25px;
    margin-right:10px;
    position:relative;
    width:25px;
  }

[dir=rtl] .sales-point .icon{
      margin-left:10px;
      margin-right:0;
  }

@media only screen and (max-width:768px){
  .sales-point .icon-and-text{
    justify-content:center;
  }
}

@keyframes inventory-pulse{
  0%{
    opacity:0.5;
  }
  to{
    opacity:0;
    transform:scale(2.5);
  }
}

.icon--inventory:after,.icon--inventory:before{
    background:#54c63a;
    border-radius:9px;
    content:"";
    height:9px;
    left:0;
    margin:8px;
    position:absolute;
    top:0;
    width:9px;
  }

.icon--inventory:before{
    animation:inventory-pulse 2s linear infinite;
  }

.inventory--low .icon--inventory:after,.inventory--low .icon--inventory:before{
      background:#f4af29;
    }

.color-swatch{
  background-position:50%;
  background-repeat:no-repeat;
  background-size:cover;
  box-shadow:0 0 0 1px var(--colorBorder);
  display:block;
  height:40px;
  margin:0 4px 4px;
  overflow:hidden;
  position:relative;
  text-indent:-9999px;
  transition:box-shadow 0.2s ease;
  width:40px;
}

[data-swatch_style=round] .color-swatch{
    border-radius:100%;
}

.color-swatch:before{
    bottom:0;
    content:"";
    left:0;
    position:absolute;
    right:0;
    top:0;
    z-index:2;
  }

.color-swatch:before{
    border:3px solid;
    border-color:var(--colorBody);
  }

[data-swatch_style=round] .color-swatch:before{
      border-radius:100%;
      border-width:4px;
      bottom:-1px;
      left:-1px;
      right:-1px;
      top:-1px;
  }

.tag:not(.tag--active) label:hover .color-swatch:hover,a.color-swatch:hover{
  box-shadow:0 0 0 1px var(--colorTextBody);
}

.tag--active .color-swatch{
  box-shadow:0 0 0 2px var(--colorTextBody);
}

.color-swatch--small{
  height:15px;
  width:15px;
}

@media only screen and (min-width:769px){

.color-swatch--small{
    height:19px;
    width:19px;
}
  }

.color-swatch--small:before{
    border:2px solid;
    border-color:var(--colorBody);
  }

[data-swatch_style=round] .color-swatch--small:before{
      border-width:3px;
  }

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

.tag--swatch>label{
    margin-bottom:0;
  }

.color-swatch--filter{
  height:35px;
  width:35px;
}

.tag--active .color-swatch--filter:hover:after{
  border-left:1px solid;
  border-color:var(--colorBorder);
  bottom:0;
  content:"";
  left:50%;
  position:absolute;
  top:0;
  transform:rotate(45deg);
}

.collection-item{
  display:block;
  margin-bottom:17px;
  overflow:hidden;
  position:relative;
}

@media only screen and (min-width:769px){

.collection-item{
    margin-bottom:22px;
}
  }

.grid--no-gutters .collection-item{
    margin-bottom:0;
}

.collection-item:hover .collection-image{
    transform:scale(1.03);
    transition:all 0.8s ease;
  }

[data-disable-animations=true] .collection-item:hover .collection-image{
      transform:none;
      transition:none;
  }

.collection-item:not(.collection-item--below):after{
    background-color:var(--colorGridOverlay);
    bottom:0;
    content:"";
    left:0;
    opacity:var(--colorGridOverlayOpacity);
    position:absolute;
    right:0;
    top:0;
    transition:opacity 0.8s ease;
    z-index:auto;
  }

.collection-item:not(.collection-item--below):hover:after{
    opacity:calc(var(--colorGridOverlayOpacity) + 0.15);
  }

.collection-image{
  position:relative;
  transition:transform 0.3s ease;
}

.collection-image img{
    height:100%;
    left:0;
    -o-object-fit:cover;
       object-fit:cover;
    position:absolute;
    top:0;
    width:100%;
  }

.collection-item--below img{
  -o-object-fit:contain;
     object-fit:contain;
}

.collection-image--placeholder{
  opacity:1;
}

.collection-image--placeholder svg{
    bottom:0;
    left:0;
    position:absolute;
    right:0;
    top:0;
  }

.collection-image--square{
  padding-bottom:100%;
}

.collection-image--landscape{
  padding-top:75%;
}

.collection-image--portrait{
  padding-top:150%;
}

.collection-item__title{
  display:block;
  font-size:calc(var(--typeCollectionTitle)*0.8);
  line-height:1em;
  z-index:2;
}

@media only screen and (min-width:769px){

.collection-item__title{
    font-size:var(--typeCollectionTitle);
}

.medium-up--one-fifth .collection-item__title{
      font-size:16px;
}
  }

[data-type_product_capitalize=true] .collection-item__title span{
      font-size:0.8em;
      letter-spacing:0.2em;
      text-transform:uppercase;
    }

.collection-item--below .collection-item__title{
    margin-top:5px;
}

.collection-item__title--heading{
  font-family:var(--typeHeaderPrimary), var(--typeHeaderFallback);
  font-weight:var(--typeHeaderWeight);
  letter-spacing:var(--typeHeaderSpacing);
  line-height:var(--typeHeaderLineHeight);
}

[data-type_header_capitalize=true] .collection-item__title--heading{
    text-transform:uppercase;
}

.collection-item__title--overlaid,.collection-item__title--overlaid-box{
  display:block;
  left:10px;
  position:absolute;
  right:10px;
}

.collection-item__title--overlaid{
  color:#fff;
  text-shadow:0 0 50px #000;
}

.collection-item__title--overlaid-box>span{
    background-color:var(--colorBody);
    -webkit-box-decoration-break:clone;
            box-decoration-break:clone;
    color:var(--colorTextBody);
    display:inline-block;
    padding:8px 15px;
  }

.collection-item__title--bottom-center,.collection-item__title--center,.collection-item__title--top-center{
  text-align:center;
}

.collection-item__title--bottom-right,.collection-item__title--top-right
.collection-item__title--right{
  text-align:right;
}

.collection-item__title--center[class*=collection-item__title--overlaid],.collection-item__title--left[class*=collection-item__title--overlaid],.collection-item__title--right[class*=collection-item__title--overlaid]{
    top:50%;
    transform:translateY(-50%);
  }

.collection-item__title--top-center[class*=collection-item__title--overlaid],.collection-item__title--top-left[class*=collection-item__title--overlaid],.collection-item__title--top-right[class*=collection-item__title--overlaid]{
    top:10px;
  }

@media only screen and (min-width:769px){

.collection-item__title--top-center[class*=collection-item__title--overlaid],.collection-item__title--top-left[class*=collection-item__title--overlaid],.collection-item__title--top-right[class*=collection-item__title--overlaid]{
      top:18px;
  }
    }

.collection-item__title--bottom-center[class*=collection-item__title--overlaid],.collection-item__title--bottom-left[class*=collection-item__title--overlaid],.collection-item__title--bottom-right[class*=collection-item__title--overlaid]{
    bottom:10px;
  }

@media only screen and (min-width:769px){

.collection-item__title--bottom-center[class*=collection-item__title--overlaid],.collection-item__title--bottom-left[class*=collection-item__title--overlaid],.collection-item__title--bottom-right[class*=collection-item__title--overlaid]{
      bottom:18px;
  }
    }

.custom-content{
  align-items:stretch;
  display:flex;
  flex-wrap:wrap;
  margin-bottom:-22px;
  margin-left:-22px;
  width:auto;
}

@media only screen and (max-width:768px){

.custom-content{
    margin-bottom:-17px;
    margin-left:-17px;
}
  }

.custom__item{
  flex:0 0 auto;
  margin-bottom:22px;
  max-width:calc(100% / 1) !important;
  padding-left:22px;
}

@media only screen and (max-width:768px){

.custom__item{
    flex:0 0 auto;
    margin-bottom:17px;
    padding-left:17px;
}

    .custom__item.small--one-half{
      flex:1 0 50%;
      margin-left:auto;
      margin-right:auto;
      max-width:400px;
    }
  }

.custom__item img{
    display:block;
  }

.custom__item-inner{
  display:inline-block;
  max-width:100%;
  position:relative;
  text-align:left;
  width:100%;
}

.custom__item-inner--html,.custom__item-inner--video{
  display:block;
}

.custom__item-inner--image{
  width:100%;
}

.custom__item-inner--html img{
  display:block;
  margin:0 auto;
}

.custom__item-inner--placeholder-image{
  width:100%;
}



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

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

.align--middle-left{
  align-self:center;
}

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

.align--middle-right{
  align-self:center;
  text-align:right;
}

.align--bottom-left{
  align-self:flex-end;
}

.align--bottom-middle{
  align-self:flex-end;
  text-align:center;
}

.align--bottom-right{
  align-self:flex-end;
  text-align:right;
}

.article__grid-image{
  display:block;
  margin-bottom:17px;
  text-align:center;
}

@media only screen and (min-width:769px){

.article__grid-image{
    margin-bottom:20px;
}
  }

.article__grid-image img{
    display:block;
  }

.article__title{
  font-size:calc(var(--typeBaseSize) + 2px);
}

.article__date{
  font-size:max(calc(var(--typeBaseSize)*0.7), 12px);
  margin-bottom:3px;
}

.section-header .article__date{
    margin-bottom:15px;
}

.article__author{
  font-size:max(calc(var(--typeBaseSize)*0.7), 12px);
  margin-top:2px;
}

.article__grid-meta{
  margin-bottom:30px;
}

@media only screen and (min-width:769px){

[data-center-text=true] .article__grid-meta{
    text-align:center;
}
  }

.article__excerpt{
  margin-top:10px;
}

.logo-bar{
  align-items:center;
  display:flex;
  flex-wrap:nowrap;
  justify-content:center;
  margin-bottom:-30px;
  text-align:center;
  position:relative;
}

.logo-bar__item{
  flex:0 1 110px;
  margin:0 15px 20px;
  vertical-align:middle;
}



@media only screen and (min-width:769px){

.logo-bar__item{
    flex:0 1 160px;
    margin:20px 20px 30px;
}
  .logo-bar__item-container:after {
    content: "";
    background: rgb(0 0 0 / 23%);
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: -15px;
}
  }

.logo-bar__image{
  display:block;
  height:100%;
  margin:0 auto;
  -o-object-fit:cover;
     object-fit:cover;
  width:75%;
  transition: transform .3s ease;
  transform-origin: center;
}
.logo-bar__image:hover {
 transform: scale(1.1) translate(0, 0);
}

.logo-bar__link{
  display:block;
}

[data-aos=logo__animation] .logo-bar__item{
  opacity:0;
}

[data-aos=logo__animation].aos-animate .logo-bar__item{
  animation:fade-in 0.5s ease 0s forwards;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(2){
  animation-delay:0.2s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(3){
  animation-delay:0.4s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(4){
  animation-delay:0.6s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(5){
  animation-delay:0.8s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(6){
  animation-delay:1.0s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(7){
  animation-delay:1.2s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(8){
  animation-delay:1.4s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(9){
  animation-delay:1.6s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(10){
  animation-delay:1.8s;
}

.background-media-text{
  background:var(--colorLargeImageBg);
  background-size:cover;
  overflow:hidden;
  position:absolute;
  width:100%;
}

.background-media-text__video{
  background-position:50% 50%;
  background-repeat:no-repeat;
  background-size:cover;
  bottom:0;
  left:0;
  position:absolute;
  top:0;
  width:100%;
  z-index:0;
}
.card-footer-xs {
  position:relative;
}
.card-footer-xs p:hover:before {
    width: 100%;
}
.card-footer-xs p:before {
    position: absolute;
    content: "" !important;
    background: black;
    width: 0;
    height: 2px;
    transition: 0.4s ease-in-out;
    left: 0;
    bottom: 0;
}

@media only screen and (max-width:768px){

.background-media-text__video{
    left:-100%;
    width:300%;
}
  .logo-bar__image {
  min-width:75px
  }
  .logo-bar {
    overflow: scroll;
    justify-content:start!important;
    padding-bottom: 30px;
  }
  }

.background-media-text__video iframe,.background-media-text__video video{
    height:100%;
    left:0;
    pointer-events:none;
    position:absolute;
    top:0;
    width:100%;
  }

@media only screen and (min-width:769px){

.background-media-text__video iframe,.background-media-text__video video{
      height:120%;
      height:150%;
      left:-100%;
      max-width:none;
      width:300%;
  }
    }

@media screen and (min-width:1140px){

.background-media-text__video iframe,.background-media-text__video video{
      height:300%;
      left:auto;
      top:-100%;
      width:100%;
  }
    }

.video-interactable .background-media-text__video iframe,.video-interactable .background-media-text__video video{
    pointer-events:auto;
  }

.background-media-text__inner{
  height:100%;
  position:absolute;
  width:100%;
  z-index:2;
}

.background-media-text__aligner{
  margin:60px;
}

.background-media-text__text{
  background:var(--colorBody);
  font-size:1.1em;
  padding:30px;
  text-align:left;
  width:380px;
}

html[dir=rtl] .background-media-text__text{
    text-align:right;
}

@media only screen and (max-width:768px){

.background-media-text__text{
    text-align:center;
}
  }

.background-media-text__text--framed{
  border:7px solid;
  border-color:var(--colorBody);
  box-shadow:inset 0 0 0 2px var(--colorTextBody);
}

@media only screen and (min-width:769px){

.background-media-text__text--framed{
    border-width:10px;
}
  }

.background-media-text__text .btn{
  margin-top:15px;
}

@media only screen and (min-width:769px){
  .background-media-text--right .animation-cropper{
    float:right;
  }
}

.background-media-text__container{
  bottom:0;
  left:0;
  position:absolute;
  right:0;
  top:0;
}

@media only screen and (max-width:768px){
  .background-media-text{
    position:relative;
  }
  .background-media-text__inner{
    position:relative;
  }
  .background-media-text__container,.background-media-text__video{
    height:240px;
    position:relative;
  }
  .promo-video .background-media-text__container,.promo-video .background-media-text__video{
      height:550px;
  }
  .background-media-text__aligner{
    margin:-6px 6px 6px;
  }
  .background-media-text__text{
    padding:22.5px;
    width:auto;
  }
    .background-media-text.loading:after,.background-media-text.loading:before{
      top:117px;
    }
}

@media only screen and (min-width:769px){
  .background-media-text--450,.background-media-text--450 .background-media-text__video,.background-media-text__spacer.background-media-text--450{
    min-height:450px;
  }
  .background-media-text--550,.background-media-text--550 .background-media-text__video,.background-media-text__spacer.background-media-text--550{
    min-height:550px;
  }
  .background-media-text--650,.background-media-text--650 .background-media-text__video,.background-media-text__spacer.background-media-text--650{
    min-height:650px;
  }
  .background-media-text--750,.background-media-text--750 .background-media-text__video,.background-media-text__spacer.background-media-text--750{
    min-height:750px;
  }
}

[data-aos=background-media-text__animation] .background-media-text__image,[data-aos=background-media-text__animation] .background-media-text__image svg,[data-aos=background-media-text__animation] .background-media-text__video{
  animation:zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  transition:none;
}

[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image,[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image svg,[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__video{
    animation:none;
    opacity:1;
}

[data-aos=background-media-text__animation].aos-animate .background-media-text__image,[data-aos=background-media-text__animation].aos-animate .background-media-text__image svg,[data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__video{
  animation:zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  transition:none;
}

[data-disable-animations=true] .aos-animate[data-aos=background-media-text__animation] .background-media-text__image,[data-disable-animations=true] .aos-animate[data-aos=background-media-text__animation] .background-media-text__image svg,[data-disable-animations=true] .loaded.aos-animate[data-aos=background-media-text__animation] .background-media-text__video{
    animation:none;
}

@media only screen and (min-width:769px){
  [data-aos=background-media-text__animation] .background-media-text__inner .animation-contents{
    opacity:0;
  }
  .no-js [data-aos=background-media-text__animation] .background-media-text__inner .animation-contents{
      animation:none;
      opacity:1;
  }

  [data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__inner .animation-contents{
    animation:rise-up 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0.5s forwards;
  }

  [data-disable-animations=true] .loaded.aos-animate[data-aos=background-media-text__animation] .background-media-text__inner .animation-contents{
      animation:none;
      opacity:1;
  }
}

.quote-icon{
  display:block;
  margin:0 auto 20px;
}

.testimonial-stars{
  display:block;
  font-size:16px;
  letter-spacing:0.2em;
  margin-bottom:10px;
}

@media only screen and (min-width:769px){

.testimonial-stars{
    font-size:18px;
    margin-bottom:15px;
}
  }

.testimonials-slide{
  display:none;
  opacity:0;
  padding:40px 0 55px;
  width:33%;
}

.testimonials-slide:first-child{
    display:block;
  }

.flickity-slider .testimonials-slide{
    display:block;
    opacity:1;
}

.testimonials-slide .testimonials-slider__text{
    transform:scale(0.95);
    transition:transform 0.5s ease,box-shadow 0.5s ease;
  }

.testimonials-slide.is-selected .testimonials-slider__text{
    box-shadow:0 10px 25px rgba(0,0,0,.1);
    position:relative;
    transform:scale(1.1);
    z-index:10;
  }

@media only screen and (max-width:768px){
    .testimonials-slide{
      width:100%;
    }

    .testimonials-slide .testimonials-slider__text{
      transform:scale(0.86);
    }

    .testimonials-slide.is-selected .testimonials-slider__text{
      transform:scale(1);
    }
  }

.testimonials-slider__text{
  background:var(--colorBody);
  color:var(--colorTextBody);
  margin:0 30px;
  margin-bottom:15px;
  padding:30px 15px;
}

@media only screen and (min-width:769px){

.testimonials-slider__text{
    margin:0;
    margin-bottom:0;
    padding:30px;
}
  }

.testimonials-slider__text cite{
    font-style:normal;
    font-weight:700;
  }

@media only screen and (min-width:769px){

.testimonials-slider__text cite{
      font-size:calc(var(--typeBaseSize) + 1px);
  }
    }

.testimonials-slider__text p{
    margin-bottom:7.5px;
  }

.testimonials-slider__text p+cite{
      margin-top:0;
    }

.testimonials__info{
  font-size:calc(var(--typeBaseSize) - 1px);
}

.testimonial-image{
  background-color:var(--colorBody);
  max-width:142px;
}

.text-center .testimonial-image{
    margin-left:auto;
    margin-right:auto;
}

.testimonial-image .image-wrap{
    background:none;
    height:100%;
    width:100%;
  }

.testimonial-image--round{
  border-radius:65px;
  height:65px;
  max-width:none;
  width:65px;
}

.testimonial-image--round img{
    border-radius:65px;
    height:100%;
    overflow:hidden;
  }

.testimonials-section .flickity-page-dots{
  bottom:0;
}

.announcement-bar{
  background-color:var(--colorAnnouncement);
  border-bottom-color:var(--colorBorder);
  color:var(--colorAnnouncementText);
  font-size:calc(var(--typeBaseSize)*0.75);
  padding:10px 0;
  position:relative;
  text-align:center;
}

@media only screen and (min-width:769px){

.announcement-bar{
    font-size:calc(var(--typeBaseSize)*0.85);
}
  }

.announcement-bar a,.announcement-bar a:visited{
    color:var(--colorAnnouncementText);
  }

.announcement-bar a:active,.announcement-bar a:hover,.announcement-bar a:visited:active,.announcement-bar a:visited:hover{
      color:var(--colorAnnouncementText);
    }

.announcement-slider__slide{
  overflow:hidden;
  padding:0 5px;
  position:relative;
  width:100%;
}

.announcement-link{
  color:var(--colorAnnouncementText);
  display:block;
}

.announcement-link:active,.announcement-link:hover{
    color:var(--colorAnnouncementText);
  }

.announcement-text{
  display:block;
  font-size:0.9em;
  font-weight:700;
  letter-spacing:0.2em;
  text-transform:uppercase;
}

.announcement-link-text{
  display:block;
}

.announcement-link .announcement-link-text{
    -webkit-text-decoration:underline;
    text-decoration:underline;
}

.announcement-link-text a{
    color:inherit;
  }

@media only screen and (min-width:769px){
    .announcement-slider[data-compact=true] .announcement-slider__slide{
      display:none;
    }

      .announcement-slider[data-compact=true] .announcement-slider__slide:first-child{
        display:block;
      }
    .announcement-slider[data-compact=true] .announcement-link-text,.announcement-slider[data-compact=true] .announcement-text{
      display:inline;
    }

    .announcement-slider[data-compact=true] .announcement-text+.announcement-link-text{
      padding-left:5px;
    }

    .announcement-slider.flickity-enabled[data-compact=true] .announcement-slider__slide{
      display:block;
    }
  .announcement-slider[data-compact=false]{
    display:flex;
  }

    .announcement-slider[data-compact=false] .announcement-slider__slide{
      flex:1 1 33%;
    }
}

@media only screen and (max-width:768px){
    .announcement-slider .announcement-slider__slide{
      display:none;
    }

      .announcement-slider .announcement-slider__slide:first-child{
        display:block;
      }

    .announcement-slider.flickity-enabled .announcement-slider__slide{
      display:block;
    }
}

.shopify-challenge__container{
  padding:30px 22px;
}

@media only screen and (min-width:769px){

.shopify-challenge__container{
    padding:120px 0;
}
  }

.newsletter{
  margin:0 auto;
  max-width:520px;
}

.newsletter-section .errors{
  margin-left:auto;
  margin-right:auto;
  max-width:520px;
}

.modal .newsletter .h1{
  margin-bottom:15px;
}

@media only screen and (min-width:769px){

.modal .newsletter .h1{
    margin-bottom:30px;
}
  }

.modal .newsletter .image-wrap{
  margin-bottom:7.5px;
}

@media only screen and (min-width:769px){

.modal .newsletter .image-wrap{
    margin-bottom:15px;
}
  }

.modal .newsletter .text-close{
  -webkit-text-decoration:underline;
  text-decoration:underline;
}

.newsletter__input-group{
  margin:0 auto 20px;
  max-width:400px;
}

.newsletter__input-group:last-child{
    margin-bottom:0;
  }

.newsletter__input::-webkit-input-placeholder{
    color:var(--colorTextBody);
    opacity:1;
  }

.newsletter__input:-moz-placeholder{
    color:var(--colorTextBody);
    opacity:1;
  }

.newsletter__input::-moz-placeholder{
    color:var(--colorTextBody);
    opacity:1;
  }

.newsletter__input:-ms-input-placeholder{
    color:var(--colorTextBody);
  }

.newsletter__input::-ms-input-placeholder{
    color:var(--colorTextBody);
    opacity:1;
  }

@media only screen and (max-width:768px){
  .form__submit--large{
    display:none;
  }

  .form__submit--small{
    display:block;
  }
}

@media only screen and (min-width:769px){
  .form__submit--large{
    display:block;
  }

  .form__submit--small{
    display:none;
  }
}

[data-has-image] .modal__close{
  background-color:var(--colorBody);
  border-radius:50%;
  padding:5px;
  right:10px;
  top:10px;
}

@media only screen and (max-width:768px){

[data-has-image] .modal__close{
    background-color:transparent;
    right:0;
    top:0;
}
  }

@media only screen and (max-width:768px){

[data-section-type=newsletter-popup]{
    bottom:20px;
    text-align:center;
}

    [data-section-type=newsletter-popup] .modal__inner{
      max-width:calc(100% - 40px);
    }

    .modal--square[data-section-type=newsletter-popup] .modal__close{
      padding:5px;
    }
  }

[data-section-type=newsletter-popup] .h2{
    margin-bottom:0;
  }

@media only screen and (min-width:769px){

[data-section-type=newsletter-popup] .h2{
      margin-bottom:0;
  }
    }

[data-section-type=newsletter-popup] .rte{
    margin-bottom:0;
    margin-top:20px;
  }

@media only screen and (min-width:769px){

[data-section-type=newsletter-popup] .rte{
      margin-bottom:0;
      margin-top:20px;
  }
    }

[data-section-type=newsletter-popup] .popup-cta{
    margin-bottom:0;
  }

[data-section-type=newsletter-popup] .note--success{
    margin-top:15px;
    text-align:center;
  }

[data-section-type=newsletter-popup] .newsletter__input-group{
    margin-bottom:0;
    margin-top:30px;
  }

@media only screen and (max-width:768px){

[data-section-type=newsletter-popup] .newsletter__input-group{
      margin-bottom:0;
      margin-top:20px;
  }
    }

[data-section-type=newsletter-popup] .newsletter-button{
    margin-top:30px;
  }

[data-section-type=newsletter-popup] .social-icons a{
    display:inline-block;
    margin-top:30px;
    padding:5px;

  }

.modal__centered-content.newsletter--has-image{
  padding:0;
}

@media only screen and (max-width:768px){

.modal__centered-content.newsletter--has-image{
    padding:0;
}
  }

.modal__centered-content.newsletter--has-image .newsletter-popup{
    display:flex;
    max-width:800px;
    min-width:650px;
  }

@media only screen and (max-width:768px){

.modal__centered-content.newsletter--has-image .newsletter-popup{
      max-width:none;
      min-width:0;
  }
    }

.modal__centered-content.newsletter--has-image .newsletter-popup.newsletter-popup--image-reversed{
      flex-direction:row-reverse;
    }

.modal__centered-content.newsletter--has-image .form__submit--large{
    display:none;
  }

.modal__centered-content.newsletter--has-image .form__submit--small{
    display:block;
  }

.modal__centered-content.newsletter--has-image .newsletter-popup__image-wrapper{
    position:relative;
    width:50%;
  }

@media only screen and (max-width:768px){

.modal__centered-content.newsletter--has-image .newsletter-popup__image-wrapper{
      display:none;
  }
    }

.modal__centered-content.newsletter--has-image .newsletter-popup__image{
    height:100%;
    -o-object-fit:cover;
       object-fit:cover;
    position:absolute;
    width:100%;
  }

.modal__centered-content.newsletter--has-image .newsletter-popup__content{
    padding:40px;
    width:50%;
  }

@media only screen and (max-width:768px){

.modal__centered-content.newsletter--has-image .newsletter-popup__content{
      padding:0 0 20px;
      width:100%;
  }
    }

newsletter-reminder{
  background-color:var(--colorBtnPrimary);
  color:var(--colorBtnPrimaryText);
}

newsletter-reminder.modal--square .modal__close{
    color:var(--colorBtnPrimaryText);
  }

newsletter-reminder.modal--square .modal__close:hover{
      color:var(--colorBtnPrimaryText);
      opacity:0.5;
    }

newsletter-reminder .newsletter-reminder__message{
    font-size:calc(var(--typeHeaderSize)*0.5);
  }

  #NewsletterPopup-sections--23073630159146__newsletter-popup h3 {
  font-size: calc(var(--typeHeaderSize, 1rem) * 1.0);
  color: #000000;

#NewsletterPopup-sections--23073630159146__newsletter-popup .rte ol:last-child,
#NewsletterPopup-sections--23073630159146__newsletter-popup .rte p:last-child,
#NewsletterPopup-sections--23073630159146__newsletter-popup .rte table:last-child,
#NewsletterPopup-sections--23073630159146__newsletter-popup .rte ul:last-child {
  font-size: 0.95rem;
  color: #444444;
  line-height: 1.6;
  margin-bottom: 1rem;
}

    
}

}


.form__submit--small{
  line-height:0;
}

.map-section{
  height:650px;
  overflow:hidden;
  position:relative;
  width:100%;
}

@media only screen and (min-width:769px){

.map-section{
    height:500px;
}
  }

.map-section .page-width{
    height:100%;
  }

.map-section--load-error{
  height:auto;
}

.map-onboarding{
  background-position:50% 50%;
  background-repeat:no-repeat;
  background-size:cover;
  bottom:0;
  left:0;
  position:absolute;
  top:0;
  width:100%;
  z-index:0;
}

.map-section__overlay-wrapper{
  height:100%;
  position:relative;
}

.map-section__overlay{
  background-color:var(--colorBody);
  display:inline-block;
  margin:30px;
  max-width:calc(100% - 60px);
  padding:30px;
  position:relative;
  width:100%;
  z-index:3;
}

@media only screen and (min-width:769px){

.map-section__overlay{
    left:30px;
    margin-top:0;
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:30%;
}
  }

.map-section--load-error .map-section__overlay{
    position:static;
    transform:translateY(0);
}

.map-section__link{
  display:block;
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
  z-index:2;
}

.map-section__container{
  position:absolute !important;
}

.map-section__container{
  height:150%;
  left:0;
  margin-bottom:-50%;
  top:0;
  width:100%;
}

@media only screen and (min-width:769px){

.map-section__container{
    height:100%;
    margin:0 -30% 0 0;
    width:130%;
}
  }

.display-map--false.bg-image--true .map-section__container{
    height:100%;
    width:100%;
}

.display-map--false.bg-image--true .map-section__container img{
      height:100%;
      left:0;
      -o-object-fit:cover;
         object-fit:cover;
      position:absolute;
      top:0;
      width:100%;
    }

[data-aos=map-section__animation] .map-section__container{
  animation:fade-out 0.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  opacity:0;
}

[data-aos=map-section__animation].aos-animate .map-section__container{
  animation:zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}

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

.image-row__placeholder{
  float:left;
  width:33.33%;
}

.image-row--gutters .image-row__placeholder{
    margin:0 1% 2%;
    width:32%;
}

.image-row--gutters .image-row__placeholder:first-child{
      margin-left:0;
    }

.image-row--gutters .image-row__placeholder:last-child{
      margin-right:0;
    }

.image-row__image{
  float:left;
  min-height:1px;
  position:relative;
}

.image-row__image:after{
    content:"";
    display:block;
    height:0;
    width:100%;
  }

.image-row__image img{
    display:block;
    left:0;
    position:absolute;
    top:0;
  }

[data-zoom=true] .image-row__image .js-photoswipe__zoom{
    cursor:zoom-in;
  }

[data-zoom=true] .image-row__image a .js-photoswipe__zoom{
    cursor:pointer;
  }

.promo-grid--space-top{
  padding-top:40px;
}

@media only screen and (min-width:769px){

.promo-grid--space-top{
    padding-top:75px;
}
  }

.promo-grid--space-bottom{
  padding-bottom:40px;
}

@media only screen and (min-width:769px){

.promo-grid--space-bottom{
    padding-bottom:75px;
}
  }

.promo-grid__container{
  align-items:flex-start;
  background-repeat:no-repeat;
  display:flex;
  overflow:hidden;
  position:relative;
}

.promo-grid__container .btn{
    margin-right:10px;
  }

@media only screen and (max-width:768px){

.promo-grid__container .btn{
      margin-right:7px;
  }
    }

.promo-grid__container.horizontal-center{
    justify-content:center;
    text-align:center;
  }

.promo-grid__container.horizontal-center .btn{
      margin:2px 5px;
    }

.promo-grid__container.horizontal-right{
    justify-content:flex-end;
    text-align:right;
  }

@media only screen and (max-width:768px){
    .promo-grid__container--boxed .promo-grid__bg{
      height:60%;
    }

    .promo-grid__container--boxed .promo-grid__content{
      box-shadow:0 0 50px rgba(0,0,0,.1);
      margin-top:55%;
      width:100%;
    }
  }

.promo-grid__container--framed:not(.promo-grid__container--boxed):after{
  border:7px solid transparent;
  bottom:0;
  box-shadow:inset 0 0 0 2px var(--colorHeroText);
  content:"";
  left:0;
  position:absolute;
  right:0;
  top:0;
  z-index:auto;
  z-index:3;
}

@media only screen and (min-width:769px){

.promo-grid__container--framed:not(.promo-grid__container--boxed):after{
    border-width:10px;
}
  }

.type-banner .promo-grid__container--framed:not(.promo-grid__container--boxed):after,.type-product .promo-grid__container--framed:not(.promo-grid__container--boxed):after,.type-sale_collection .promo-grid__container--framed:not(.promo-grid__container--boxed):after{
    box-shadow:inset 0 0 0 2px var(--colorTextBody);
}

.video-interactable.promo-grid__container--framed:not(.promo-grid__container--boxed):after{
  pointer-events:none;
}

.promo-grid__container--tint:before{
  bottom:0;
  content:"";
  left:0;
  opacity:1;
  pointer-events:none;
  position:absolute;
  right:0;
  top:0;
  z-index:auto;
  z-index:2;
}

.promo-grid__slide-link{
  display:block;
  height:100%;
  position:absolute;
  width:100%;
  z-index:5;
}

.promo-grid__slide-link:hover~.promo-grid__content .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse){
      background:var(--colorBtnPrimaryLight);
      transition-delay:0.25s;
    }

[data-button_style=square] .promo-grid__slide-link:hover~.promo-grid__content .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after,[data-button_style^=round] .promo-grid__slide-link:hover~.promo-grid__content .btn:not(.btn--secondary):not(.btn--tertiary):not(.btn--inverse):after{
          animation:shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
        }

.promo-grid__content{
  flex:0 1 auto;
  min-width:200px;
  padding:2em 2.5em;
  position:relative;
  z-index:4;
}

.promo-grid__container--framed:not(.promo-grid__container--boxed) .promo-grid__content{
    margin:1.5em;
}

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

.vertical-top .promo-grid__content{
    align-self:flex-start;
}

.vertical-center .promo-grid__content{
    align-self:center;
}

.vertical-bottom .promo-grid__content{
    align-self:flex-end;
}

.video-interactable .promo-grid__content{
  pointer-events:none;
}

.promo-grid__content--boxed{
  background:var(--colorBody);
  color:var(--colorTextBody);
  margin:15px;
}

@media only screen and (max-width:768px){

.promo-grid__content--boxed{
    margin:10px;
}
  }

.promo-grid__content--framed.promo-grid__content--boxed{
  border:7px solid;
  border-color:var(--colorBody);
  box-shadow:inset 0 0 0 2px var(--colorTextBody);
}

@media only screen and (min-width:769px){

.promo-grid__content--framed.promo-grid__content--boxed{
    border-width:10px;
}
  }

.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale),.type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale){
    color:var(--colorHeroText);
  }

.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a,.type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a{
      border-bottom:2px solid;
      border-bottom-color:var(--colorHeroText);
      color:var(--colorHeroText);
    }

[data-button_style=square] .type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse),[data-button_style=square] .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse),[data-button_style^=round] .type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse),[data-button_style^=round] .type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) a:not(.btn--inverse){
          border-bottom:0;
        }

.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) .btn--inverse,.type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale) .btn--inverse{
      border-color:var(--colorHeroText);
    }

.type-advanced .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale):after,.type-simple .promo-grid__content:not(.promo-grid__content--boxed):not(.promo-grid__content--sale):after{
      background:radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
      bottom:0;
      content:"";
      left:0;
      margin:-100px -200px -100px -200px;
      position:absolute;
      right:0;
      top:0;
      z-index:auto;
      z-index:2;
    }

.type-advanced .rte--strong,.type-product .rte--strong,.type-sale_collection .rte--strong{
    font-family:var(--typeHeaderPrimary), var(--typeHeaderFallback);
    font-weight:var(--typeHeaderWeight);
    letter-spacing:var(--typeHeaderSpacing);
    line-height:var(--typeHeaderLineHeight);
  }

[data-type_header_capitalize=true] .type-advanced .rte--strong,[data-type_header_capitalize=true] .type-product .rte--strong,[data-type_header_capitalize=true] .type-sale_collection .rte--strong{
    text-transform:uppercase;
  }

.type-advanced .rte--strong,.type-product .rte--strong,.type-sale_collection .rte--strong{
    line-height:1.1;
  }

.type-advanced .rte--em,.type-product .rte--em,.type-sale_collection .rte--em{
    font-size:0.9375em;
    letter-spacing:0.3em;
    line-height:1.2;
    text-transform:uppercase;
  }

.type-advanced .rte--strong,.type-product .rte--strong{
    font-size:1.6em;
    line-height:1.1;
  }

@media only screen and (min-width:769px){
    .type-advanced .rte--strong,.type-product .rte--strong{
      font-size:2.125em;
    }
      .type-product.flex-grid__item--33 .rte--strong,.type-product.flex-grid__item--50 .rte--strong{
        font-size:1.6em;
      }
}

.promo-grid__bg{
  height:100%;
  left:0;
  position:absolute;
  text-align:left;
  top:0;
  width:100%;
}

.promo-grid__container:not(.promo-grid__container--boxed) .promo-grid__bg:before{
    background-color:var(--colorImageOverlay);
    bottom:0;
    content:"";
    left:0;
    opacity:var(--colorImageOverlayOpacity);
    position:absolute;
    right:0;
    top:0;
    z-index:3;
}

.promo-grid__bg .placeholder-svg{
    left:50%;
    max-width:none;
    padding:0;
    position:absolute;
    top:0;
    transform:translateX(-50%);
    width:auto;
  }

.video-interactable .promo-grid__bg:before{
  pointer-events:none;
}

.promo-grid__bg-image{
  z-index:1;
}

.aos-animate[data-aos=image-fade-in] .promo-grid__bg-image{
    animation:fade-in 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
    transition:none;
}

.promo-grid__text{
  position:relative;
  z-index:3;
}

.promo-grid__text .btn{
    margin-bottom:2px;
    margin-top:2px;
  }

.type-advanced .promo-grid__content{
    padding:2em;
  }

@media only screen and (max-width:768px){

.type-advanced .promo-grid__content{
      padding:1.5em;
  }
    }

.type-advanced .btn{
    margin-bottom:10px;
  }

@media only screen and (max-width:768px){

.type-advanced .btn{
      margin-bottom:7px;
  }
    }

.type-sale_collection{
  flex-grow:1;
  max-height:600px;
}

.type-sale_collection .promo-grid__container{
    align-items:center;
    background:var(--colorSmallImageBg);
  }

.type-sale_collection .promo-grid__content{
    flex:0 1 auto;
    min-width:0;
    padding:2em;
  }

@media only screen and (max-width:768px){

.type-sale_collection .promo-grid__content{
      font-size:0.9em;
      padding:1em;
  }
    }

@media only screen and (min-width:769px){
      .type-sale_collection .promo-grid__content:not(.promo-grid__content--small-text){
        font-size:1.5em;
      }
    }

.type-sale_collection .rte--block{
    margin-bottom:7.5px;
  }

.type-sale_collection .rte--block:last-child{
      margin-bottom:0;
    }

.type-sale_collection .rte--strong{
    display:block;
    font-size:3.375em;
    line-height:1;
    position:relative;
    white-space:nowrap;
  }

.type-sale_collection small{
    display:inline;
    font-size:0.25em;
    letter-spacing:0;
    margin-left:-2.9em;
  }

.type-sale-images{
  flex:1 1 50%;
}

.type-sale-images svg{
    display:block;
    float:left;
    width:50%;
  }

.type-sale-images__crop{
  overflow:hidden;
  width:100%;
}

.type-sale-images__image{
  float:left;
  width:50%;
}

.type-simple .promo-grid__content{
    padding:30px;
  }

@media only screen and (max-width:768px){

.type-simple .promo-grid__content{
      padding:15px;
  }
    }

.promo-grid__title:last-child{
  margin-bottom:0;
}

.type-image .promo-grid__container{
    background:none;
  }

.type-image .image-wrap,.type-image a,.type-image img{
    width:100%;
  }

.type-banner{
  flex:1 0 100%;
}

.type-banner .promo-grid__container{
    background:none;
  }

.type-banner .promo-grid__container--framed:not(.promo-grid__container--boxed){
    padding:1em;
  }

.type-banner p{
    display:inline-block;
    line-height:1.2;
    margin:5px 10px;
    vertical-align:middle;
  }

.type-banner__link{
  display:block;
  flex:1 1 100%;
}

.type-banner__content{
  align-items:center;
  display:flex;
  justify-content:center;
  padding:0 10px;
  width:100%;
}

.type-banner__text{
  flex:0 1 auto;
  padding:10px 20px;
  position:relative;
  z-index:3;
}

.type-banner__image{
  flex:0 0 45%;
}

@media only screen and (min-width:769px){

.type-banner__image{
    flex:0 0 200px;
}
  }

.type-product__wrapper{
  align-self:center;
  flex:1 1 100%;
  padding:2em 0;
  position:relative;
  z-index:4;
}

.type-product__wrapper.promo-grid__container--tint{
    padding:2em;
  }

.promo-grid__container--framed .type-product__wrapper{
    padding:2em;
}

@media only screen and (max-width:768px){

.type-product__content{
    margin-top:15px;
}
  }

.type-product__images{
  margin:10px 0 10px 10px;
  position:relative;
  width:100%;
}

.type-product__image{
  position:relative;
}

.type-product__image:first-child{
    max-width:75%;
    width:100%;
  }

.type-product__image:nth-child(2){
    bottom:40px;
    max-width:30%;
    position:absolute;
    right:0;
    width:100%;
  }

.type-product__labels{
  position:absolute;
  right:-10px;
  text-align:right;
  top:-10px;
  z-index:3;
}

@media only screen and (min-width:769px){
    .type-product__labels .flex-grid__item--33,.type-product__labels .flex-grid__item--50{
      font-size:0.9em;
    }
  }

.type-product__label{
  background-color:var(--colorBtnPrimary);
  clear:both;
  color:var(--colorBtnPrimaryText);
  float:right;
  padding:4px 12px;
}

.type-product__label--secondary{
  background-color:var(--colorBody);
  color:var(--colorTextBody);
}


.store-availability__info p.store-availability__small:nth-of-type(1) {
    display: none;
}


.store-availability{
  display:flex;
  justify-content:space-around;
}

.store-availability .icon{
    height:12px;
    margin:6px 0 0;
    width:12px;
  }

.store-availability .icon-in-stock{
    fill:#56ad6a;
  }

.store-availability .icon-out-of-stock{
    fill:#d02e2e;
  }

.store-availability+.store-availability{
    margin-top:20px;
  }

.store-availability__info{
  flex:0 1 90%;
  margin-left:10px;
  text-align:left;
}

.store-availability__info>div{
    margin-bottom:5px;
  }

.store-availability__info>div:last-child{
      margin-bottom:0;
    }

.store-availability__info a{
    -webkit-text-decoration:underline;
    text-decoration:underline;
  }

.store-availability__small{
  font-size:0.8em;
}

.store-availability__small a{
    display:block;
    margin-top:10px;
  }

.modal .store-availability__small--link{
    display:none;
}

.age-verification-popup{
  bottom:0;
  top:0;
}

.age-verification-popup.age-verification-popup--image-false{
    background-color:var(--colorBody);
  }

.age-verification-popup.age-verification-popup--image-false.modal:before{
      animation:none;
      background-color:var(--colorBody);
    }

.age-verification-popup.age-verification-popup--image-false .modal__inner{
      box-shadow:none;
    }

.age-verification-popup.modal--mobile-friendly.modal--square .modal__centered-content{
    background-color:var(--colorDrawers);
  }

@media only screen and (min-width:769px){
  .cart__page{
    align-items:flex-start;
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
  }

  .cart__page-col:first-child{
    flex:1 1 60%;
    padding-right:100px;
  }

  .cart__page-col:last-child{
    flex:0 1 35%;
    padding:30px;
    position:sticky;
    top:10%;
  }

    .cart__page-col:last-child:after{
      background-color:var(--colorTextBody);
      bottom:0;
      content:"";
      left:0;
      opacity:0.03;
      position:absolute;
      right:0;
      top:0;
      z-index:-1;
    }
}

.cart__item{
  border-bottom:1px solid;
  border-bottom-color:var(--colorBorder);
  display:flex;
  margin-bottom:20px;
  padding-bottom:20px;
}

.cart__item:first-child{
    padding-top:10px;
  }

.cart__item:last-child{
    border-bottom:0;
    margin-bottom:0;
  }

.cart__image{
  flex:0 0 150px;
  margin-right:var(--grid-gutter);
  position:relative;
}

.cart__image a{
    display:block;
  }

.cart__image img{
    display:block;
    height:100%;
    -o-object-fit:cover;
       object-fit:cover;
    position:absolute;
    width:100%;
  }

.drawer .cart__image{
    flex:0 0 100px;
}

.cart__item-details{
  display:flex;
  flex:1 1 auto;
  flex-wrap:wrap;
}

.cart__item-title{
  flex:1 1 100%;
}

.drawer .cart__item-title{
    font-size:calc(var(--typeBaseSize)*0.85);
}

.cart__item-sub{
  display:flex;
  flex:1 1 100%;
  justify-content:space-between;
  line-height:1;
  padding-top:20px;
}

.cart__item-sub>div:first-child{
    margin-right:10px;
  }

.cart__item-row{
  margin-bottom:20px;
}

.cart__remove a{
    display:inline-block;
    margin-top:10px;
  }

.drawer .cart__remove{
    display:none;
}

.cart__checkout{
  width:100%;
}

.cart__item-name{
  display:block;
  font-size:calc(var(--typeBaseSize) + 1px);
  margin-bottom:8px;
}

.cart__item--variants{
  margin-bottom:10px;
}

.cart__item--variants span{
    font-weight:700;
  }

.cart__price{
  display:block;
}

.cart__price--strikethrough{
  -webkit-text-decoration:line-through;
  text-decoration:line-through;
}

.cart__discount{
  color:var(--colorTextSavings);
}

.cart__terms{
  align-items:center;
  display:flex;
  justify-content:center;
}

.cart__terms label{
    letter-spacing:0;
    margin-bottom:0;
    text-transform:none;
  }

.cart__checkout-wrapper{
  margin-top:20px;
}

.cart__checkout-wrapper .additional-checkout-buttons{
    margin-top:12px;
  }

.drawer .additional-checkout-buttons{
  margin:10px 0;
}

.drawer .additional-checkout-buttons [data-shopify-buttoncontainer]{
    justify-content:center;
  }

.drawer .additional-checkout-buttons [data-shopify-buttoncontainer]>*{
      height:auto !important;
    }

iframe.zoid-component-frame{
  z-index:1 !important;
}

.drawer__cart-empty{
  display:none;
}

.drawer.is-empty .drawer__inner{
    display:none;
  }

.drawer.is-empty .drawer__cart-empty{
    display:block;
  }

@media only screen and (min-width:769px){
  .product-single__sticky{
    position:sticky;
    top:20px;
  }
  .sticky-header .product-single__sticky{
      top:140px;
  }

  .modal--quick-shop .product-single__sticky{
    top:0;
  }
}

.page-content--product{
  padding-top:55px;
}

@media only screen and (max-width:768px){
  .page-content--product{
    padding-top:0;
  }

  .grid--product-images-right{
    display:flex;
    flex-wrap:wrap;
  }

    .grid--product-images-right .grid__item:first-child{
      order:2;
    }
}

.modal .page-content--product{
  max-width:100%;
  width:1500px;
}

.product-single__meta{
  padding-left:45px;
}

@media only screen and (max-width:768px){

.product-single__meta{
    margin-top:15px;
    padding-left:0;
    text-align:center;
}
  }

.grid--product-images-right .product-single__meta{
    padding-left:0;
    padding-right:45px;
}

@media only screen and (max-width:768px){

.grid--product-images-right .product-single__meta{
      padding-right:0;
}
    }

.product-single__meta .social-sharing{
    margin-top:30px;
  }

.product-single__meta .rte{
    text-align:left;
  }

html[dir=rtl] .product-single__meta .rte{
      text-align:right;
  }

.product-single__vendor{
  font-size:0.8em;
  letter-spacing:0.3em;
  margin-bottom:7.5px;
  text-transform:uppercase;
}

.product-single__title{
  word-wrap:break-word;
  margin-bottom:10px;
}

.product-single__review-link{
  display:block;
}

.product-single__review-link .spr-badge[data-rating="0.0"]{
    display:none;
  }

.product-single__review-link .spr-badge{
    margin-bottom:7px;
  }

.product-single__review-link .spr-badge-starrating{
    margin-right:8px;
  }

.product-single__review-link .spr-badge-caption{
    font-size:calc(var(--typeBaseSize) - 1px);
  }

.product-single__sku{
  margin-bottom:5px;
}

.product-single__description-full{
  margin:30px 0;
}

.product-single__description-full+.collapsibles-wrapper{
    margin:0 0;
  }

@media only screen and (min-width:769px){

.product-single__description-full{
    margin:30px 95px;
}

    .product-single__description-full+.collapsibles-wrapper{
      margin:0 95px;
    }
  }

.product-single__variants{
  display:none;
}

.no-js .product-single__variants{
    display:block;
    margin-bottom:30px;
}

.product-image-main{
  position:relative;
}

[data-button_style=angled] .product-image-main .btn:not(.product__photo-zoom){
  display:inline-block;
  position:absolute;
  top:50%;
}

.product__video-wrapper{
  background-color:var(--colorSmallImageBg);
  height:auto;
  max-width:100%;
  overflow:hidden;
  padding-bottom:100%;
  position:relative;
}

.product__video-wrapper iframe{
    height:100%;
    transition:opacity 0.5s ease-in;
    width:100%;
  }

.product__video-wrapper.loaded[data-video-style=muted]:before{
    bottom:0;
    content:"";
    left:0;
    position:absolute;
    right:0;
    top:0;
    z-index:1;
  }

.product__video-wrapper.video-interactable:before{
    display:none;
  }

.product__video-wrapper.loaded:after{
    display:none;
  }

.product__video-wrapper.loading iframe{
    opacity:0.01;
  }

.product__video-wrapper.loaded iframe{
    opacity:1;
  }

.product__video{
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
}

.product-video-trigger{
  left:50%;
  position:absolute;
  top:50%;
  transform:translate(-50%, -50%);
}

.product__photos--beside{
  display:flex;
  width:100%;
}

.product__photos{
  direction:ltr;
}

.product__photos a{
    display:block;
    max-width:100%;
  }

.product__photos img{
    display:block;
    margin:0 auto;
    max-width:100%;
    width:100%;
  }

.product__main-photos{
  flex:1 1 auto;
  position:relative;
}

.product__main-photos img{
    display:none;
  }

.product__main-photos .flickity-page-dots{
    display:none;
  }

@media only screen and (max-width:768px){

.product__main-photos{
    margin-bottom:30px;
    margin-left:-17px;
    margin-right:-17px;
}

    .product__main-photos .flickity-page-dots{
      display:block;
    }
  }

.product-main-slide:not(.is-selected) button,.product-main-slide:not(.is-selected) iframe,.product-main-slide:not(.is-selected) model-viewer,.product-main-slide:not(.is-selected) video{
    display:none;
  }

.product-main-slide{
  display:none;
  overflow:hidden;
  width:100%;
}

.product-main-slide:first-child{
    display:block;
  }

.flickity-slider .product-main-slide{
    display:block;
}

@media only screen and (max-width:768px){

.grid--product-images--partial .flickity-slider .product-main-slide{
        margin-right:4px;
        width:75%;
}
    }

.product__thumbs{
  position:relative;
}

.product__thumbs--below{
  margin-top:8.5px;
}

@media only screen and (min-width:769px){

.product__thumbs--below{
    margin-top:15px;
}
  }

.product__thumbs--beside{
  flex:0 0 60px;
  margin-left:8.5px;
  max-width:60px;
}

@media only screen and (min-width:769px){

.product__thumbs--beside{
    flex:0 0 80px;
    margin-left:15px;
    max-width:80px;
}

    .product__thumbs--beside.product__thumbs-placement--left{
      margin-left:0;
      margin-right:15px;
      order:-1;
    }
  }

.product__thumbs--scroller{
  -ms-overflow-style:-ms-autohiding-scrollbar;
  scroll-behavior:smooth;
  scrollbar-width:none;
}

.product__thumbs--scroller::-webkit-scrollbar{
    height:0;
    width:0;
  }

.product__thumbs--below .product__thumbs--scroller{
    overflow-x:scroll;
    white-space:nowrap;
}

.product__thumbs--beside .product__thumbs--scroller{
    bottom:0;
    left:0;
    overflow-y:scroll;
    position:absolute;
    right:0;
    top:0;
    width:100%;
}

.product__thumb-item{
  border:2px solid transparent;
}

.product__thumb-item a.is-active,.product__thumb-item a:focus{
    outline:none;
  }

.product__thumb-item a.is-active:before,.product__thumb-item a:focus:before{
      bottom:0;
      box-shadow:inset 0 0 0 2px var(--colorTextBody);
      content:"";
      display:block;
      left:0;
      position:absolute;
      right:0;
      top:0;
      z-index:1;
    }

.product__thumb-item a:active:before{
    content:none;
  }

.product__thumbs--beside .product__thumb-item{
    margin-bottom:8.5px;
}

@media only screen and (min-width:769px){

.product__thumbs--beside .product__thumb-item{
      margin-bottom:15px;
}
    }

.product__thumbs--beside .product__thumb-item:last-child{
      margin-bottom:0;
    }

.product__thumbs--below .product__thumb-item{
    display:inline-block;
    margin-right:8.5px;
    max-width:80px;
    vertical-align:middle;
}

@media only screen and (min-width:769px){

.product__thumbs--below .product__thumb-item{
      margin-right:15px;
}
    }

.product__thumbs--below .product__thumb-item:last-child{
      margin-right:0;
    }

.product__price{
      color: #1d705b;
    font-size: calc(var(--typeBaseSize) + 2px);
    margin-right: 5px;
    font-weight: 600;
}
}

.product__price.on-sale{
    padding-right:5px;
  }

.product__unit-price{
  font-size:0.8em;
  opacity:0.8;
}

.product__unit-price--spacing{
  margin-top:10px;
}

.product__price--compare{
  display:inline-block;
  padding-right:5px;
  -webkit-text-decoration:line-through;
  text-decoration:line-through;
}

.product__price-savings{
  color:var(--colorTextSavings);
  white-space:nowrap;
}

.product__quantity label{
    display:block;
    margin-bottom:10px;
  }

.product-form-holder--loaded{
  animation:fade-in 1s ease;
}

.add-to-cart[disabled]+.shopify-payment-button{
  display:none;
}

.product-slideshow.flickity-enabled .product-main-slide{
    display:none;
  }

.product-slideshow.flickity-enabled .flickity-viewport .product-main-slide{
    display:block;
  }

.product__photo-zoom{
  position:absolute !important;
}

.product__photo-zoom{
  bottom:0;
  cursor:zoom-in;
  right:0;
}

@media only screen and (max-width:768px){

.product__photo-zoom{
    padding:6px;
}

.product__main-photos .product__photo-zoom{
      margin-bottom:10px;
      margin-right:10px;
}

.product-slideshow .product__photo-zoom{
      opacity:0;
      transition:opacity 0.5s ease-out;
}

.product-slideshow .is-selected .product__photo-zoom{
      opacity:1;
}
  }

@media only screen and (min-width:769px){

.product__photo-zoom{
    border-radius:0;
    left:0;
    margin:0;
    opacity:0;
    top:0;
    width:100%;
}

    .product__photo-zoom span,.product__photo-zoom svg{
      display:none;
    }
  }

.product__thumb-arrow{
  background:var(--colorBody);
  border-radius:0;
  color:var(--colorTextBody);
  padding:0;
  position:absolute;
  transform:none;
  z-index:2;
}

.product__thumb-arrow .icon{
    display:inline-block;
    height:10px;
    width:6px;
  }

.product__thumbs[data-position=below] .product__thumb-arrow{
  height:100%;
  top:0;
  width:25px;
}

.product__thumbs[data-position=below] .product__thumb-arrow.product__thumb-arrow--prev{
    left:0;
    text-align:left;
  }

.product__thumbs[data-position=below] .product__thumb-arrow.product__thumb-arrow--next{
    right:0;
    text-align:right;
  }

.product__thumbs[data-position=beside] .product__thumb-arrow{
  width:100%;
}

.product__thumbs[data-position=beside] .product__thumb-arrow .icon{
    margin:0 auto;
    transform:rotate(90deg);
  }

.product__thumbs[data-position=beside] .product__thumb-arrow.product__thumb-arrow--prev{
    left:auto;
    padding-bottom:10px;
    top:0;
  }

.product__thumbs[data-position=beside] .product__thumb-arrow.product__thumb-arrow--next{
    bottom:0;
    padding-top:10px;
    right:auto;
    top:auto;
  }

.product__thumb{
  cursor:pointer;
  display:block;
  position:relative;
}

.product__thumb>.image-wrap img{
    height:auto;
    position:static;
  }

.product__thumb-icon{
  background-color:var(--colorTextBody);
  border-radius:100px;
  font-size:0;
  opacity:0;
  padding:6px;
  position:absolute;
  right:5px;
  top:5px;
  transition:opacity 0.5s ease;
  z-index:1;
}

.aos-animate .product__thumb-icon{
    opacity:1;
}

.product__thumb-icon .icon{
    fill:var(--colorBody);
    height:10px;
    width:10px;
  }

@media only screen and (min-width:769px){

.product__thumb-icon .icon{
      height:13px;
      width:13px;
  }
    }

.product__policies{
  font-size:0.85em;
}

.shopify-payment-terms{
  margin:12px 0;
}

.shopify-payment-terms:empty{
    display:none;
  }

.modal .shopify-payment-terms{
    display:none;
}

.template-blog .article{
  margin-bottom:45px;
}

@media only screen and (min-width:769px){

.template-blog .article{
    margin-bottom:90px;
}
  }

.template-blog .article:last-child{
  margin-bottom:0;
}

@media only screen and (min-width:769px){

.template-blog .article:last-child{
    margin-bottom:45px;
}
  }

.article__body{
  margin-bottom:15px;
}

@media only screen and (min-width:769px){

.article__body{
    margin-bottom:30px;
}
  }

.article__comment{
  margin-bottom:30px;
}

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

.password-page__header__grid{
  align-items:center;
  display:flex;
  flex:1 1 auto;
  justify-content:space-between;
}

.password-page__logo h1{
    margin-bottom:0;
  }

.password-page__logo .logo{
    max-width:100%;
  }

.password-login{
  display:block;
  margin:0 auto;
  padding:7.5px 15px;
}

.password-form{
  margin-bottom:1em;
}

.password__lock .icon{
  height:24px;
  margin-right:4px;
  position:relative;
  top:-2px;
  width:24px;
}

.icon-shopify-logo{
  height:20px;
  width:60px;
}

@media only screen and (max-width:768px){

#LoginModal .modal__close{
    padding:20px;
}
  }

#LoginModal .modal__inner{
  background:var(--colorBody);
  color:var(--colorTextBody);
  padding:30px;
}

@media only screen and (max-width:768px){

#LoginModal .modal__inner{
    margin-bottom:40vh;
}
  }

.password-admin-link{
  margin:0;
}

.password-admin-link a{
    border-bottom:2px solid !important;
    border-bottom-color:var(--colorBorder) !important;
  }

.template-giftcard,.template-giftcard body{
  background:var(--colorBody);
}

.template-giftcard a,.template-giftcard body a{
    -webkit-text-decoration:none;
    text-decoration:none;
  }

.template-giftcard .page-width{
  max-width:588px;
}

.giftcard-header{
  font-size:1em;
  padding:60px 0;
  text-align:center;
}

.giftcard-header a{
    display:block;
    margin:0 auto;
  }

.template-giftcard .shop-url{
  display:none;
}

.giftcard__border{
  box-shadow:0 10px 30px rgba(0,0,0,.3);
  padding:1.5em;
}

.giftcard__content{
  background-color:var(--colorBody);
  color:var(--colorTextBody);
}

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

.giftcard__header{
  padding:15px;
}

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

.giftcard__title{
  float:left;
  margin-bottom:0;
}

.giftcard__tag{
  background-color:var(--colorTextBody);
  border:1px solid transparent;
  border-radius:4px;
  color:var(--colorBody);
  display:block;
  float:right;
  font-size:0.75em;
  letter-spacing:.05em;
  line-height:1;
  padding:10px;
  text-transform:uppercase;
}

.giftcard__tag--active{
  background:transparent;
  border:1px solid;
  border-color:var(--colorBorder);
  color:var(--colorTextBody);
}

.giftcard__wrap{
  margin:15px 15px 30px;
  position:relative;
}

.giftcard__wrap img{
    border-radius:10px;
    display:block;
    position:relative;
    z-index:2;
  }

.giftcard__code{
  bottom:30px;
  position:absolute;
  text-align:center;
  width:100%;
  z-index:50;
}

.giftcard__code--medium{
  font-size:.875em;
}

.giftcard__code--small{
  font-size:.75em;
}

.giftcard__code__inner{
  background-color:#fff;
  border-radius:4px;
  box-shadow:0 0 0 1px rgba(0,0,0,.1);
  display:inline-block;
  max-width:450px;
  padding:.5em;
  vertical-align:baseline;
}

.giftcard__code--small .giftcard__code__inner{
    overflow:auto;
}

.giftcard__code__text{
  border:1px dashed;
  border-color:var(--colorBorder);
  border-radius:2px;
  color:var(--colorTextBody);
  display:inline-block;
  font-size:1.875em;
  font-weight:400;
  line-height:1;
  padding:.4em .5em;
  text-transform:uppercase;
  vertical-align:baseline;
}

.disabled .giftcard__code__text{
    color:#999;
    -webkit-text-decoration:line-through;
    text-decoration:line-through;
}

.giftcard__amount{
  color:#fff;
  font-size:2.75em;
  line-height:1.2;
  padding:15px;
  position:absolute;
  right:0;
  top:0;
  z-index:50;
}

.giftcard__amount strong{
    display:block;
    text-shadow:3px 3px 0 rgba(0,0,0,.1);
  }

.giftcard__amount--medium{
  font-size:2em;
}

.tooltip{
  color:#fff;
  display:block;
  margin-top:16px;
  position:absolute;
  right:50%;
  text-align:center;
  top:-50%;
  white-space:nowrap;
  z-index:3;
}

.tooltip:before{
    border-left:8px solid transparent;
    border-right:8px solid transparent;
    border-top:5px solid #333;
    border-top:5px solid rgba(51,51,51,.9);
    bottom:0;
    content:"";
    display:block;
    height:0;
    left:100%;
    margin-bottom:-5px;
    margin-left:-5px;
    position:absolute;
    width:0;
  }

.tooltip__label{
  background:#333;
  background:rgba(51,51,51,.9);
  border:none;
  border-radius:4px;
  display:block;
  font-size:12px;
  font-weight:400;
  line-height:16px;
  margin-left:.25em;
  min-height:14px;
  padding:.5em .75em;
  position:relative;
  right:-50%;
  -webkit-text-decoration:none;
  text-decoration:none;
  text-shadow:none;
}

.tooltip__label small{
    color:#b3b3b3;
    font-size:.875em;
    letter-spacing:.1em;
    text-transform:uppercase;
  }

.giftcard__instructions{
  margin:0 15px 30px;
  text-align:center;
}

.giftcard__actions{
  overflow:hidden;
  padding-bottom:1em;
  position:relative;
  text-align:center;
}

.template-giftcard .action-link{
  display:block;
  font-size:0.875em;
  font-weight:700;
  left:15px;
  letter-spacing:.2em;
  margin-top:-10px;
  padding-top:4px;
  position:absolute;
  text-transform:uppercase;
  top:50%;
}

.template-giftcard .action-link:focus,.template-giftcard .action-link:hover{
    color:var(--colorTextBody);
  }

.template-giftcard .action-link__print{
  background-image:url(/cdn/s/assets/gift-card/icon-print-164daa1ae32d10d1f9b83ac21b6f2c70.png);
  background-position:0 0;
  background-repeat:no-repeat;
  display:inline-block;
  height:17px;
  margin-right:10px;
  opacity:1;
  vertical-align:baseline;
  vertical-align:middle;
  width:17px;
}

.giftcard__footer{
  padding:60px 0;
  text-align:center;
}

#QrCode img{
    border:1px solid;
    border-color:var(--colorBorder);
    border-radius:4px;
    margin:0 auto 30px;
    padding:30px;
  }

@media only screen and (max-width:768px){
  .giftcard{
    font-size:12px;
  }

  .giftcard-header{
    padding:30px 0;
  }

  .header-logo{
    font-size:2em;
  }

  .giftcard__border{
    padding:15px;
  }

  .giftcard__actions{
    padding:15px;
  }

  .giftcard__actions .btn{
    padding-left:0;
    padding-right:0;
    width:100%;
  }

  .template-giftcard .action-link{
    display:none;
  }
}

@media screen and (max-width:400px){
  .giftcard__amount strong{
    text-shadow:2px 2px 0 rgba(0,0,0,.1);
  }

  .giftcard__wrap:after,.giftcard__wrap:before{
    display:none;
  }

  .giftcard__code{
    font-size:.75em;
  }

  .giftcard__code--medium{
    font-size:.65em;
  }

  .giftcard__code--small{
    font-size:.55em;
  }
}

@media screen and (max-height:800px){
  .header-logo img{
    max-height:90px;
  }
}

@media print{
  @page{
    margin:0.5cm;
  }

  h2,h3,p{
    orphans:3;
    widows:3;
  }

  h2,h3{
    page-break-after:avoid;
  }

  body,html{
    background-color:#fff;
  }

  .giftcard-header{
    padding:10px 0;
  }

  .giftcard__border,.giftcard__content{
    border:0 none;
  }

  .add-to-apple-wallet,.giftcard__actions,.giftcard__wrap:after,.giftcard__wrap:before,.site-header__logo-link img:nth-child(2),.tooltip{
    display:none;
  }

  .giftcard__title{
    float:none;
    text-align:center;
  }

  .giftcard__code__text{
    color:#555;
  }

  .template-giftcard .shop-url{
    display:block;
  }

  .template-giftcard .logo{
    color:#58686f;
  }
}

/*#---01-08-2023 Start---#*/
.variant-input-wrap label.disabled {
    color: #000000;
}
li.product-shapes--item:hover .imageHover {
    display: block !important;
}

small.imageHover {
    position: absolute;
    top: -20px;
    font-size: 8px;
    background: white;
    box-shadow: 1px 1px 8px #00000040;
    padding: 5px;
    left: -28px;
}
li.product-shapes--item {
    position: relative;
}
a.variantAnchor.clicked-link img {
    border: 1px solid #000;
}
a.variantAnchor img {
    margin-right: 5px;
}
.variant-input-wrap input[type=radio]:checked+label {
    box-shadow: 0 0 0 1px var(--colorTextBody);
}

.grid__item.grid-product.small--one-half.medium-up--one-quarter.grid-product__has-quick-shop .grid-product__colors:nth-child(2), .grid__item.grid-product.small--one-half.medium-up--one-third.grid-product__has-quick-shop .grid-product__colors:nth-child(2), .grid__item.grid-product.small--one-half.medium-up--one-fifth.grid-product__has-quick-shop .grid-product__colors:nth-child(2) {
    display: none;
} 
.grid__item.medium-up--one-half.product-single__sticky {
    width: 60%;
}
.medium-up--one-half {
    width: 40%;
}

@media(max-width: 767px){
.grid__item.medium-up--one-half.product-single__sticky {
    width: 100%;
}
.medium-up--one-half {
    width: 100%;
}
}

.faq-drawer {
  margin-bottom: 30px;
}

.faq-drawer__content-wrapper {
  font-size: 1.25em;
  line-height: 1.4em;
  max-height: 0px;
  overflow: hidden;
  transition: 0.25s ease-in-out;
}

.faq-drawer__title {
  border-top: #000 1px solid;
  cursor: pointer;
  display: block;
  font-size: 1.25em;
  font-weight: 700;
  padding: 30px 0 0 0;
  position: relative;
  margin-bottom: 0;
  transition: all 0.25s ease-out;
}

.faq-drawer__title::after {
  border-style: solid;
  border-width: 1px 1px 0 0;
  content: " ";
  display: inline-block;
  float: right;
  height: 10px;
  left: 2px;
  position: relative;
  right: 20px;
  top: 2px;
  transform: rotate(135deg);
  transition: 0.35s ease-in-out;
  vertical-align: top;
  width: 10px;
}

/* OPTIONAL HOVER STATE */
.faq-drawer__title:hover { 
  color: #4E4B52  ;
}

.faq-drawer__trigger:checked
  + .faq-drawer__title
  + .faq-drawer__content-wrapper {
  max-height: 350px;
}

.faq-drawer__trigger:checked + .faq-drawer__title::after {
  transform: rotate(-45deg);
  transition: 0.25s ease-in-out;
}

input[type="checkbox"] {
  display: none;
}
* #show_mobile {
  display:none;
} *

.grid-product__image-mask {
    z-index: 2;
	cursor: pointer;
    pointer-events: auto;
}
.cart__item--variants {
    display: none;
}
div.cart__item[data-key="46495860130090:625103791eae30765adc583b8190dd2d"], div.cart__item[data-key="46495408685354:c8df4b0882896ec0c1d946e7f358d6e2"], div.cart__item[data-key="46495408718122:a15d66c56cbcea6fc14c60fcba4c52ea"] {
    display: none;
}


#loader {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.8);
    text-align: center;
    z-index: 9999;
}
#loader img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

a.site-nav__dropdown-link.site-nav__dropdown-link--top-level {
    pointer-events: none;
}

a#custom_hover {
    position: relative;
    display: inline-block;
    z-index: 999;
}

a#custom_hover:before {
    position: absolute;
    content: "" !important;
    background: black;
    width: 0;
    height: 2px;
    transition:0.4s ease-in-out;
    left: 0;
    bottom:0;
}
a#custom_hover:hover:before{
	width:100%;
}
img.ringsnavBar_images {
    display: inline-block !important;
    width: 30px;
    height: 30px;
}
img.ringsnavBar_images.ringsnavBar_imagesNew {
    display: inline-block !important;
    width: 30px;
    height: 30px;
   
}
.header_navOption {
    display: flex;
}
#avpoptions-container__v2 select {
     appearance: auto !important;
     background-image : unset!important; 
}
.site-nav__dropdown.megamenu.text-left {
    cursor: auto;
}
.site-nav__dropdown-link--top-level:before:hover {
    width: 100%;
}
.site-nav__dropdown-link--top-level:before {
    position: absolute;
    content: "" !important;
    background: black;
    width: 0;
    height: 2px;
    transition: 0.4s ease-in-out;
    left: 0;
    bottom: 0;
}
ul.inline-list.toolbar__menu {
    display: none;
}
div#shopify-section-template--19232481149226__713730d5-1d05-4445-a297-2444753818cd .btn{
    overflow: hidden;
    position: relative;
    transition: background 0.2s ease 0s;
  }
div#shopify-section-template--19232481149226__713730d5-1d05-4445-a297-2444753818cd .btn:hover {
    background: black !important;
    transition-delay: 0.25s;
}
div#shopify-section-template--19232481149226__713730d5-1d05-4445-a297-2444753818cd .btn:after{
    background-image: linear-gradient(90deg,transparent, hsla(0,0%,100%,.25),transparent);
    content: "";
    height: 100%;
    left: 150%;
    position: absolute;
    top: 0;
    transform: skewX(-20deg);
    width: 200%;
}
div#shopify-section-template--19232481149226__713730d5-1d05-4445-a297-2444753818cd .btn:hover:after{
    animation: shine 0.75s cubic-bezier(0.01, 0.56, 1, 1);
  }
  .call-icon-mob {
    display:none;
}
@media(max-width: 767px){
  #show_mobile {
     display:block;
  }
  #desktop_show {
     display:none;
  }
  #avpoptions-container__v2 .ap-tooltip-inner:after {
      left: 231px !important;
  }
    #avpoptions-container__v2 .ap-tooltip-inner {
      left: -229px !important;
  }

  .variant-wrapper.js:nth-child(1) .variant__label::before {
      margin-left: -26px;
  }
   .mobile-nav__link--top-level {
    pointer-events: none;
}
  .mobile-nav__child-item .mobile-nav__link {
    pointer-events: none;
}
  .mobile-nav__child-item button {
    position: absolute;
    right: 0;
    top: 3px;
    width: 100%;
    height: 30px;
}
  .header-item--logo, .header-layout--left-center .header-item--logo, .header-layout--left-center .header-item--icons {
    flex: 0 1 155px !important;
}
.call-icon-mob {
    display:block;
}
  .site-nav__icons {
    display: flex;
    align-items: center;
}

}


/*#---01-08-2023 End---#*/

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRoZW1lLmNzcyIsImdsb2JhbC92YXJpYWJsZXMtcm9vdC5jc3MubGlxdWlkIiwiZ2xvYmFsL2tleWZyYW1lcy5jc3MiLCJ2ZW5kb3IvZmxpY2tpdHkuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy92ZW5kb3Ivbm91aXNsaWRlci5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdG9vbC10aXAuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Rvb2wtdGlwLXRyaWdnZXIuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtd2l0aC1pY29ucy5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1yZW1pbmRlci5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcGFyYWxsYXguY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2NvdW50ZG93bi5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaG90c3BvdHMuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2ltYWdlLWNvbXBhcmUuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2FnZS12ZXJpZmljYXRpb24tcG9wdXAuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Byb2R1Y3QtY29tcGxlbWVudGFyeS5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaW1hZ2VzLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zdmctbWFza3MuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtYW5kLWltYWdlLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zY3JvbGxpbmctdGV4dC5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1zZWN0aW9uLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MiLCJwYXJ0aWFscy9hcHAtb3ZlcnJpZGVzLmNzcyIsInBhcnRpYWxzL25vcm1hbGl6ZS5jc3MiLCJwYXJ0aWFscy9ncmlkLmNzcyIsIjxubyBzb3VyY2U+IiwicGFydGlhbHMvZ3JpZC1taXhpbnMuY3NzIiwicGFydGlhbHMvZmxleC1ncmlkLmNzcyIsInBhcnRpYWxzL2hlbHBlcnMuY3NzIiwiZ2xvYmFsL21peGlucy5jc3MiLCJwYXJ0aWFscy9iYXNlLmNzcyIsInBhcnRpYWxzL3R5cG9ncmFwaHkuY3NzIiwicGFydGlhbHMvbGlzdHMuY3NzIiwicGFydGlhbHMvdGFibGVzLmNzcyIsInBhcnRpYWxzL2xpbmtzLmNzcyIsInBhcnRpYWxzL2J1dHRvbnMuY3NzIiwicGFydGlhbHMvbWVkaWEuY3NzIiwicGFydGlhbHMvZm9ybXMuY3NzIiwicGFydGlhbHMvaW5wdXQtZ3JvdXAuY3NzIiwicGFydGlhbHMvaWNvbnMuY3NzIiwicGFydGlhbHMvZHJhd2Vycy5jc3MiLCJwYXJ0aWFscy9ibGFuay1zdGF0ZXMuY3NzIiwicGFydGlhbHMvYW5pbWF0aW9ucy5jc3MiLCJwYXJ0aWFscy9yZXZpZXdzLmNzcyIsInBhcnRpYWxzL3Rvb2x0aXAuY3NzIiwicGFydGlhbHMvcHJvZHVjdC1jb21wbGVtZW50YXJ5LmNzcyIsInBhcnRpYWxzL3ByZWRpY3RpdmUtc2VhcmNoLmNzcyIsIm1vZHVsZXMvZm9vdGVyLmNzcyIsIm1vZHVsZXMvbm90ZXMuY3NzIiwibW9kdWxlcy9wYWdpbmF0aW9uLmNzcyIsIm1vZHVsZXMvcnRlLmNzcyIsIm1vZHVsZXMvc2l0ZS1oZWFkZXItc3RydWN0dXJlLmNzcyIsIm1vZHVsZXMvc2l0ZS1oZWFkZXIuY3NzIiwibW9kdWxlcy9zaXRlLWhlYWRlci1zZWFyY2guY3NzIiwibW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MiLCJtb2R1bGVzL3NlYXJjaC1iYXIuY3NzIiwibW9kdWxlcy90b29sYmFyLmNzcyIsIm1vZHVsZXMvc2VjdGlvbi1oZWFkZXIuY3NzIiwibW9kdWxlcy9zaXRlLW5hdi5jc3MiLCJtb2R1bGVzL21lZ2FtZW51LmNzcyIsIm1vZHVsZXMvbW9kYWxzLmNzcyIsIm1vZHVsZXMvanMtcXR5LmNzcyIsIm1vZHVsZXMvY3VycmVuY3ktcGlja2VyLmNzcyIsIm1vZHVsZXMvY29sbGFwc2libGUuY3NzIiwibW9kdWxlcy9waG90b3N3aXBlLmNzcyIsIm1vZHVsZXMvZGlzY2xvc3VyZS5jc3MiLCJtb2R1bGVzL211bHRpLXNlbGVjdG9ycy5jc3MiLCJtb2R1bGVzL21vZGVsLXZpZXdlci5jc3MiLCJtb2R1bGVzL3ByaWNlLXJhbmdlLmNzcyIsIm1vZHVsZXMvY291bnRkb3duLmNzcyIsInBhcnRpYWxzL3RoZW1lLWZvcm1zLmNzcyIsInBhcnRpYWxzL3NvY2lhbC1idXR0b25zLmNzcyIsInBhcnRpYWxzL3NlYXJjaC1ncmlkLmNzcyIsInBhcnRpYWxzL3NlY3Rpb25zLmNzcyIsInBhcnRpYWxzL3Byb2R1Y3QtYmxvY2tzLmNzcyIsIm1vZHVsZXMvc2xpZGVzaG93LmNzcyIsIm1vZHVsZXMvaGVyby5jc3MiLCJtb2R1bGVzL2NvbGxlY3Rpb24uY3NzIiwibW9kdWxlcy90aGVtZS1zaXRlLWhlYWRlci5jc3MiLCJtb2R1bGVzL3RoZW1lLXRhZ3MuY3NzIiwibW9kdWxlcy9wcm9kdWN0LXNpbmdsZS12YXJpYW50cy5jc3MiLCJtb2R1bGVzL3Byb2R1Y3QtZ3JpZC1pdGVtLmNzcyIsIm1vZHVsZXMvc2FsZXMtcG9pbnQuY3NzIiwibW9kdWxlcy9wcm9kdWN0LWludmVudG9yeS5jc3MiLCJtb2R1bGVzL2NvbG9yLXN3YXRjaC5jc3MiLCJtb2R1bGVzL2NvbGxlY3Rpb24tZ3JpZC1pdGVtLmNzcyIsIm1vZHVsZXMvc2VjdGlvbi1jdXN0b20tY29udGVudC5jc3MiLCJtb2R1bGVzL2Jsb2ctcG9zdHMuY3NzIiwibW9kdWxlcy9sb2dvLWxpc3QuY3NzIiwibW9kdWxlcy9iYWNrZ3JvdW5kLW1lZGlhLXRleHQuY3NzIiwibW9kdWxlcy90ZXN0aW1vbmlhbHMuY3NzIiwibW9kdWxlcy9hbm5vdW5jZW1lbnQtYmFyLmNzcyIsIm1vZHVsZXMvbmV3c2xldHRlci5jc3MiLCJtb2R1bGVzL21hcC5jc3MiLCJtb2R1bGVzL2ltYWdlLXJvdy5jc3MiLCJtb2R1bGVzL3Byb21vLXR5cGVzLmNzcyIsIm1vZHVsZXMvc3RvcmUtYXZhaWxhYmlsaXR5LmNzcyIsIm1vZHVsZXMvYWdlLXZlcmlmaWNhdGlvbi1wb3B1cC5jc3MiLCJ0ZW1wbGF0ZXMvY2FydC5jc3MiLCJ0ZW1wbGF0ZXMvcHJvZHVjdC5jc3MiLCJ0ZW1wbGF0ZXMvYmxvZy5jc3MiLCJ0ZW1wbGF0ZXMvcGFzc3dvcmQuY3NzIiwidGVtcGxhdGVzL2dpZnQtY2FyZC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCOztBQUVoQjs7O0NBR0M7O0FDTEQ7RUFDRSwwRUFBMkU7RUFDM0UsZ0ZBQWlGOztFQUVqRiwwREFBMkQ7RUFDM0QsK0ZBQWdHO0VBQ2hHLGtGQUFtRjtFQUNuRixvRkFBcUY7RUFDckYscUZBQXNGOzs7RUFHdEYsK0RBQWdFOztFQUVoRSwrREFBZ0U7RUFDaEUsd0ZBQXlGO0VBQ3pGLG9GQUFxRjtFQUNyRix3RUFBeUU7O0VBRXpFLGlFQUFrRTs7RUFFbEUsMEVBQTJFO0VBQzNFLCtGQUFnRztFQUNoRywyRUFBNEU7RUFDNUUsb0VBQXFFO0VBQ3JFLDJGQUE0RjtFQUM1RiwyRUFBNEU7RUFDNUUsaUZBQWtGOztFQUVsRiwyREFBNEQ7RUFDNUQsb0VBQXFFO0VBQ3JFLDJFQUE0RTs7RUFFNUUsd0VBQXlFO0VBQ3pFLDZCQUE4Qjs7RUFFOUIsd0dBQXlHOztFQUV6RyxpRUFBa0U7O0VBRWxFLHlFQUEwRTtFQUMxRSw0RUFBNkU7O0VBRTdFLHdFQUF5RTtFQUN6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bEIsU0FBVTtFQUxWLHVCQUF3QjtFQUd4QixxQkFBc0I7RUFGdEIsVUFBVztBQVFiOztBQUVBO0VBRUUsY0FBNEI7RUFENUIsaUJBQWtCO0FBRXBCOztBQUdFO0lBRUUsZ0JBQWlCO0lBQ2pCLCtCQUEwQjtJQUMxQixpQkFBa0I7SUFDbEIsa0JBQXNCO0lBSnRCLFlBQWdCO0VBS2xCOztBQUdGO0VBQ0U7SUFDRSxjQUFlO0VBQ2pCOztFQUVBO0lBQ0UsY0FBa0I7RUFDcEI7O0VBRUE7SUFDRSxhQUFjO0VBQ2hCOztFQUVBO0lBQ0UsWUFBMEI7RUFDNUI7O0VBRUE7SUFDRSxZQUEwQjtFQUM1Qjs7RUFFQTtJQUVFLGNBQWU7SUFDZixlQUFnQjtJQUZoQixVQUFXO0VBR2I7O0VBRUE7SUFDRSxZQUFhO0VBQ2Y7QUFDRjs7QUFHQTtFQUNFO0lBQ0Usb0NBQXNDO0VBQ3hDOztFQUVBO0lBRUUsWUFBYTtFQUNmOztFQUVBO0lBQ0UsZUFBZ0I7RUFDbEI7O0VBRUE7SUFDRSxlQUFnQjtFQUNsQjs7RUFFQTtJQUNFLGVBQWdCO0VBQ2xCO0FBQ0Y7O0FBSUE7RUFDRTtJQUNFLGVBQWdCO0VBQ2xCO0FBQ0Y7O0FBRUE7RUFDRTtJQUNFLFlBQWE7RUFDZjs7RUFFQTtJQUNFLFNBQVU7SUFDVixRQUFTO0VBQ1g7O0VBRUE7SUFDRSxzQkFBdUI7RUFDekI7O0VBRUE7SUFDRSxxQkFBc0I7RUFDeEI7O0VBRUE7SUFDRSxjQUFlO0VBQ2pCOztFQUVBO0lBRUUsYUFBYztFQUNoQjs7RUFFQTtJQU1FLFlBQWE7RUFDZjs7RUFFQTtJQUNFLFVBQVc7SUFDWCxpQkFBa0I7RUFDcEI7O0VBRUE7SUFDRSxVQUFXO0VBQ2I7O0VBRUE7SUFDRSxhQUFjO0VBQ2hCOztFQUVBO0lBQ0UsYUFBYztFQUNoQjtBQUNGIiwiZmlsZSI6InRoZW1lLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLyohXG4gIEltcHVsc2UsIGJ5IEFyY2hldHlwZSBUaGVtZXNcbiAgaHR0cDovL2FyY2hldHlwZXRoZW1lcy5jb1xuKi9cblxuQGltcG9ydCB1cmwoJ2dsb2JhbC9taXhpbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgnZ2xvYmFsL3ZhcmlhYmxlcy1yb290LmNzcy5saXF1aWQnKTtcbkBpbXBvcnQgdXJsKCdnbG9iYWwvdmFyaWFibGVzLmNzcycpO1xuQGltcG9ydCB1cmwoJ2dsb2JhbC9rZXlmcmFtZXMuY3NzJyk7XG5cbkBpbXBvcnQgdXJsKCd2ZW5kb3IvZmxpY2tpdHkuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy92ZW5kb3Ivbm91aXNsaWRlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdG9vbC10aXAuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Rvb2wtdGlwLXRyaWdnZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtd2l0aC1pY29ucy5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1yZW1pbmRlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcGFyYWxsYXguY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2NvdW50ZG93bi5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaG90c3BvdHMuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2ltYWdlLWNvbXBhcmUuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2FnZS12ZXJpZmljYXRpb24tcG9wdXAuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Byb2R1Y3QtY29tcGxlbWVudGFyeS5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaW1hZ2VzLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zdmctbWFza3MuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtYW5kLWltYWdlLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zY3JvbGxpbmctdGV4dC5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1zZWN0aW9uLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MnKTtcblxuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2FwcC1vdmVycmlkZXMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvbm9ybWFsaXplLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2dyaWQuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvZ3JpZC1taXhpbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvZmxleC1ncmlkLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2hlbHBlcnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvYmFzZS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy90eXBvZ3JhcGh5LmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2xpc3RzLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3RhYmxlcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9saW5rcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9idXR0b25zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL21lZGlhLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2Zvcm1zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2lucHV0LWdyb3VwLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2ljb25zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2RyYXdlcnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvYmxhbmstc3RhdGVzLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2FuaW1hdGlvbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvcmV2aWV3cy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy90b29sdGlwLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3Byb2R1Y3QtY29tcGxlbWVudGFyeS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MnKTtcblxuQGltcG9ydCB1cmwoJ21vZHVsZXMvZm9vdGVyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbm90ZXMuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wYWdpbmF0aW9uLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcnRlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc2l0ZS1oZWFkZXItc3RydWN0dXJlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc2l0ZS1oZWFkZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zaXRlLWhlYWRlci1zZWFyY2guY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NlYXJjaC1iYXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy90b29sYmFyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc2VjdGlvbi1oZWFkZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zaXRlLW5hdi5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL21lZ2FtZW51LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbW9kYWxzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvanMtcXR5LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY3VycmVuY3ktcGlja2VyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY29sbGFwc2libGUuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9waG90b3N3aXBlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvZGlzY2xvc3VyZS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL211bHRpLXNlbGVjdG9ycy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL21vZGVsLXZpZXdlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3ByaWNlLXJhbmdlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY291bnRkb3duLmNzcycpO1xuXG5AaW1wb3J0IHVybCgncGFydGlhbHMvdGhlbWUtZm9ybXMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvc29jaWFsLWJ1dHRvbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvc2VhcmNoLWdyaWQuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvc2VjdGlvbnMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvcHJvZHVjdC1ibG9ja3MuY3NzJyk7XG5cbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NsaWRlc2hvdy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL2hlcm8uY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb2xsZWN0aW9uLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvdGhlbWUtc2l0ZS1oZWFkZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy90aGVtZS10YWdzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcHJvZHVjdC1zaW5nbGUtdmFyaWFudHMuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wcm9kdWN0LWdyaWQtaXRlbS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NhbGVzLXBvaW50LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcHJvZHVjdC1pbnZlbnRvcnkuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb2xvci1zd2F0Y2guY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb2xsZWN0aW9uLWdyaWQtaXRlbS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NlY3Rpb24tY3VzdG9tLWNvbnRlbnQuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9ibG9nLXBvc3RzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbG9nby1saXN0LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvYmFja2dyb3VuZC1tZWRpYS10ZXh0LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvdGVzdGltb25pYWxzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvYW5ub3VuY2VtZW50LWJhci5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL25ld3NsZXR0ZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9tYXAuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9pbWFnZS1yb3cuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9wcm9tby10eXBlcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3N0b3JlLWF2YWlsYWJpbGl0eS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL2FnZS12ZXJpZmljYXRpb24tcG9wdXAuY3NzJyk7XG5cbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvY2FydC5jc3MnKTtcbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvcHJvZHVjdC5jc3MnKTtcbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvYmxvZy5jc3MnKTtcbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvcGFzc3dvcmQuY3NzJyk7XG5AaW1wb3J0IHVybCgndGVtcGxhdGVzL2dpZnQtY2FyZC5jc3MnKTtcbiIsIjpyb290IHtcbiAgLS1jb2xvckFubm91bmNlbWVudDoge3sgc2V0dGluZ3MuY29sb3JfYW5ub3VuY2VtZW50IHwgZGVmYXVsdDogXCIjMWMxZDFkXCIgfX07XG4gIC0tY29sb3JBbm5vdW5jZW1lbnRUZXh0OiB7eyBzZXR0aW5ncy5jb2xvcl9hbm5vdW5jZW1lbnRfdGV4dCB8IGRlZmF1bHQ6IFwiI2ZmZlwiIH19O1xuXG4gIC0tY29sb3JCb2R5OiB7eyBzZXR0aW5ncy5jb2xvcl9ib2R5X2JnIHwgZGVmYXVsdDogXCIjZmZmXCIgfX07XG4gIC0tY29sb3JCb2R5QWxwaGEwNToge3sgc2V0dGluZ3MuY29sb3JfYm9keV9iZyB8IGRlZmF1bHQ6IFwiI2ZmZlwiIHwgY29sb3JfbW9kaWZ5OiAnYWxwaGEnLCAwLjA1IH19O1xuICAtLWNvbG9yQm9keURpbToge3sgc2V0dGluZ3MuY29sb3JfYm9keV9iZyB8IGRlZmF1bHQ6IFwiIzFjMWQxZFwiIHwgY29sb3JfZGFya2VuOiA1IH19O1xuICAtLWNvbG9yQm9keUxpZ2h0RGltOiB7eyBzZXR0aW5ncy5jb2xvcl9ib2R5X2JnIHwgZGVmYXVsdDogJyNmZmYnIHwgY29sb3JfZGFya2VuOiAyIH19O1xuICAtLWNvbG9yQm9keU1lZGl1bURpbToge3sgc2V0dGluZ3MuY29sb3JfYm9keV9iZyB8IGRlZmF1bHQ6ICcjZmZmJyB8IGNvbG9yX2RhcmtlbjogNCB9fTtcblxuXG4gIC0tY29sb3JCb3JkZXI6IHt7IHNldHRpbmdzLmNvbG9yX2JvcmRlcnMgfCBkZWZhdWx0OiBcIiMxYzFkMWRcIiB9fTtcblxuICAtLWNvbG9yQnRuUHJpbWFyeToge3sgc2V0dGluZ3MuY29sb3JfYnV0dG9uIHwgZGVmYXVsdDogXCIjMDAwXCIgfX07XG4gIC0tY29sb3JCdG5QcmltYXJ5TGlnaHQ6IHt7IHNldHRpbmdzLmNvbG9yX2J1dHRvbiB8IGRlZmF1bHQ6IFwiIzAwMFwiIHwgY29sb3JfbGlnaHRlbjogMTAgfX07XG4gIC0tY29sb3JCdG5QcmltYXJ5RGltOiB7eyBzZXR0aW5ncy5jb2xvcl9idXR0b24gfCBkZWZhdWx0OiBcIiMwMDBcIiB8IGNvbG9yX2RhcmtlbjogNSB9fTtcbiAgLS1jb2xvckJ0blByaW1hcnlUZXh0OiB7eyBzZXR0aW5ncy5jb2xvcl9idXR0b25fdGV4dCB8IGRlZmF1bHQ6IFwiI2ZmZlwiIH19O1xuXG4gIC0tY29sb3JDYXJ0RG90OiB7eyBzZXR0aW5ncy5jb2xvcl9jYXJ0X2RvdCB8IGRlZmF1bHQ6IFwiI2ZmNGYzM1wiIH19O1xuXG4gIC0tY29sb3JEcmF3ZXJzOiB7eyBzZXR0aW5ncy5jb2xvcl9kcmF3ZXJfYmFja2dyb3VuZCB8IGRlZmF1bHQ6IFwiIzFjMWQxZFwiIH19O1xuICAtLWNvbG9yRHJhd2Vyc0RpbToge3sgc2V0dGluZ3MuY29sb3JfZHJhd2VyX2JhY2tncm91bmQgfCBkZWZhdWx0OiBcIiMxYzFkMWRcIiB8IGNvbG9yX2RhcmtlbjogNSB9fTtcbiAgLS1jb2xvckRyYXdlckJvcmRlcjoge3sgc2V0dGluZ3MuY29sb3JfZHJhd2VyX2JvcmRlciB8IGRlZmF1bHQ6IFwiIzM0MzUzNVwiIH19O1xuICAtLWNvbG9yRHJhd2VyVGV4dDoge3sgc2V0dGluZ3MuY29sb3JfZHJhd2VyX3RleHQgfCBkZWZhdWx0OiBcIiNmZmZcIiB9fTtcbiAgLS1jb2xvckRyYXdlclRleHREYXJrOiB7eyBzZXR0aW5ncy5jb2xvcl9kcmF3ZXJfdGV4dCB8IGRlZmF1bHQ6IFwiI2ZmZlwiIHwgY29sb3JfZGFya2VuOiAxNSB9fTtcbiAgLS1jb2xvckRyYXdlckJ1dHRvbjoge3sgc2V0dGluZ3MuY29sb3JfZHJhd2VyX2J1dHRvbiB8IGRlZmF1bHQ6IFwiI2EyNmIyNVwiIH19O1xuICAtLWNvbG9yRHJhd2VyQnV0dG9uVGV4dDoge3sgc2V0dGluZ3MuY29sb3JfZHJhd2VyX2J1dHRvbl90ZXh0IHwgZGVmYXVsdDogXCIjZmZmXCIgfX07XG5cbiAgLS1jb2xvckZvb3Rlcjoge3sgc2V0dGluZ3MuY29sb3JfZm9vdGVyIHwgZGVmYXVsdDogXCIjMTExXCIgfX07XG4gIC0tY29sb3JGb290ZXJUZXh0OiB7eyBzZXR0aW5ncy5jb2xvcl9mb290ZXJfdGV4dCB8IGRlZmF1bHQ6IFwiI2ZmZlwiIH19O1xuICAtLWNvbG9yRm9vdGVyVGV4dEFscGhhMDE6IHt7IHNldHRpbmdzLmNvbG9yX2Zvb3Rlcl90ZXh0IHwgZGVmYXVsdDogXCIjZmZmXCIgfX07XG5cbiAgLS1jb2xvckdyaWRPdmVybGF5OiB7eyBzZXR0aW5ncy5jb2xsZWN0aW9uX2dyaWRfdGludCB8IGRlZmF1bHQ6IFwiIzAwMFwiIH19O1xuICAtLWNvbG9yR3JpZE92ZXJsYXlPcGFjaXR5OiAwLjE7XG5cbiAgLS1jb2xvckhlYWRlclRleHRBbHBoYTAxOiB7eyBzZXR0aW5ncy5jb2xvcl9oZWFkZXJfdGV4dCB8IGRlZmF1bHQ6ICcjMDAwJyB8IGNvbG9yX21vZGlmeTogJ2FscGhhJywgMC4xIH19O1xuXG4gIC0tY29sb3JIZXJvVGV4dDoge3sgc2V0dGluZ3MuY29sb3JfaW1hZ2VfdGV4dCB8IGRlZmF1bHQ6IFwiI2ZmZlwiIH19O1xuXG4gIC0tY29sb3JTbWFsbEltYWdlQmc6IHt7IHNldHRpbmdzLmNvbG9yX3NtYWxsX2ltYWdlX2JnIHwgZGVmYXVsdDogXCIjZWVlXCIgfX07XG4gIC0tY29sb3JMYXJnZUltYWdlQmc6IHt7IHNldHRpbmdzLmNvbG9yX2xhcmdlX2ltYWdlX2JnIHwgZGVmYXVsdDogXCIjMWMxZDFkXCIgfX07XG5cbiAgLS1jb2xvckltYWdlT3ZlcmxheToge3sgc2V0dGluZ3MuY29sb3JfaW1hZ2Vfb3ZlcmxheSB8IGRlZmF1bHQ6IFwiIzAwMFwiIH19O1xuICAtLWNvbG9ySW1hZ2VPdmVybGF5T3BhY2l0eToge3sgc2V0dGluZ3MuY29sb3JfaW1hZ2Vfb3ZlcmxheV9vcGFjaXR5IHwgZGl2aWRlZF9ieTogMTAwLjAgfX07XG4gIC0tY29sb3JJbWFnZU92ZXJsYXlUZXh0U2hhZG93OiB7eyBzZXR0aW5ncy5jb2xvcl9pbWFnZV9vdmVybGF5X3RleHRfc2hhZG93IHwgZGl2aWRlZF9ieTogMTAwLjAgfX07XG5cbiAgLS1jb2xvckxpbms6IHt7IHNldHRpbmdzLmNvbG9yX2JvZHlfdGV4dCB8IGRlZmF1bHQ6IFwiIzFjMWQxZFwiIH19O1xuXG4gIC0tY29sb3JNb2RhbEJnOiB7eyBzZXR0aW5ncy5jb2xvcl9tb2RhbF9vdmVybGF5cyB8IGRlZmF1bHQ6IFwiIzAwMFwiIH19O1xuXG4gIC0tY29sb3JOYXY6IHt7IHNldHRpbmdzLmNvbG9yX2hlYWRlciB8IGRlZmF1bHQ6IFwiI2ZmZlwiIH19O1xuICAtLWNvbG9yTmF2VGV4dDoge3sgc2V0dGluZ3MuY29sb3JfaGVhZGVyX3RleHQgfCBkZWZhdWx0OiBcIiMwMDBcIiB9fTtcblxuICAtLWNvbG9yUHJpY2U6IHt7IHNldHRpbmdzLmNvbG9yX3ByaWNlIHwgZGVmYXVsdDogXCIjMWMxZDFkXCIgfX07XG5cbiAgLS1jb2xvclNhbGVUYWc6IHt7IHNldHRpbmdzLmNvbG9yX3NhbGVfdGFnIHwgZGVmYXVsdDogXCIjMWMxZDFkXCIgfX07XG4gIC0tY29sb3JTYWxlVGFnVGV4dDoge3sgc2V0dGluZ3MuY29sb3Jfc2FsZV90YWdfdGV4dCB8IGRlZmF1bHQ6IFwiI2ZmZmZmZlwiIH19O1xuXG4gIC0tY29sb3JUZXh0Qm9keToge3sgc2V0dGluZ3MuY29sb3JfYm9keV90ZXh0IHwgZGVmYXVsdDogXCIjMWMxZDFkXCIgfX07XG4gIC0tY29sb3JUZXh0Qm9keUFscGhhMDE1OiB7eyBzZXR0aW5ncy5jb2xvcl9ib2R5X3RleHQgfCBkZWZhdWx0OiAnIzFjMWQxZCcgfCBjb2xvcl9tb2RpZnk6ICdhbHBoYScsIDAuMTUgfX07XG4gIC0tY29sb3JUZXh0Qm9keUFscGhhMDA1OiB7eyBzZXR0aW5ncy5jb2xvcl9ib2R5X3RleHQgfCBkZWZhdWx0OiBcIiMxYzFkMWRcIiAgfCBjb2xvcl9tb2RpZnk6ICdhbHBoYScsIDAuMDUgfX07XG4gIC0tY29sb3JUZXh0Qm9keUFscGhhMDA4OiB7eyBzZXR0aW5ncy5jb2xvcl9ib2R5X3RleHQgfCBkZWZhdWx0OiAnIzFjMWQxZCcgfCBjb2xvcl9tb2RpZnk6ICdhbHBoYScsIDAuMDggfX07XG4gIC0tY29sb3JUZXh0U2F2aW5nczoge3sgc2V0dGluZ3MuY29sb3Jfc2F2aW5nc190ZXh0IHwgZGVmYXVsdDogXCIjMWMxZDFkXCIgfX07XG5cbiAgLS11cmxJY29TZWxlY3Q6IHVybCh7eyAnaWNvLXNlbGVjdC5zdmcnIHwgYXNzZXRfdXJsIHwgc3BsaXQ6ICc/JyB8IGZpcnN0IH19KTtcbiAgLS11cmxJY29TZWxlY3RGb290ZXI6IHVybCh7eyAnaWNvLXNlbGVjdC1mb290ZXIuc3ZnJyB8IGFzc2V0X3VybCB8IHNwbGl0OiAnPycgfCBmaXJzdCB9fSk7XG4gIC0tdXJsSWNvU2VsZWN0V2hpdGU6IHVybCh7eyAnaWNvLXNlbGVjdC13aGl0ZS5zdmcnIHwgYXNzZXRfdXJsIHwgc3BsaXQ6ICc/JyB8IGZpcnN0IH19KTtcblxuICAtLWdyaWQtZ3V0dGVyOiAxN3B4O1xuICAtLWRyYXdlci1ndXR0ZXI6IDIwcHg7XG5cbiAgLS1zaXplQ2hhcnRNYXJnaW46IDI1cHggMDtcbiAgLS1zaXplQ2hhcnRJY29uTWFyZ2luOiA1cHg7XG5cbiAgLS1uZXdzbGV0dGVyUmVtaW5kZXJQYWRkaW5nOiA0MHB4O1xuXG4gIC8qU2hvcCBQYXkgSW5zdGFsbG1lbnRzKi9cbiAgLS1jb2xvci1ib2R5LXRleHQ6IHt7IHNldHRpbmdzLmNvbG9yX2JvZHlfdGV4dCB8IGRlZmF1bHQ6IFwiIzFjMWQxZFwiIH19O1xuICAtLWNvbG9yLWJvZHk6IHt7IHNldHRpbmdzLmNvbG9yX2JvZHlfYmcgfCBkZWZhdWx0OiBcIiNmZmZcIiB9fTtcbiAgLS1jb2xvci1iZzoge3sgc2V0dGluZ3MuY29sb3JfYm9keV9iZyB8IGRlZmF1bHQ6IFwiI2ZmZlwiIH19O1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIDpyb290IHtcbiAgICAtLWdyaWQtZ3V0dGVyOiAyMnB4O1xuICAgIC0tZHJhd2VyLWd1dHRlcjogMzBweDtcbiAgfVxufVxuIiwiQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHByZWxvYWRpbmcge1xuICAwJSB7ICAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlOyB0cmFuc2Zvcm06IHNjYWxlM2QoMCwgMSwgMSk7IG9wYWNpdHk6IDA7IH1cbiAgNDAlIHsgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDUwJTsgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyBvcGFjaXR5OiAxOyB9XG4gIDQxJSB7ICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTsgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyBvcGFjaXR5OiAxOyB9XG4gIDEwMCUgeyB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDUwJTsgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDEsIDEpOyBvcGFjaXR5OiAxOyB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVzaG93QmFycyB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIHRvIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG59XG5cbi8qQWpheCBsb2FkIHByb2R1Y3RzKi9cbkBrZXlmcmFtZXMgZ3JpZC1wcm9kdWN0X19sb2FkaW5nIHtcbiAgMCUgeyBvcGFjaXR5OiAxOyB9XG4gIDYwJSB7IG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cblxuLypCdXR0b24gYW5pbWF0aW9ucyovXG5Aa2V5ZnJhbWVzIHNoaW5lIHtcbiAgMTAwJSB7XG4gICAgbGVmdDogLTIwMCU7XG4gIH1cbn1cblxuLypPdmVybGF5IGFuaW1hdGlvbnMgKG1vZGFscywgcGFuZWxzKSovXG5Aa2V5ZnJhbWVzIG92ZXJsYXktb24ge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICB0byB7IG9wYWNpdHk6IDAuNjsgfVxufVxuXG5Aa2V5ZnJhbWVzIG92ZXJsYXktb2ZmIHtcbiAgZnJvbSB7IG9wYWNpdHk6IDAuNjsgfVxuICB0byB7IG9wYWNpdHk6IDA7IH1cbn1cblxuQGtleWZyYW1lcyBmdWxsLW92ZXJsYXktb24ge1xuICBmcm9tIHsgb3BhY2l0eTogMDsgfVxuICB0byB7IG9wYWNpdHk6IDE7IH1cbn1cblxuQGtleWZyYW1lcyBmdWxsLW92ZXJsYXktb2ZmIHtcbiAgZnJvbSB7IG9wYWNpdHk6IDE7IH1cbiAgdG8geyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgbW9kYWwtb3BlbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1vZGFsLWNsb3Npbmcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICB9XG59XG5cbi8qVGV4dCBhbmltYXRpb25zKi9cbkBrZXlmcmFtZXMgcmlzZS11cCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEyMCUpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByaXNlLXVwLW91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEyMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1pbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlLW91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLypCYWNrZ3JvdW5kIGltYWdlIGFuaW1hdGlvbnMqL1xuQGtleWZyYW1lcyB6b29tLWZhZGUge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zLDEuMyk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLDEpO1xuICB9XG59XG5cbi8qUHJvZHVjdCBmb3JtIHBsYWNlaG9sZGVyKi9cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItc2hpbW1lciB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTUwJSAwO1xuICB9XG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDE1MCUgMDtcbiAgfVxufVxuIiwiLmZsaWNraXR5LWVuYWJsZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mbGlja2l0eS1lbmFibGVkOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxuXG4uZmxpY2tpdHktdmlld3BvcnQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cztcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZmxpY2tpdHktc2xpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIC5mbGlja2l0eS12aWV3cG9ydCB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1kcmFnZ2FibGUgLmZsaWNraXR5LXZpZXdwb3J0LmlzLXBvaW50ZXItZG93biB7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbi5mbGlja2l0eS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgQG5lc3QgLmhlcm8gJiB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gICAgYm94LXNoYWRvdzogMCA1cHggNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgfVxufVxuXG4uZmxpY2tpdHktYnV0dG9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmxpY2tpdHktYnV0dG9uOmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgY3Vyc29yOiBhdXRvO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gIC8qU21hbGxlciBhcnJvd3Mgb24gbW9iaWxlKi9cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IDMzcHg7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICB9XG59XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEuMTIpO1xufVxuLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b246YWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNXMgZWFzZS1vdXQ7XG59XG5cbi5mbGlja2l0eS1wcmV2aW91cyB7IGxlZnQ6IDEwcHg7IH1cbi5mbGlja2l0eS1uZXh0IHsgcmlnaHQ6IDEwcHg7IH1cbi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LXByZXZpb3VzIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDEwcHg7XG59XG4uZmxpY2tpdHktcnRsIC5mbGlja2l0eS1uZXh0IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwcHg7XG59XG5cbi5mbGlja2l0eS1idXR0b24taWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMzUlO1xuICB0b3A6IDM1JTtcbiAgd2lkdGg6IDMwJTtcbiAgaGVpZ2h0OiAzMCU7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcblxuICBAbmVzdCAuaGVybyAmIHtcbiAgICBib3R0b206IDIwcHg7XG4gICAgY29sb3I6ICRzbGlkZXNob3ctdGV4dC1saWdodDtcbiAgfVxufVxuXG4uZmxpY2tpdHktcnRsIC5mbGlja2l0eS1wYWdlLWRvdHMgeyBkaXJlY3Rpb246IHJ0bDsgfVxuXG4uZmxpY2tpdHktcGFnZS1kb3RzIC5kb3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiA2cHg7XG4gIGhlaWdodDogNnB4O1xuICBtYXJnaW46IDAgNXB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgb3BhY2l0eTogMC40O1xuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNjtcbiAgfVxufVxuXG4uZmxpY2tpdHktcGFnZS1kb3RzIC5kb3QuaXMtc2VsZWN0ZWQge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHdpZHRoOiA5cHg7XG4gIGhlaWdodDogOXB4O1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1mYWRlIC5mbGlja2l0eS1zbGlkZXIgPiAqIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5mbGlja2l0eS1lbmFibGVkLmlzLWZhZGUgLmZsaWNraXR5LXNsaWRlciA+IC5pcy1zZWxlY3RlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB6LWluZGV4OiAxO1xufVxuXG4vKlxuICBIZXJvIHNwZWNpZmljIHN0eWxlcyBmb3IgZmxpY2tpdHkgZG90cy9hcnJvd3NcbiAqL1xuLmhlcm9bZGF0YS1hcnJvd3M9XCJ0cnVlXCJdIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHotaW5kZXg6IDU7XG5cbiAgJiAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbiB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogLTIwcHg7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEyKTtcbiAgfVxuICAmIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXByZXZpb3VzIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiA5MHB4O1xuICB9XG4gICYgLmZsaWNraXR5LW5leHQge1xuICAgIHJpZ2h0OiA0MHB4O1xuICB9XG4gICYuZmxpY2tpdHktcnRsIC5mbGlja2l0eS1wcmV2aW91cyB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogOTBweDtcbiAgfVxuICAmLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktbmV4dCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNDBweDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICYgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xuICAgICAgYm90dG9tOiAtMTZweDtcbiAgICB9XG4gICAgJiAuZmxpY2tpdHktcHJldmlvdXMge1xuICAgICAgcmlnaHQ6IDYwcHg7XG4gICAgfVxuICAgICYgLmZsaWNraXR5LW5leHQge1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgfVxuICAgICYuZmxpY2tpdHktcnRsIC5mbGlja2l0eS1wcmV2aW91cyB7XG4gICAgICBsZWZ0OiA2MHB4O1xuICAgIH1cbiAgICAmLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktbmV4dCB7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKkNoYW5nZSBkb3RzIHRvIGJhcnMqL1xuW2RhdGEtYmFycz1cInRydWVcIl0ge1xuICAmLmhlcm8gLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2cHg7XG4gICAgei1pbmRleDogNjtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHdpZHRoOiA0NXB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJi5pcy1zZWxlY3RlZDphZnRlciB7XG4gICAgICBhbmltYXRpb246IHNsaWRlc2hvd0JhcnMgMHMgbGluZWFyIGZvcndhcmRzO1xuICAgIH1cbiAgfVxufVxuIiwiLyogRnVuY3Rpb25hbCBzdHlsaW5nO1xuICogVGhlc2Ugc3R5bGVzIGFyZSByZXF1aXJlZCBmb3Igbm9VaVNsaWRlciB0byBmdW5jdGlvbi5cbiAqIFlvdSBkb24ndCBuZWVkIHRvIGNoYW5nZSB0aGVzZSBydWxlcyB0byBhcHBseSB5b3VyIGRlc2lnbi5cbiAqL1xuIC5ub1VpLXRhcmdldCxcbiAubm9VaS10YXJnZXQgKiB7XG4gICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gfVxuXG4gLm5vVWktdGFyZ2V0IHtcbiAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiB9XG5cbiAubm9VaS1iYXNlLFxuIC5ub1VpLWNvbm5lY3RzIHtcbiAgIHdpZHRoOiAxMDAlO1xuICAgaGVpZ2h0OiAxMDAlO1xuICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgei1pbmRleDogMTtcbiB9XG5cbiAvKiBXcmFwcGVyIGZvciBhbGwgY29ubmVjdCBlbGVtZW50cy5cbiAgKi9cbiAubm9VaS1jb25uZWN0cyB7XG4gICBvdmVyZmxvdzogaGlkZGVuO1xuICAgei1pbmRleDogMDtcbiB9XG5cbiAubm9VaS1jb25uZWN0LFxuIC5ub1VpLW9yaWdpbiB7XG4gICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgei1pbmRleDogMTtcbiAgIHRvcDogMDtcbiAgIHJpZ2h0OiAwO1xuICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgdHJhbnNmb3JtLXN0eWxlOiBmbGF0O1xuIH1cblxuIC5ub1VpLWNvbm5lY3Qge1xuICAgaGVpZ2h0OiAxMDAlO1xuICAgd2lkdGg6IDEwMCU7XG4gfVxuXG4gLm5vVWktb3JpZ2luIHtcbiAgIGhlaWdodDogMTAlO1xuICAgd2lkdGg6IDEwJTtcbiB9XG5cbiAvKiBPZmZzZXQgZGlyZWN0aW9uXG4gICovXG4gLm5vVWktdHh0LWRpci1ydGwubm9VaS1ob3Jpem9udGFsIC5ub1VpLW9yaWdpbiB7XG4gICBsZWZ0OiAwO1xuICAgcmlnaHQ6IGF1dG87XG4gfVxuXG4gLyogR2l2ZSBvcmlnaW5zIDAgaGVpZ2h0L3dpZHRoIHNvIHRoZXkgZG9uJ3QgaW50ZXJmZXJlIHdpdGggY2xpY2tpbmcgdGhlXG4gICogY29ubmVjdCBlbGVtZW50cy5cbiAgKi9cbiAubm9VaS12ZXJ0aWNhbCAubm9VaS1vcmlnaW4ge1xuICAgd2lkdGg6IDA7XG4gfVxuIC5ub1VpLWhvcml6b250YWwgLm5vVWktb3JpZ2luIHtcbiAgIGhlaWdodDogMDtcbiB9XG4gLm5vVWktaGFuZGxlIHtcbiAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuIH1cbiAubm9VaS10b3VjaC1hcmVhIHtcbiAgIGhlaWdodDogMTAwJTtcbiAgIHdpZHRoOiAxMDAlO1xuIH1cbiAubm9VaS1zdGF0ZS10YXAgLm5vVWktY29ubmVjdCxcbiAubm9VaS1zdGF0ZS10YXAgLm5vVWktb3JpZ2luIHtcbiAgIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcztcbiB9XG4gLm5vVWktc3RhdGUtZHJhZyAqIHtcbiAgIGN1cnNvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuIH1cblxuIC8qIFNsaWRlciBzaXplIGFuZCBoYW5kbGUgcGxhY2VtZW50O1xuICAqL1xuIC5ub1VpLWhvcml6b250YWwge1xuICAgaGVpZ2h0OiAxOHB4O1xuIH1cbiAubm9VaS1ob3Jpem9udGFsIC5ub1VpLWhhbmRsZSB7XG4gICB3aWR0aDogMzRweDtcbiAgIGhlaWdodDogMjhweDtcbiAgIHJpZ2h0OiAtMTdweDtcbiAgIHRvcDogLTZweDtcbiB9XG4gLm5vVWktdmVydGljYWwge1xuICAgd2lkdGg6IDE4cHg7XG4gfVxuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZSB7XG4gICB3aWR0aDogMjhweDtcbiAgIGhlaWdodDogMzRweDtcbiAgIHJpZ2h0OiAtNnB4O1xuICAgdG9wOiAtMTdweDtcbiB9XG4gLm5vVWktdHh0LWRpci1ydGwubm9VaS1ob3Jpem9udGFsIC5ub1VpLWhhbmRsZSB7XG4gICBsZWZ0OiAtMTdweDtcbiAgIHJpZ2h0OiBhdXRvO1xuIH1cblxuIC8qIFN0eWxpbmc7XG4gICogR2l2aW5nIHRoZSBjb25uZWN0IGVsZW1lbnQgYSBib3JkZXIgcmFkaXVzIGNhdXNlcyBpc3N1ZXMgd2l0aCB1c2luZyB0cmFuc2Zvcm06IHNjYWxlXG4gICovXG4gLm5vVWktdGFyZ2V0IHtcbiAgIGJhY2tncm91bmQ6ICNGQUZBRkE7XG4gICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICBib3JkZXI6IDFweCBzb2xpZCAjRDNEM0QzO1xuICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4ICNGMEYwRjAsIDAgM3B4IDZweCAtNXB4ICNCQkI7XG4gfVxuIC5ub1VpLWNvbm5lY3RzIHtcbiAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiB9XG4gLm5vVWktY29ubmVjdCB7XG4gICBiYWNrZ3JvdW5kOiAjM0ZCOEFGO1xuIH1cbiAvKiBIYW5kbGVzIGFuZCBjdXJzb3JzO1xuICAqL1xuIC5ub1VpLWRyYWdnYWJsZSB7XG4gICBjdXJzb3I6IGV3LXJlc2l6ZTtcbiB9XG4gLm5vVWktdmVydGljYWwgLm5vVWktZHJhZ2dhYmxlIHtcbiAgIGN1cnNvcjogbnMtcmVzaXplO1xuIH1cbiAubm9VaS1oYW5kbGUge1xuICAgYm9yZGVyOiAxcHggc29saWQgI0Q5RDlEOTtcbiAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICBjdXJzb3I6IGRlZmF1bHQ7XG4gICBib3gtc2hhZG93OiBpbnNldCAwIDAgMXB4ICNGRkYsIGluc2V0IDAgMXB4IDdweCAjRUJFQkVCLCAwIDNweCA2cHggLTNweCAjQkJCO1xuIH1cbiAubm9VaS1hY3RpdmUge1xuICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDFweCAjRkZGLCBpbnNldCAwIDFweCA3cHggI0RERCwgMCAzcHggNnB4IC0zcHggI0JCQjtcbiB9XG4gLyogSGFuZGxlIHN0cmlwZXM7XG4gICovXG4gLm5vVWktaGFuZGxlOmJlZm9yZSxcbiAubm9VaS1oYW5kbGU6YWZ0ZXIge1xuICAgY29udGVudDogXCJcIjtcbiAgIGRpc3BsYXk6IGJsb2NrO1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgaGVpZ2h0OiAxNHB4O1xuICAgd2lkdGg6IDFweDtcbiAgIGJhY2tncm91bmQ6ICNFOEU3RTY7XG4gICBsZWZ0OiAxNHB4O1xuICAgdG9wOiA2cHg7XG4gfVxuIC5ub1VpLWhhbmRsZTphZnRlciB7XG4gICBsZWZ0OiAxN3B4O1xuIH1cbiAubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGU6YmVmb3JlLFxuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLWhhbmRsZTphZnRlciB7XG4gICB3aWR0aDogMTRweDtcbiAgIGhlaWdodDogMXB4O1xuICAgbGVmdDogNnB4O1xuICAgdG9wOiAxNHB4O1xuIH1cbiAubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGU6YWZ0ZXIge1xuICAgdG9wOiAxN3B4O1xuIH1cbiAvKiBEaXNhYmxlZCBzdGF0ZTtcbiAgKi9cbiBbZGlzYWJsZWRdIC5ub1VpLWNvbm5lY3Qge1xuICAgYmFja2dyb3VuZDogI0I4QjhCODtcbiB9XG4gW2Rpc2FibGVkXS5ub1VpLXRhcmdldCxcbiBbZGlzYWJsZWRdLm5vVWktaGFuZGxlLFxuIFtkaXNhYmxlZF0gLm5vVWktaGFuZGxlIHtcbiAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gfVxuIC8qIEJhc2U7XG4gICpcbiAgKi9cbiAubm9VaS1waXBzLFxuIC5ub1VpLXBpcHMgKiB7XG4gICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuIH1cbiAubm9VaS1waXBzIHtcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIGNvbG9yOiAjOTk5O1xuIH1cbiAvKiBWYWx1ZXM7XG4gICpcbiAgKi9cbiAubm9VaS12YWx1ZSB7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgdGV4dC1hbGlnbjogY2VudGVyO1xuIH1cbiAubm9VaS12YWx1ZS1zdWIge1xuICAgY29sb3I6ICNjY2M7XG4gICBmb250LXNpemU6IDEwcHg7XG4gfVxuIC8qIE1hcmtpbmdzO1xuICAqXG4gICovXG4gLm5vVWktbWFya2VyIHtcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIGJhY2tncm91bmQ6ICNDQ0M7XG4gfVxuIC5ub1VpLW1hcmtlci1zdWIge1xuICAgYmFja2dyb3VuZDogI0FBQTtcbiB9XG4gLm5vVWktbWFya2VyLWxhcmdlIHtcbiAgIGJhY2tncm91bmQ6ICNBQUE7XG4gfVxuIC8qIEhvcml6b250YWwgbGF5b3V0O1xuICAqXG4gICovXG4gLm5vVWktcGlwcy1ob3Jpem9udGFsIHtcbiAgIHBhZGRpbmc6IDEwcHggMDtcbiAgIGhlaWdodDogODBweDtcbiAgIHRvcDogMTAwJTtcbiAgIGxlZnQ6IDA7XG4gICB3aWR0aDogMTAwJTtcbiB9XG4gLm5vVWktdmFsdWUtaG9yaXpvbnRhbCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDUwJSk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpO1xuIH1cbiAubm9VaS1ydGwgLm5vVWktdmFsdWUtaG9yaXpvbnRhbCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgNTAlKTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgNTAlKTtcbiB9XG4gLm5vVWktbWFya2VyLWhvcml6b250YWwubm9VaS1tYXJrZXIge1xuICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICB3aWR0aDogMnB4O1xuICAgaGVpZ2h0OiA1cHg7XG4gfVxuIC5ub1VpLW1hcmtlci1ob3Jpem9udGFsLm5vVWktbWFya2VyLXN1YiB7XG4gICBoZWlnaHQ6IDEwcHg7XG4gfVxuIC5ub1VpLW1hcmtlci1ob3Jpem9udGFsLm5vVWktbWFya2VyLWxhcmdlIHtcbiAgIGhlaWdodDogMTVweDtcbiB9XG4gLyogVmVydGljYWwgbGF5b3V0O1xuICAqXG4gICovXG4gLm5vVWktcGlwcy12ZXJ0aWNhbCB7XG4gICBwYWRkaW5nOiAwIDEwcHg7XG4gICBoZWlnaHQ6IDEwMCU7XG4gICB0b3A6IDA7XG4gICBsZWZ0OiAxMDAlO1xuIH1cbiAubm9VaS12YWx1ZS12ZXJ0aWNhbCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gfVxuIC5ub1VpLXJ0bCAubm9VaS12YWx1ZS12ZXJ0aWNhbCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDUwJSk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1MCUpO1xuIH1cbiAubm9VaS1tYXJrZXItdmVydGljYWwubm9VaS1tYXJrZXIge1xuICAgd2lkdGg6IDVweDtcbiAgIGhlaWdodDogMnB4O1xuICAgbWFyZ2luLXRvcDogLTFweDtcbiB9XG4gLm5vVWktbWFya2VyLXZlcnRpY2FsLm5vVWktbWFya2VyLXN1YiB7XG4gICB3aWR0aDogMTBweDtcbiB9XG4gLm5vVWktbWFya2VyLXZlcnRpY2FsLm5vVWktbWFya2VyLWxhcmdlIHtcbiAgIHdpZHRoOiAxNXB4O1xuIH1cbiAubm9VaS10b29sdGlwIHtcbiAgIGRpc3BsYXk6IGJsb2NrO1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgYm9yZGVyOiAxcHggc29saWQgI0Q5RDlEOTtcbiAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICBjb2xvcjogIzAwMDtcbiAgIHBhZGRpbmc6IDVweDtcbiAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gfVxuIC5ub1VpLWhvcml6b250YWwgLm5vVWktdG9vbHRpcCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICBsZWZ0OiA1MCU7XG4gICBib3R0b206IDEyMCU7XG4gfVxuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLXRvb2x0aXAge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgdG9wOiA1MCU7XG4gICByaWdodDogMTIwJTtcbiB9XG4gLm5vVWktaG9yaXpvbnRhbCAubm9VaS1vcmlnaW4gPiAubm9VaS10b29sdGlwIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwKTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgMCk7XG4gICBsZWZ0OiBhdXRvO1xuICAgYm90dG9tOiAxMHB4O1xuIH1cbiAubm9VaS12ZXJ0aWNhbCAubm9VaS1vcmlnaW4gPiAubm9VaS10b29sdGlwIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE4cHgpO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTE4cHgpO1xuICAgdG9wOiBhdXRvO1xuICAgcmlnaHQ6IDI4cHg7XG4gfVxuIiwidG9vbC10aXAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG50b29sLXRpcFtkYXRhLXRvb2wtdGlwLW9wZW49XCJ0cnVlXCJdIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwMDAxO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTBlMGUwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yTW9kYWxCZyk7XG4gICAgYW5pbWF0aW9uOiBvdmVybGF5LW9uIDAuM3MgZm9yd2FyZHM7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbi50b29sLXRpcF9faW5uZXIge1xuICBhbmltYXRpb246IG1vZGFsLWNsb3NlIDAuM3MgZm9yd2FyZHM7XG4gIG9wYWNpdHk6IDA7XG5cbiAgQG5lc3QgdG9vbC10aXBbZGF0YS10b29sLXRpcC1vcGVuPVwidHJ1ZVwiXSAmIHtcbiAgICBhbmltYXRpb246IG1vZGFsLW9wZW4gMC4zcyBmb3J3YXJkcztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3JCb2R5KTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjBweCAjMDAwMDAwMTc7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBtYXgtd2lkdGg6IDcyMHB4O1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgbWluLWhlaWdodDogMjUwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiA5MyU7XG4gICAgfVxuICB9XG59XG5cbi50b29sLXRpcF9fY29udGVudCB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiA4MHZoO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZvbnQtc2l6ZTogMC44NWVtO1xuICB9XG59XG5cbi50b29sLXRpcF9fY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi50b29sLXRpcF9fY2xvc2UgLmljb24ge1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAyOHB4O1xufVxuIiwiLnRvb2wtdGlwLXRyaWdnZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnRvb2wtdGlwLXRyaWdnZXIgLmljb24ge1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAyOHB4O1xufVxuXG4udG9vbC10aXAtdHJpZ2dlcl9fdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi50b29sLXRpcC10cmlnZ2VyX190aXRsZTpob3Zlcixcbi50b29sLXRpcC10cmlnZ2VyX190aXRsZTpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLnRvb2wtdGlwLXRyaWdnZXJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IC8qIEVuc3VyZSBvdXIgY29udGVudCBpcyBhbHdheXMgaGlkZGVuICovXG59XG5cbi8qIFNpemUgY2hhcnQgdHJpZ2dlciAqL1xuXG4uc2l6ZS1jaGFydF9fc3RhbmRhbG9uZSB7XG4gIG1hcmdpbjogdmFyKC0tc2l6ZUNoYXJ0TWFyZ2luKTtcblxuICAmIHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLXNpemVDaGFydEljb25NYXJnaW4pO1xuICB9XG59XG4iLCIudGV4dC13aXRoLWljb25zX19ibG9ja3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gIG1hcmdpbi1yaWdodDogLTMwcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmhhcy0xLXBlci1yb3cgLnRleHQtd2l0aC1pY29uc19fYmxvY2sge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmhhcy0yLXBlci1yb3cgLnRleHQtd2l0aC1pY29uc19fYmxvY2sge1xuICB3aWR0aDogNTAlO1xufVxuXG4uaGFzLTMtcGVyLXJvdyAudGV4dC13aXRoLWljb25zX19ibG9jayB7XG4gIHdpZHRoOiAzMy4zMzMlO1xufVxuXG4uaGFzLTQtcGVyLXJvdyAudGV4dC13aXRoLWljb25zX19ibG9jayB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5oYXMtNS1wZXItcm93IC50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnRleHQtd2l0aC1pY29uc19fYmxvY2tzIC50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleDogbm9uZTtcbiAgcGFkZGluZzogMzBweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDAgNjBweDtcbiAgfVxufVxuXG4udGV4dC13aXRoLWljb25zX19ibG9jay1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogNjBweDtcbiAgICAgIGhlaWdodDogNjBweDtcbiAgICB9XG4gIH1cbn1cblxuLnRleHQtd2l0aC1pY29uc19fYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4iLCIvKiBOZXdzbGV0dGVyIHJlbWluZGVyICovXG5cbm5ld3NsZXR0ZXItcmVtaW5kZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDIwcHg7XG4gIGJvdHRvbTogMjBweDtcbiAgdHJhbnNpdGlvbjogZWFzZS1pbi1vdXQgMC4zcyBvcGFjaXR5O1xuICBib3gtc2hhZG93OiAwIDEycHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBtYXgtd2lkdGg6IDI0MHB4O1xuICB6LWluZGV4OiAxMDtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgfVxuXG4gICZbZGF0YS1lbmFibGVkPVwiZmFsc2VcIl0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgJltjbGFzcyo9XCJjb2xvci1zY2hlbWUtXCJdOm5vdCguY29sb3Itc2NoZW1lLW5vbmUpIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cblxuICAmIC5jb2xvci1zY2hlbWUtbm9uZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yQnRuUHJpbWFyeVRleHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yQnRuUHJpbWFyeSk7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItcmVtaW5kZXJfX21lc3NhZ2UuaDMge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLW5ld3NsZXR0ZXJSZW1pbmRlclBhZGRpbmcpO1xuICBtYXJnaW46IDA7XG59XG4iLCIucGFyYWxsYXgtaW1hZ2UgaW1nIHtcbiAgd2lkdGg6ICAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ucGFyYWxsYXgtaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAgMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNXMgbGluZWFyO1xufVxuIiwiLyogQ291bnRkb3duICovXG4uY291bnRkb3duLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jb3VudGRvd25fX2JhY2tncm91bmQtaW1hZ2Utd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmNvdW50ZG93bl9fYmFja2dyb3VuZC1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLmNvdW50ZG93bl9fbW9iaWxlLWltYWdlLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5jb3VudGRvd25fX21vYmlsZS1pbWFnZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5jb3VudGRvd24tbGF5b3V0LS1iYW5uZXIge1xuICAmIC5jb3VudGRvd25fX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDJyZW07XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICBnYXA6IDFyZW07XG4gICAgICBwYWRkaW5nOiAxLjZyZW0gMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLmNvdW50ZG93bi1ibG9ja3MtLTIucGFnZS13aWR0aCB7XG4gICAgJiAuY291bnRkb3duX19jb250ZW50IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cbiAgfVxuXG4gICYuY291bnRkb3duLWJsb2Nrcy0tMiB7XG4gICAgJiAuY291bnRkb3duX19jb250ZW50IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICYgLmNvdW50ZG93bl9fYmxvY2sge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHdpZHRoOiAzMyU7XG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX2NvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiA2NTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDVyZW0gMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIEBuZXN0IC5wYWdlLXdpZHRoICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIEBuZXN0IC5jb3VudGRvd24tbGF5b3V0LS1oZXJvICYge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX2Jsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMXJlbSBhdXRvO1xuICB6LWluZGV4OiAzO1xufVxuXG4uY291bnRkb3duX19ibG9jay0tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICYgLmNvdW50ZG93bl9fYmxvY2stLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwOyAvKiBOZXN0ZWQgYnV0dG9uIHdpbGwgZ2V0IHNwYWNpbmcgZnJvbSB0ZXh0IGFib3ZlIGl0ICovXG4gIH1cbn1cblxuLmNvdW50ZG93bl9fYmxvY2stLXRpbWVyLFxuLmNvdW50ZG93bl9fYmxvY2stLWNvbnRlbnQge1xuICBAbmVzdCAuY291bnRkb3duLWJsb2Nrcy0tMi5jb3VudGRvd24tbGF5b3V0LS1iYW5uZXIgJiB7XG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDUwJVxuICAgIH1cbiAgfVxufVxuXG4uY291bnRkb3duX19ibG9jay0tYnV0dG9uLmJ1dHRvbi1ibG9jay1hY3RpdmUge1xuICBAbmVzdCAuY291bnRkb3duLWJsb2Nrcy0tMi5jb3VudGRvd24tbGF5b3V0LS1iYW5uZXIgJiB7XG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDUwJVxuICAgIH1cbiAgfVxufVxuXG4uY291bnRkb3duX190ZXh0LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICBAbmVzdCAuY291bnRkb3duLWxheW91dC0taGVybyAmIHtcbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxufVxuXG4uY291bnRkb3duX190ZXh0LXdyYXBwZXItLWNvbnRlbnQtYWxpZ25tZW50LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uY291bnRkb3duX190ZXh0LXdyYXBwZXItLWNvbnRlbnQtYWxpZ25tZW50LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb3VudGRvd25fX2Rpc3BsYXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmNvdW50ZG93bl9fZGlzcGxheS0tdmlzaWJsZSArIC5jb3VudGRvd25fX3RpbWVyLW1lc3NhZ2UtLXZpc2libGUge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG5cbi5jb3VudGRvd25fX2Rpc3BsYXktLWhpZGRlbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IGVhc2Utb3V0IDNzO1xufVxuXG4uY291bnRkb3duX19kaXNwbGF5LWJsb2NrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xuICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgJiBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICB9XG4gIH1cblxuICAmIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjdweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICB9XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgfVxufVxuXG4uY291bnRkb3duX190aW1lci1tZXNzYWdlIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMDtcbn1cblxuLmNvdW50ZG93bl9fdGltZXItbWVzc2FnZS0tdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1pbiAxcztcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uY291bnRkb3duX19ibG9jay0taGlkZGVuIHtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1vdXQgMXM7XG4gIHdpZHRoOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jb3VudGRvd25fX292ZXJsYXkge1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3VudGRvd24tb3ZlcmxheS1yZ2JhKTtcbiAgfVxufVxuIiwiLmhvdHNwb3RzLXNlY3Rpb24gLmluZGV4LXNlY3Rpb24ge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5ob3RzcG90cy1zZWN0aW9uIC5ob3RzcG90cy13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gICYuaXMtcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5cbi5ob3RzcG90c19fdGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbn1cblxuLmhvdHNwb3RzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNzAlO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiAuZ3JpZF9faW1hZ2UtcmF0aW8gaW1nIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICBAbmVzdCBbZGF0YS1hbmltYXRlX2ltYWdlcz1cInRydWVcIl0gJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4uaG90c3BvdHNfX2J1dHRvbnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmhvdHNwb3RfX2J1dHRvbiB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogNnB4O1xuICB9XG5cblxuICAmOmhvdmVyIC5ob3RzcG90X19idXR0b24tY29udGVudCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG59XG5cbi5ob3RzcG90X19idXR0b24tY29udGVudCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDFyZW0pO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICBtaW4td2lkdGg6IDVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogM3B4IDNweCAxMHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cbiAgJiBwLFxuICAmIHNwYW4ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMFxuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAgNXB4IDEwcHggNXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWNvbG9yQm9keSkgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmIC5jb250ZW50X19wcmljZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLmhvdHNwb3RzX19jb250ZW50IHtcbiAgd2lkdGg6IDMwJTtcbiAgcGFkZGluZzogMjRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAbmVzdCAucGFnZS13aWR0aCAmIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5wYWdlLXdpZHRoLmlzLXJldmVyc2UgJiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbSAyMHB4IDA7XG4gIH1cbn1cblxuLmhvdHNwb3QtY29udGVudF9fYmxvY2sge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtaGVpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYW5pbWF0aW9uOiBmYWRlLWluIC41cyBlYXNlIDBzIGZvcndhcmRzO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG5cbiAgLyogYW5pbWF0aW9uIGFuZCBwb3NpdGlvbjpzdGlja3kgY2F1c2VzIGlzc3VlcyBpbiB0aGVtZXMgd2hlcmUgcXVpY2tzaG9wIG1vZGFsIGlzIG5lc3RlZCAqL1xuICBAbmVzdCAubW9kYWwtb3BlbiAmLFxuICAubW9kYWwtY2xvc2luZyAmIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlLXdyYXAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX3RhZ3Mge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X190YWcge1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLmdyaWQtaXRlbV9fbWV0YSxcbiAgJiAuZ3JpZC1wcm9kdWN0X19tZXRhIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgJiAuZ3JpZC1pdGVtX19tZXRhLW1haW4sXG4gICAgICAmIC5ncmlkLWl0ZW1fX21ldGEtc2Vjb25kYXJ5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG5cbiAgICAmIC5ncmlkLXByb2R1Y3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmIC5xdWljay1hZGQtYnRuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAuZ3JpZC1pdGVtX19saW5rLFxuICAgICYgLmdyaWQtcHJvZHVjdF9fbGluayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLyogVE9ETzogQWRqdXN0IGdsb2JhbCBzdHlsaW5ncyBpbiBncmlkLmNzcyBzbyB3ZSBkb24ndCBoYXZlIHRvIGFkZCBleGNlcHRpb25zIGxpa2UgdGhpcyAqL1xuICAgICYgLmdyaWQtaXRlbV9fbGluayB7XG4gICAgICBAbmVzdCBbZGF0YS1ncmlkLXN0eWxlPVwiZ3JleS1yb3VuZFwiXSAmIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMTBweDtcbiAgICAgIH1cblxuICAgICAgQG5lc3QgW2RhdGEtZ3JpZC1zdHlsZT1cIndoaXRlLXJvdW5kXCJdICYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzayxcbiAgICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlLXdyYXAsXG4gICAgJiAucHJvZHVjdC1zbGlkZXIge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG5cbiAgICAmIC5ncmlkLXByb2R1Y3RfX2FjdGlvbnMge1xuICAgICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgdG9wOiAxMHB4O1xuICAgIH1cbiAgfVxuXG59XG5cbi5ob3RzcG90LWNvbnRlbnRfX2Jsb2NrIC5tb2RhbCAuZ3JpZF9faXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuIiwiaW1hZ2UtY29tcGFyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMjIyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY29tcGFyaXNvbl9fZHJhZ2dhYmxlIHtcbiAgd2lkdGg6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDUwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMjtcbn1cblxuLmNvbXBhcmlzb25fX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBvcGFjaXR5OiAxO1xuICBhbmltYXRpb246IG5vbmU7XG59XG5cbi5jb21wYXJpc29uX19pbWFnZS13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmNvbXBhcmlzb25fX2J1dHRvbiB7XG4gIHdpZHRoOiA2NHB4O1xuICBoZWlnaHQ6IDY0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMzJweCwgLTUwJSk7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gIHBhZGRpbmc6IDA7XG5cbiAgQG5lc3QgLmNvbXBhcmlzb24tLXN0eWxlLW1pbmltYWwgJiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01NnB4LCAtNTAlKTtcblxuICAgICYgc3ZnIHtcbiAgICAgIG1hcmdpbjogMCAyMHB4O1xuXG4gICAgICBAc3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgJi5pY29uLWNoZXZyb24tbGVmdCB7XG4gICAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmljb24tY2hldnJvbi1yaWdodCB7XG4gICAgICAgICAgcmlnaHQ6IDJweDtcbiAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLmNvbXBhcmlzb24tLXN0eWxlLWNsYXNzaWMgJiB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yNHB4LCAtNTAlKTtcbiAgICB9XG4gIH1cblxuXG4gICYgc3ZnIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8qIEFnZSB2ZXJpZmljYXRpb24gcG9wdXAgKi9cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwIHtcbiAgJiAucnRlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2J0bnMtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICB9XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19iYWNrZ3JvdW5kLWltYWdlLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19iYWNrZ3JvdW5kLWltYWdlIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19jb250ZW50LS1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEuNXMgZWFzZS1pbjtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQtLWluYWN0aXZlLFxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQtLWluYWN0aXZlICosXG4uYWdlLXZlcmlmaWNhdGlvbi1wb3B1cF9fY29udGVudC0taW5hY3RpdmUgLmJ0biB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0taW5hY3RpdmUsXG4uYWdlLXZlcmlmaWNhdGlvbi1wb3B1cF9fZGVjbGluZS1jb250ZW50LS1pbmFjdGl2ZSAqLFxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0taW5hY3RpdmUgLmJ0biB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0tYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxLjVzIGVhc2UtaW47XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19jb250ZW50LXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogNTIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuIiwicHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNbZGF0YS1pbnRlbnQ9XCJjb21wbGVtZW50YXJ5XCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJiAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzIlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gICYgLmdyaWQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgJiAuZ3JpZF9faXRlbSxcbiAgJiAuZ3JpZC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS13cmFwIHtcbiAgICBtaW4td2lkdGg6IDkwcHg7XG4gIH1cblxuICAmIC5ncmlkX19pbWFnZS1yYXRpbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmIGltZy5pbWFnZS1zdHlsZS0tY2lyY2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDg1JTtcbiAgICBoZWlnaHQ6IDg1JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0taW1hZ2Utd3JhcHBlciAuZ3JpZC1wcm9kdWN0X19saW5rIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0taW1hZ2Utd3JhcHBlcixcbiAgJiAuZ3JpZC1wcm9kdWN0X19saW5rLFxuICAmIC5ncmlkLWl0ZW1fX2xpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICYgLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzayxcbiAgICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlLXdyYXAsXG4gICAgJiAuaW1hZ2Utd3JhcCB7XG4gICAgICB3aWR0aDogMTEycHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19tZXRhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0OHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDExMnB4KTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19hY3Rpb25zIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX3RhZyB7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktdmlld3BvcnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktcHJldmlvdXMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAtMzJweDtcbiAgICByaWdodDogNTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcmlnaHQ6IDQ1cHg7XG4gICAgfVxuICB9XG5cbiAgJiAuZmxpY2tpdHktbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAtMzJweDtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgdG9wOiAtNDFweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cblxuICAmIC5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gIH1cbn1cblxuLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zX19zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgJiAuZ3JpZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucy0tdGl0bGUtbWlzc2luZyB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG59XG4iLCIvKlxuICBTaGFyZWQgc3R5bGluZyBmb3IgYWxsIGltYWdlcyBpbiBvdXIgdGhlbWVzXG5cbiAgSXQncyBhIHdvcmsgaW4gcHJvZ3Jlc3MgYW5kIHdlJ3JlIHRyeWluZyB0byBtb3ZlIGF3YXkgZnJvbSBoYXZpbmcgdG8gYWRkIHNwZWNpZmljIHN0eWxpbmcgZm9yIGltYWdlcyBpbiB0aGVtZXNcblxuICBBbGwgaW1hZ2VzIG5vdyBoYXZlIGEgYmFzZSBmYWRlLWluIGFuaW1hdGlvbiB3aGVuIHRoZXkncmUgbG9hZGVkXG5cbiAgTW90aW9uICYgU3RyZWFtbGluZSBoYXZlIHNldHRpbmdzIHRvIGVuYWJsZS9kaXNhYmxlIGFuaW1hdGlvbnMgZm9yIGltYWdlc1xuKi9cblxuaW1nIHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5pbWFnZS1lbGVtZW50IHtcbiAgb3BhY2l0eTogMDtcblxuICAmW2xvYWRpbmc9XCJlYWdlclwiXSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBuZXN0IC50ZW1wbGF0ZS1naWZ0Y2FyZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwiaW1hZ2UtZmFkZS1pblwiXS5hb3MtYW5pbWF0ZSAmIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC41cyBjdWJpYy1iZXppZXIoMC4yOSwgMC42NSwgMC41OCwgMSkgZm9yd2FyZHM7XG5cbiAgICAmLmxvYWRlci1sb2dvX19pbWcge1xuICAgICAgYW5pbWF0aW9uOiBwdWxzZS1mYWRlIDAuNHMgaW5maW5pdGUgbGluZWFyO1xuICAgIH1cblxuICAgIC8vIFRoaXMgc2hvdWxkIGVuc3VyZSB0aGF0IGltYWdlcyBhcmVuJ3QgYW5pbWF0ZWQgaW4gTW90aW9uICYgU3RyZWFtbGluZVxuICAgIC8vIFdoZW4gdGhlIHVzZXIgaGFzIGRpc2FibGVkIGFuaW1hdGlvbnNcbiAgICBAbmVzdCBbZGF0YS1hbmltYXRlX2ltYWdlcz1cImZhbHNlXCJdICYge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHNob3VsZCBlbnN1cmUgdGhhdCBpbWFnZXMgc2hvdyB1cCBpZiBKUyBpcyBkaXNhYmxlZFxuICBAbmVzdCAubm8tanMgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uaW1hZ2Utd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmltYWdlLXdyYXAgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbiIsIi5zdmctbWFzayB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuXG4gICYgLmdyaWRfX2ltYWdlLXJhdGlvIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmIGltZyxcbiAgJiBzdmcge1xuICAgIG1hc2stc2l6ZTogMTAwJSAxMDAlO1xuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnN2Zy1tYXNrLS1sYW5kc2NhcGUge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlICFpbXBvcnRhbnQ7XG59XG5cbi5zdmctbWFzay0tcG9ydHJhaXQge1xuICBwYWRkaW5nLWJvdHRvbTogMTUwJSAhaW1wb3J0YW50O1xufVxuXG4uc3ZnLW1hc2stLXNxdWFyZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi5zdmctbWFzay0tcm91bmRlZC10b3AgaW1nLFxuLnN2Zy1tYXNrLS1yb3VuZGVkLXRvcCBzdmcge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNTAlO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1MCU7XG59XG5cbi5zdmctbWFzay0tcm91bmRlZCBpbWcsXG4uc3ZnLW1hc2stLXJvdW5kZWQgc3ZnIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uc3ZnLW1hc2stLXN0YXIgaW1nLFxuLnN2Zy1tYXNrLS1zdGFyIHN2ZyB7XG4gIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwbk1USTROQ2NnYUdWcFoyaDBQU2N4TWpVeEp5QjJhV1YzUW05NFBTY3dJREFnTVRJNE5DQXhNalV4SnlCbWFXeHNQU2R1YjI1bEp5QjRiV3h1Y3owbmFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jblBqeHdZWFJvSUdROUowMDJORElnTUV3NE1Ua3VNREEzSURJNU1DNDBOREZNTVRFMU5pNDBOU0F5TkRjdU56UTBUREV3TXprdU56TWdOVFkzTGpJeVRERXlPRE11TlNBNE1EUXVOREU1VERrMk1DNDVOVFlnT1RFeUxqTTFPVXc1TWpjdU5EazFJREV5TlRBdU9EUk1OalF5SURFd05qVXVPVFpNTXpVMkxqVXdOQ0F4TWpVd0xqZzBURE15TXk0d05EUWdPVEV5TGpNMU9Vd3dMalE1TnpRek55QTRNRFF1TkRFNVRESTBOQzR5TmpnZ05UWTNMakl5VERFeU55NDFOVFVnTWpRM0xqYzBORXcwTmpRdU9Ua3pJREk1TUM0ME5ERk1OalF5SURCYUp5Qm1hV3hzUFNjalFUUTVOVVpDSnk4K1BDOXpkbWMrQ2c9PVwiKTtcbn1cblxuLnN2Zy1tYXNrLS1yb3VuZGVkLXdhdmUgaW1nLFxuLnN2Zy1tYXNrLS1yb3VuZGVkLXdhdmUgc3ZnIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBuTVRBMk5pY2dhR1ZwWjJoMFBTY3hNRFkySnlCMmFXVjNRbTk0UFNjd0lEQWdNVEEyTmlBeE1EWTJKeUJtYVd4c1BTZHViMjVsSnlCNGJXeHVjejBuYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNuUGp4d1lYUm9JR1E5SjAwME9USXVOVEE1SURNeExqZ3lPVEpETlRBekxqQTFOQ0F0TVRBdU16RTBPU0ExTmpJdU9UUTJJQzB4TUM0ek1UUTVJRFUzTXk0ME9URWdNekV1T0RJNU1sWXpNUzQ0TWpreVF6VTRNaTQwTWpRZ05qY3VOVE14SURZeU9TNDRNek1nTnpVdU1ETTVPQ0EyTkRrdU16WXhJRFF6TGpnME5UaFdORE11T0RRMU9FTTJOekl1TkRFeklEY3VNREl5T0RrZ056STVMak0zTkNBeU5TNDFNekEzSURjeU5pNHpPQ0EyT0M0NE56QTNWalk0TGpnM01EZEROekl6TGpnME15QXhNRFV1TlRnMklEYzJOaTQyTVRFZ01USTNMak0zTnlBM09UUXVPREl6SURFd015NDNORFJXTVRBekxqYzBORU00TWpndU1USTFJRGMxTGpnME55QTROell1TlRnZ01URXhMakExTVNBNE5qQXVNek01SURFMU1TNHpORFJXTVRVeExqTTBORU00TkRZdU5UZ3hJREU0TlM0ME56Z2dPRGd3TGpVeU1pQXlNVGt1TkRFNUlEa3hOQzQyTlRZZ01qQTFMalkyTVZZeU1EVXVOall4UXprMU5DNDVORGtnTVRnNUxqUXlJRGs1TUM0eE5UTWdNak0zTGpnM05TQTVOakl1TWpVMklESTNNUzR4TnpkV01qY3hMakUzTjBNNU16Z3VOakl6SURJNU9TNHpPRGtnT1RZd0xqUXhOQ0F6TkRJdU1UVTNJRGs1Tnk0eE1qa2dNek01TGpZeVZqTXpPUzQyTWtNeE1EUXdMalEzSURNek5pNDJNallnTVRBMU9DNDVPQ0F6T1RNdU5UZzNJREV3TWpJdU1UVWdOREUyTGpZek9WWTBNVFl1TmpNNVF6azVNQzQ1TmlBME16WXVNVFkzSURrNU9DNDBOamtnTkRnekxqVTNOaUF4TURNMExqRTNJRFE1TWk0MU1EbFdORGt5TGpVd09VTXhNRGMyTGpNeElEVXdNeTR3TlRRZ01UQTNOaTR6TVNBMU5qSXVPVFEySURFd016UXVNVGNnTlRjekxqUTVNVlkxTnpNdU5Ea3hRems1T0M0ME5qa2dOVGd5TGpReU5DQTVPVEF1T1RZZ05qSTVMamd6TXlBeE1ESXlMakUxSURZME9TNHpOakZXTmpRNUxqTTJNVU14TURVNExqazRJRFkzTWk0ME1UTWdNVEEwTUM0ME55QTNNamt1TXpjMElEazVOeTR4TWprZ056STJMak00VmpjeU5pNHpPRU01TmpBdU5ERTBJRGN5TXk0NE5ETWdPVE00TGpZeU15QTNOall1TmpFeElEazJNaTR5TlRZZ056azBMamd5TTFZM09UUXVPREl6UXprNU1DNHhOVE1nT0RJNExqRXlOU0E1TlRRdU9UUTVJRGczTmk0MU9DQTVNVFF1TmpVMklEZzJNQzR6TXpsV09EWXdMak16T1VNNE9EQXVOVEl5SURnME5pNDFPREVnT0RRMkxqVTRNU0E0T0RBdU5USXlJRGcyTUM0ek16a2dPVEUwTGpZMU5sWTVNVFF1TmpVMlF6ZzNOaTQxT0NBNU5UUXVPVFE1SURneU9DNHhNalVnT1Rrd0xqRTFNeUEzT1RRdU9ESXpJRGsyTWk0eU5UWldPVFl5TGpJMU5rTTNOall1TmpFeElEa3pPQzQyTWpNZ056SXpMamcwTXlBNU5qQXVOREUwSURjeU5pNHpPQ0E1T1RjdU1USTVWams1Tnk0eE1qbEROekk1TGpNM05DQXhNRFF3TGpRM0lEWTNNaTQwTVRNZ01UQTFPQzQ1T0NBMk5Ea3VNell4SURFd01qSXVNVFZXTVRBeU1pNHhOVU0yTWprdU9ETXpJRGs1TUM0NU5pQTFPREl1TkRJMElEazVPQzQwTmprZ05UY3pMalE1TVNBeE1ETTBMakUzVmpFd016UXVNVGRETlRZeUxqazBOaUF4TURjMkxqTXhJRFV3TXk0d05UUWdNVEEzTmk0ek1TQTBPVEl1TlRBNUlERXdNelF1TVRkV01UQXpOQzR4TjBNME9ETXVOVGMySURrNU9DNDBOamtnTkRNMkxqRTJOeUE1T1RBdU9UWWdOREUyTGpZek9TQXhNREl5TGpFMVZqRXdNakl1TVRWRE16a3pMalU0TnlBeE1EVTRMams0SURNek5pNDJNallnTVRBME1DNDBOeUF6TXprdU5qSWdPVGszTGpFeU9WWTVPVGN1TVRJNVF6TTBNaTR4TlRjZ09UWXdMalF4TkNBeU9Ua3VNemc1SURrek9DNDJNak1nTWpjeExqRTNOeUE1TmpJdU1qVTJWamsyTWk0eU5UWkRNak0zTGpnM05TQTVPVEF1TVRVeklERTRPUzQwTWlBNU5UUXVPVFE1SURJd05TNDJOakVnT1RFMExqWTFObFk1TVRRdU5qVTJRekl4T1M0ME1Ua2dPRGd3TGpVeU1pQXhPRFV1TkRjNElEZzBOaTQxT0RFZ01UVXhMak0wTkNBNE5qQXVNek01VmpnMk1DNHpNemxETVRFeExqQTFNU0E0TnpZdU5UZ2dOelV1T0RRM0lEZ3lPQzR4TWpVZ01UQXpMamMwTkNBM09UUXVPREl6VmpjNU5DNDRNak5ETVRJM0xqTTNOeUEzTmpZdU5qRXhJREV3TlM0MU9EWWdOekl6TGpnME15QTJPQzQ0TnpBM0lEY3lOaTR6T0ZZM01qWXVNemhETWpVdU5UTXdOeUEzTWprdU16YzBJRGN1TURJeU9EY2dOamN5TGpReE15QTBNeTQ0TkRVNElEWTBPUzR6TmpGV05qUTVMak0yTVVNM05TNHdNems0SURZeU9TNDRNek1nTmpjdU5UTXhJRFU0TWk0ME1qUWdNekV1T0RJNU1pQTFOek11TkRreFZqVTNNeTQwT1RGRExURXdMak14TkRrZ05UWXlMamswTmlBdE1UQXVNekUwT1NBMU1ETXVNRFUwSURNeExqZ3lPVElnTkRreUxqVXdPVlkwT1RJdU5UQTVRelkzTGpVek1TQTBPRE11TlRjMklEYzFMakF6T1RnZ05ETTJMakUyTnlBME15NDRORFU0SURReE5pNDJNemxXTkRFMkxqWXpPVU0zTGpBeU1qZzJJRE01TXk0MU9EY2dNalV1TlRNd055QXpNell1TmpJMklEWTRMamczTURjZ016TTVMall5VmpNek9TNDJNa014TURVdU5UZzJJRE0wTWk0eE5UY2dNVEkzTGpNM055QXlPVGt1TXpnNUlERXdNeTQzTkRRZ01qY3hMakUzTjFZeU56RXVNVGMzUXpjMUxqZzBOeUF5TXpjdU9EYzFJREV4TVM0d05URWdNVGc1TGpReUlERTFNUzR6TkRRZ01qQTFMalkyTVZZeU1EVXVOall4UXpFNE5TNDBOemdnTWpFNUxqUXhPU0F5TVRrdU5ERTVJREU0TlM0ME56Z2dNakExTGpZMk1TQXhOVEV1TXpRMFZqRTFNUzR6TkRSRE1UZzVMalF5SURFeE1TNHdOVEVnTWpNM0xqZzNOU0EzTlM0NE5EY2dNamN4TGpFM055QXhNRE11TnpRMFZqRXdNeTQzTkRSRE1qazVMak00T1NBeE1qY3VNemMzSURNME1pNHhOVGNnTVRBMUxqVTROaUF6TXprdU5qSWdOamd1T0Rjd04xWTJPQzQ0TnpBM1F6TXpOaTQyTWpZZ01qVXVOVE13TnlBek9UTXVOVGczSURjdU1ESXlPRGNnTkRFMkxqWXpPU0EwTXk0NE5EVTRWalF6TGpnME5UaERORE0yTGpFMk55QTNOUzR3TXprNElEUTRNeTQxTnpZZ05qY3VOVE14SURRNU1pNDFNRGtnTXpFdU9ESTVNbFl6TVM0NE1qa3lXaWNnWm1sc2JEMG5JMEUwT1RWR1FpY3ZQand2YzNablBnbz1cIik7XG59XG5cbi5zdmctbWFzay0tc3BsYXQtMSBpbWcsXG4uc3ZnLW1hc2stLXNwbGF0LTEgc3ZnIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBuTVRBME9DY2dhR1ZwWjJoMFBTY3hNRFV5SnlCMmFXVjNRbTk0UFNjd0lEQWdNVEEwT0NBeE1EVXlKeUJtYVd4c1BTZHViMjVsSnlCNGJXeHVjejBuYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNuUGp4d1lYUm9JR1pwYkd3dGNuVnNaVDBuWlhabGJtOWtaQ2NnWTJ4cGNDMXlkV3hsUFNkbGRtVnViMlJrSnlCa1BTZE5OVGN3TGprd05TQXhOVEl1TXpRNFF6WTRPQzQwTkRFZ01UUXdMak16SURjM01TNHhPRGNnTFRJM0xqa3hORGdnT0RnMExqazBNU0EwTGpBeU5UYzFRems0Tnk0NU9UY2dNekl1T1RZeU15QXhNREEyTGpJeklERTNPQzR4T0RnZ01UQXpNaTQySURJNE1TNDVPRFZETVRBMU5TNDNOaUF6TnpNdU1UVTBJREV3TlRJdU1qVWdORFk0TGpFek5DQXhNREkxTGpjMklEVTFPQzR6T0RoRE1UQXdNUzQzSURZME1DNHpNellnT1RRd0xqSTVPQ0EzTURBdU5UTTVJRGc0T1M0MU5USWdOelk1TGpJeE9VTTRNelF1TURJeUlEZzBOQzR6TnpVZ056azFMak1nT1RNMExqUTJJRGN4TXk0NU5TQTVPREF1TXprM1F6WXlNaTR6TVRnZ01UQXpNaTR4TkNBMU1UQXVNVEE0SURFd056TXVOU0EwTVRBdU5ETTJJREV3TXprdU56ZERNekV4TGpFNE5pQXhNREEyTGpFNElESTNOUzQ1TWpjZ09EZzNMalF3TlNBeU1EWXVOamMzSURnd09DNDNNemRETVRNMkxqY3dNeUEzTWprdU1qUTRJREUwTGpZMU16WWdOamM1TGprM09DQXhMakl5TkRFMElEVTNOQzQ1TURkRExURXlMakl4TkRZZ05EWTVMamMyTXlBNE9DNHlPRGsySURNNE9DNDBNek1nTVRReExqSXlNU0F5T1RZdU5qRXlRekU0T0M0Mk1UWWdNakUwTGpNNU5DQXlNRFV1TmpReklEazBMalE0TWpFZ01qazFMalUzTlNBMk5DNHlPRGhETXpnNExqZ3dPU0F6TWk0NU9EVXhJRFEzTXk0d056RWdNVFl5TGpNMU1TQTFOekF1T1RBMUlERTFNaTR6TkRoYUp5Qm1hV3hzUFNjalFUUTVOVVpDSnk4K1BDOXpkbWMrQ2c9PVwiKTtcbn1cblxuLnN2Zy1tYXNrLS1zcGxhdC0yIGltZyxcbi5zdmctbWFzay0tc3BsYXQtMiBzdmcge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUJtYVd4c1BTZHViMjVsSnlCb1pXbG5hSFE5SnpnNU5pY2dkbWxsZDBKdmVEMG5NQ0F3SURrM055QTRPVFluSUhkcFpIUm9QU2M1TnpjbklIaHRiRzV6UFNkb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnljK1BIQmhkR2dnWTJ4cGNDMXlkV3hsUFNkbGRtVnViMlJrSnlCa1BTZHRPVGMxTGpZNE5DQXpPREV1T0RNeVl6RTNMakkyTXlBNU5TNHdNek10TVRRd0xqSXhOQ0F4TWprdU1qTXhMVEU0Tnk0eE56Y2dNakV6TGpZMk5pMDFNaTR4TXpnZ09UTXVOek0zSURndU5URTFJREk0T0M0d09UVXRPVGd1TWpVeklESTVPUzQxTURNdE1USTNMakUzTlNBeE15NDFPRGN0TVRNNExqQTBPUzB4TVRVdU16WXlMVEkyTXkweE5ESXVOak10TVRBNUxqVTROUzB5TXk0NU1UUXRNakkwTGpVek5TQTVNUzQ0T1RRdE16QTRMamN4TlNBeE55NDROalF0T0RRdU5UUXpNeTAzTkM0ek5EZ2dNVEU0TGpZNE9DMHlNRGN1TXpjeklEa3pMamd5T1Mwek1UY3VNRGswTFRJeUxqRTBPUzA1Tnk0M05pMHlNRFF1TVRrMk56SXRNVEEwTGpnM09DMHlNVEl1TURjeE5EQXhMVEl3TkM0NExUWXVPRFkxTlRjNUxUZzNMakV4T0NBeE1EY3VNREl4TkRBeExURXpOaTR4TnpjZ01UZ3hMalU1TmpRd01TMHhPREV1T1RBeE15QTJOaTR4TmpNdE5EQXVOVFkyT0NBeE5ESXVOVE14TFRjMkxqY3dORGtnTWpFNUxqQTRNaTAyTXk0M05qazVOaUEzTVM0ek9ETWdNVEl1TURZeE56WWdNVFF3TGpRNE5pQTJNaTQzTnpNMU5pQXhOamd1T0RVeUlERXlPUzR6TWpBeU5pQTVMamt5T1NBeU15NHlPVE1nTWpVdU9ETTVJRFUwTGpVeU9DQTJPUzQ1TWlBM09DNDFNVGNnT1RFdU9EVTVJRFE1TGprNUlETXdOQzQ0TVRZZ01DQXpNelV1T1RNM0lERTNNUzR6TWpWNkp5Qm1hV3hzUFNjallUUTVOV1ppSnlCbWFXeHNMWEoxYkdVOUoyVjJaVzV2WkdRbkx6NDhMM04yWno0PVwiKTtcbn1cblxuLnN2Zy1tYXNrLS1zcGxhdC0zIGltZyxcbi5zdmctbWFzay0tc3BsYXQtMyBzdmcge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMG5NVEEzTWljZ2FHVnBaMmgwUFNjeE1EVXhKeUIyYVdWM1FtOTRQU2N3SURBZ01UQTNNaUF4TURVeEp5Qm1hV3hzUFNkdWIyNWxKeUI0Yld4dWN6MG5hSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY25Qanh3WVhSb0lHWnBiR3d0Y25Wc1pUMG5aWFpsYm05a1pDY2dZMnhwY0MxeWRXeGxQU2RsZG1WdWIyUmtKeUJrUFNkTk5qRTRMamt4TXlBeU1UVXVNemd6UXpjME5TNDNOelVnTWpJMUxqWTFOeUE0TkRFdU56VWdNVGd1TURBME9TQTVOakF1TmpjNElEWXpMak15TWpSRE1UQTJPUzQ0TlNBeE1EUXVPVEkwSURFd056QXVORE1nTWpjeExqSTJNaUF4TURjeExqazVJRE00T0M0d01qaERNVEEzTXk0eU5TQTBPREl1TWpnNElEazNNaTR3TWpZZ05UVXdMamcxTlNBNU5qZ3VORFE1SURZME5TNHdOVFZET1RZMExqRTBOeUEzTlRndU16TXhJREV4TURNdU5qa2dPRFk0TGpJNU9DQXhNRFE1TGprMklEazJPQzR4TWpaRE1UQXdNQzR5TkNBeE1EWXdMalVnT0RVMkxqUTJPQ0F4TURNNExqZ3lJRGMxTVM0NE56WWdNVEEwTnk0ME1VTTJOalF1TXpFMklERXdOVFF1TmlBMU56TXVOalkwSURFd05UUXVORFFnTkRrMUxqZzNJREV3TVRNdU5qUkROREkwTGpjek1TQTVOell1TXpNeElEUXdPUzQ0TXpRZ09EYzRMalk0T1NBek5ETXVOVGd5SURnek15NHlOekpETWpReExqTTBPU0EzTmpNdU1Ua2dOall1TXprNU55QTNPVE11TkRFMklERXlMakV4T1RRZ05qZ3lMakF5TTBNdE16Y3VOVGN6T0NBMU9EQXVNRFEwSURjNUxqSTNOVFlnTkRjeUxqVXpPQ0F4TVRVdU5EQXlJRE0yTlM0d01EaERNVFUyTGpZM01pQXlOREl1TVRZMElERXhOUzR6TWlBME1TNDROVFl6SURJek9TNDFPVGdnTkM0NU1qVTNNME16T0RFdU1EZ3hJQzB6Tnk0eE1UYzJJRFEzTVM0M09URWdNakF6TGpRMk9DQTJNVGd1T1RFeklESXhOUzR6T0ROYUp5Qm1hV3hzUFNjalFUUTVOVVpDSnk4K1BDOXpkbWMrQ2c9PVwiKTtcbn1cblxuLnN2Zy1tYXNrLS1zcGxhdC00IGltZyxcbi5zdmctbWFzay0tc3BsYXQtNCBzdmcge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMG5OVEU0SnlCb1pXbG5hSFE5SnpVd05DY2dkbWxsZDBKdmVEMG5NQ0F3SURVeE9DQTFNRFFuSUdacGJHdzlKMjV2Ym1VbklIaHRiRzV6UFNkb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnljK1BIQmhkR2dnWm1sc2JDMXlkV3hsUFNkbGRtVnViMlJrSnlCamJHbHdMWEoxYkdVOUoyVjJaVzV2WkdRbklHUTlKMDB6TURNdU56a3pJRGcwTGpZM00wTXpNVGt1T1RReUlERXdPQzQxTWpFZ016TTFMalV6SURFeU9DNHlOVE1nTXpZd0xqSTRPU0F4TXpNdU16azNRelF3TXk0Mk5ETWdNVFF5TGpRd05DQTBOVFF1TkRJeElEazNMamN6TWlBME9UQXVORGM1SURFeU15NDBOVGRETlRJd0xqTXhNU0F4TkRRdU56TTVJRFV5TXk0NElESXhNQzQyTkRZZ05URXdMalEzT1NBeU16VXVPVGs1UXpRNU5DNDVOemtnTWpZMUxqUTVPU0EwTlRndU1qYzRJREk0TUM0d05DQTBOREl1T1RjNUlETXdPUzQ1T1RsRE5ESTBMall5T1NBek5EVXVPVE14SURRMU15NDNOQ0F6T0RRdU9UWTNJRFF4TUM0ME56a2dOREV6TGpRNU9VTXpOemN1TlRjNElEUXpOUzR4T1RnZ016UXhMamd4TmlBek9UY3VPRGN5SURNd015NDNPVE1nTkRBNExqRTVPRU15TkRNdU9EZzJJRFF5TkM0ME5qWWdNakE1TGpJZ05UQTBMalUwTVNBeE5EY3VNVFE0SURVd01pNDVPVGxET0RrdU16UXhOQ0ExTURFdU5UWXpJRE14TGpVeE1ETWdORFUwTGpnek5pQXhNQzQwTnpreklEUXdNQzQ1TURoRExURXdMamMwT0RFZ016UTJMalEzTnlBeUxqUXpOVE01SURJM05TNHdOVFlnTkRFdU1qRTFJREl6TVM0ek5qWkROamt1TlNBeE9Ua3VOU0F4TURVZ01UZzVJREV5TWk0ME9DQXhNemxETVRNeExqa3pOU0F4TVRFdU9UVXpJREV4T1M0ME9DQXpOaUF4TnpRdU16YzNJRFl1T1RRNU9UaERNakU1TGpZeE55QXRNVFl1T1RnNU9TQXlOall1TkRReUlESTBMakF5TWpFZ016QXpMamM1TXlBNE5DNDJOek5hSnlCbWFXeHNQU2NqUVRRNU5VWkNKeTgrUEM5emRtYytDZz09XCIpO1xufVxuIiwiLmZlYXR1cmUtcm93X19pdGVtLS1vdmVybGFwLWltYWdlcyB7XG4gICYgLmZlYXR1cmUtcm93X19maXJzdC1pbWFnZSB7XG4gICAgd2lkdGg6IDU1JTtcbiAgfVxuXG4gICYgLmZlYXR1cmUtcm93X19zZWNvbmQtaW1hZ2Uge1xuICAgIHdpZHRoOiA2MCU7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93X19pdGVtLS1wbGFjZWhvbGRlci1pbWFnZXMge1xuICAmIC5wbGFjZWhvbGRlci1pbWFnZS13cmFwIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG5cbi5mZWF0dXJlLXJvdy13cmFwcGVyIC5mZWF0dXJlLXJvd19faW1hZ2VzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmZlYXR1cmUtcm93LXdyYXBwZXIgLmZlYXR1cmUtcm93X190ZXh0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWluLXdpZHRoOiA0MyU7XG4gICAgZmxleDogMCAxIDQzJTtcbiAgfVxufVxuXG4uZmVhdHVyZS1yb3ctLTMzIHtcbiAgJiAuZmVhdHVyZS1yb3dfX2ltYWdlcyB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBmbGV4OiAwIDEgMzMuMzMzJTtcbiAgICB9XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93LS01MCB7XG4gICYgLmZlYXR1cmUtcm93X19pbWFnZXMge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZmVhdHVyZS1yb3ctLTY2IHtcbiAgJiAuZmVhdHVyZS1yb3dfX2ltYWdlcyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgZmxleDogMCAxIDY2LjY2NiU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4iLCIuc2Nyb2xsaW5nLXRleHQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2Nyb2xsaW5nLXRleHRfX2lubmVyIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbjogMC4xNWVtIDA7XG4gIGFuaW1hdGlvbjogc2Nyb2xsaW5nLXRleHQgdmFyKC0tbW92ZS1zcGVlZCkgbGluZWFyIGluZmluaXRlO1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbn1cblxuLnNjcm9sbGluZy10ZXh0X19pbm5lci0tcmlnaHQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGFuaW1hdGlvbjogc2Nyb2xsaW5nLXRleHQtcmlnaHQgdmFyKC0tbW92ZS1zcGVlZCkgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc2Nyb2xsaW5nLXRleHQgc3BhbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zY3JvbGxpbmctdGV4dDpob3ZlciAuc2Nyb2xsaW5nLXRleHRfX2lubmVyLFxuLnNjcm9sbGluZy10ZXh0OmZvY3VzIC5zY3JvbGxpbmctdGV4dF9faW5uZXIge1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xufVxuXG5Aa2V5ZnJhbWVzIHNjcm9sbGluZy10ZXh0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNjcm9sbGluZy10ZXh0LXJpZ2h0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbiIsIi5uZXdzbGV0dGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLm5ld3NsZXR0ZXItc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogNDBweDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogNjBweCAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZzogMzBweCAwO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb24tLWltYWdlLWxlZnQge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb25fX2NvbnRlbnQge1xuICBmbGV4OiAxMDAlO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIEBuZXN0IC5uZXdzbGV0dGVyLXNlY3Rpb24tLW5vLWltYWdlICYge1xuICAgIGZsZXg6IDEwMCU7XG4gIH1cblxuICAmIGZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbmVzdCAudGV4dC1sZWZ0ICYge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIEBuZXN0IC50ZXh0LWNlbnRlciAmIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIEBuZXN0IC50ZXh0LXJpZ2h0ICYge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyX19pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb25fX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uX19pbWFnZS0tMzMge1xuICBmbGV4OiAzMy4zMzMlIDAgMDtcbn1cblxuLm5ld3NsZXR0ZXItc2VjdGlvbl9faW1hZ2UtLTUwIHtcbiAgZmxleDogNTAlIDAgMDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItc2VjdGlvbl9faW1hZ2UtLTY2IHtcbiAgZmxleDogNjYuNjY2JSAwIDA7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyLWZvcm0tZ3JvdXAge1xuICBAbmVzdCAudGV4dC1sZWZ0ICYge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIEBuZXN0IC50ZXh0LXJpZ2h0ICYge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuIiwiLnByZWRpY3RpdmUtb3ZlcmZsb3ctaGlkZGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG5wcmVkaWN0aXZlLXNlYXJjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBmbGV4OiA5OTtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5wcmVkaWN0aXZlX19zY3JlZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHotaW5kZXg6IDM7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSAuYnRuLS1jbG9zZS1zZWFyY2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG5bZGF0YS1kYXJrPVwidHJ1ZVwiXSB7XG4gICYgaW5wdXQge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmIC5idG4tLXNlYXJjaCBwYXRoIHtcbiAgICBzdHJva2U6ICNmZmYgIWltcG9ydGFudDtcbiAgfVxufVxuXG5bZGF0YS1kYXJrPVwiZmFsc2VcIl0ge1xuICAmIGlucHV0IHtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgJiAuYnRuLS1zZWFyY2ggcGF0aCB7XG4gICAgc3Ryb2tlOiAjMDAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnByZWRpY3RpdmVfX3NjcmVlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxucHJlZGljdGl2ZS1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgei1pbmRleDogNDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlYXJjaF9faW5wdXQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogNTtcbiAgdHJhbnNpdGlvbjogZmxleCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2VhcmNoX19pbnB1dCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yTmF2U2VhcmNoLCAjZmZmKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJvZHktdGV4dCk7XG4gIGZsZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJvdW5kbmVzcywgMCkgKjIpO1xufVxuXG4uYnRuLS1zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHJpZ2h0OiAxNXB4O1xuXG4gICYgLmljb24ge1xuICAgIGhlaWdodDogMjVweDtcbiAgICB3aWR0aDogMjVweDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICByaWdodDogMTBweDtcbiAgfVxufVxuXG4uYnRuLS1jbG9zZS1zZWFyY2gge1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4OiAzMHB4IDAgMDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgJiAuaWNvbiB7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICB9XG5cbiAgJiAuaWNvbiBwYXRoIHtcbiAgICBzdHJva2U6IHZhcigtLWNvbG9yTmF2VGV4dCkgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2VhcmNoX19yZXN1bHRzIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYm9keSk7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1ib2R5LXRleHQpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgbWF4LWhlaWdodDogODB2aDtcbiAgb3ZlcmZsb3cteTogYXV0bztcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tcGFnZVdpZHRoUGFkZGluZywgMTdweCkgKiAyKTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1wYWdlV2lkdGhQYWRkaW5nLCAxN3B4KSAqIC0xKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tcGFnZVdpZHRoUGFkZGluZywgMTdweCkgKiAtMSk7XG4gICAgbWF4LWhlaWdodDogNzV2aDtcblxuICAgIEBuZXN0IC50ZW1wbGF0ZS1zZWFyY2ggLnBhZ2UtY29udGVudCAmIHtcbiAgICAgIG1heC1oZWlnaHQ6IDUwdmg7XG4gICAgfVxuICB9XG59XG5cbi5yZXN1bHRzIHtcbiAgcGFkZGluZzogMCAyMHB4IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAmIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJiBsaSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2U7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMDUpO1xuICAgIH1cblxuICAgICYgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLnJlc3VsdHMtLXF1ZXJpZXMge1xuICAmIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAmIG1hcmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbn1cblxuLnJlc3VsdHMtLXByb2R1Y3RzIHNwYW4ge1xuICBtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLnJlc3VsdHMtcHJvZHVjdHNfX2ltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogODBweDtcbiAgbWF4LXdpZHRoOiA4MHB4O1xuICBoZWlnaHQ6IDgwcHg7XG59XG5cbi5yZXN1bHRzLXByb2R1Y3RzX19pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnByZWRpY3RpdmUtc2VhcmNoLXJlc3VsdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBhZGRpbmc6IDQwcHggMCAwO1xuXG4gICYgaDMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yQm9yZGVyKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5wcmVkaWN0aXZlLXNlYXJjaC1yZXN1bHRzLS1ub25lIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG5cbi5wcmVkaWN0aXZlLXNlYXJjaF9fbm8tcmVzdWx0cyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAmOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cbn1cblxuLnJlc3VsdHNfX2dyb3VwLTEge1xuICBmbGV4OiAxMDAlIDAgMDtcblxuICAmID4gZGl2Om5vdCgucmVzdWx0cy0tcXVlcmllcykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnJlc3VsdHNfX2dyb3VwLTIge1xuICBmbGV4OiAxMDAlIDAgMDtcbn1cblxuLnJlc3VsdHNfX3NlYXJjaC1idG4ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yQm9yZGVyKTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMDUpO1xuICB9XG59XG5cbi8qIENvbnRhaW5lcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AY29udGFpbmVyIChtaW4td2lkdGg6IDgwMHB4KSB7XG4gIC5wcmVkaWN0aXZlLXNlYXJjaC1yZXN1bHRzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG5cbiAgLnJlc3VsdHMge1xuICAgIHBhZGRpbmc6IDAgNDBweCAyMHB4O1xuICB9XG5cbiAgLnJlc3VsdHNfX2dyb3VwLTEge1xuICAgIGZsZXg6IDEgMCAwO1xuXG4gICAgJiBkaXY6bm90KC5yZXN1bHRzLS1xdWVyaWVzKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAucmVzdWx0c19fZ3JvdXAtMiB7XG4gICAgZmxleDogMiAwIDA7XG5cbiAgICAmID4gZGl2Om5vdCgucmVzdWx0cy0tcHJvZHVjdHMpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLnJlc3VsdHNfX3NlYXJjaC1idG4ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMTBweCAwIDEwcHggNDBweDtcbiAgfVxufVxuXG4vKlxuLndvcmthcm91bmQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3JCb3JkZXIpO1xufVxuKi9cbiIsIi5zcHItc3RhcnJhdGluZy5zcHItc3VtbWFyeS1zdGFycmF0aW5nIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudFxuICB9XG59XG4iLCIqLCBpbnB1dCwgOmJlZm9yZSwgOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCwgYm9keSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmF1ZGlvLCBjYW52YXMsIHByb2dyZXNzLCB2aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIuZ3JpZCB7XG4gIEBtaXhpbiBjbGVhcmZpeDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlcjtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci1zbWFsbDtcblxuICAgIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXItc21hbGw7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGdyaWQtZ3V0dGVyO1xuICB9XG59XG5cbi5ncmlkLS1zbWFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcblxuICAmIC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuLmdyaWRfX2l0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItc21hbGw7XG5cbiAgICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci1zbWFsbDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlcjtcbiAgfVxufVxuXG4uZ3JpZC0tbm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uZ3JpZC0tZmx1c2gtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogLSRncmlkLWd1dHRlcjtcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgJiA+IC5ncmlkX19pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXI7XG4gIH1cbn1cblxuLmdyaWQtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmIC5ncmlkX19pdGVtIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEd1dHRlcmxlc3MgZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmdyaWQtLWZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcblxuICAmID4gLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5ncmlkLS10YWJsZS1sYXJnZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgICYgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLnNtYWxsLS1ncmlkLS1mbHVzaCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG5cbiAgICBAbmVzdCAucGFnZS13aWR0aCAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0kcGFnZS13aWR0aC1ndXR0ZXItc21hbGwgKyAycHgpO1xuICAgIH1cblxuICAgICYgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICB9XG4gIH1cbn1cbiIsbnVsbCwiQGN1c3RvbS1tZWRpYSAtLXNtYWxsIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCk7XG5AY3VzdG9tLW1lZGlhIC0tbWVkaXVtLXVwIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tdXApO1xuQGN1c3RvbS1tZWRpYSAtLW1lZGl1bS1kb3duIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tZG93bik7XG5AY3VzdG9tLW1lZGlhIC0td2lkZXNjcmVlbiBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtd2lkZXNjcmVlbik7XG5cbkBtaXhpbiBncmlkLWNvbHVtbi1nZW5lcmF0b3I7XG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ2VuZXJhdG9yIHNtYWxsO1xuQG1peGluIGdyaWQtY29sdW1uLWdlbmVyYXRvciBtZWRpdW0tdXA7XG5cbkBtaXhpbiByZXNwb25zaXZlLWRpc3BsYXktaGVscGVyO1xuQG1peGluIHJlc3BvbnNpdmUtZGlzcGxheS1oZWxwZXIgc21hbGw7XG5AbWl4aW4gcmVzcG9uc2l2ZS1kaXNwbGF5LWhlbHBlciBtZWRpdW0tZG93bjtcbkBtaXhpbiByZXNwb25zaXZlLWRpc3BsYXktaGVscGVyIG1lZGl1bS11cDtcbiIsIi5mbGV4LWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXg6IDEgMSAxMDAlO1xuXG4gIEBuZXN0IFtkYXRhLWNlbnRlci10ZXh0PVwidHJ1ZVwiXSAmIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4uZmxleC1ncmlkLS1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZmxleC1ncmlkLS1ndXR0ZXJzIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtJGd1dHRlciAvIDIpO1xuICBtYXJnaW4tbGVmdDogY2FsYygtJGd1dHRlciAvIDIpO1xufVxuXG4uZmxleC1ncmlkX19pdGVtIHtcbiAgZmxleDogMCAxIDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gIEBuZXN0IC5mbGV4LWdyaWQtLWd1dHRlcnMgJiB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cblxuICAmID4gKiB7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gIH1cbn1cblxuLmZsZXgtZ3JpZF9faXRlbS0tc3RyZXRjaCB7XG4gIGZsZXg6IDEgMSAxMDAlO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gIH1cbn1cblxuLypGbGV4IGdyaWQgc2l6aW5nIGZyb20gdGhlbWUgc2V0dGluZ3MqL1xuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuZmxleC1ncmlkX19pdGVtLS0zMyB7XG4gICAgZmxleC1iYXNpczogMzMuMzMlO1xuICB9XG5cbiAgLmZsZXgtZ3JpZF9faXRlbS0tNTAge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgfVxufVxuXG4vKlJldmVyc2Ugb3JkZXIgb3IgZWxlbWVudHMqL1xuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5mbGV4LWdyaWRfX2l0ZW0tLW1vYmlsZS1zZWNvbmQge1xuICAgIG9yZGVyOiAyO1xuICB9XG59XG4iLCIuY2xlYXJmaXgge1xuICBAbWl4aW4gY2xlYXJmaXg7XG59XG5cbmh0bWw6bm90KC5uby1qcyk6bm90KC50YWItb3V0bGluZSkgKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5pcy10cmFuc2l0aW9uaW5nIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4uZGlzcGxheS10YWJsZSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmRpc3BsYXktdGFibGUtY2VsbCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZsb2F0OiBub25lO1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5tZWRpdW0tdXAtLWRpc3BsYXktdGFibGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAubWVkaXVtLXVwLS1kaXNwbGF5LXRhYmxlLWNlbGwge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4udmlzdWFsbHktaGlkZGVuIHtcbiAgQG1peGluIHZpc3VhbGx5SGlkZGVuO1xufVxuXG4vKktlZXAgZGltZW5zaW9ucyBidXQgaGlkZSB2aXN1YWxseSovXG4udmlzdWFsbHktaW52aXNpYmxlIHtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU2tpcCB0byBjb250ZW50IGJ1dHRvblxuICAgIC0gT3ZlcnJpZGVzIC52aXN1YWxseS1oaWRkZW4gd2hlbiBmb2N1c2VkXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnNraXAtbGluazpmb2N1cyB7XG4gIGNsaXA6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBwYWRkaW5nOiAxMHB4O1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAkemluZGV4U2tpcFRvQ29udGVudDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cbiIsIkBkZWZpbmUtbWl4aW4gdmlzdWFsbHlIaWRkZW4ge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cblxuQGRlZmluZS1taXhpbiBvdmVybGF5ICR6aW5kZXg6IGF1dG8ge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG59XG5cbkBkZWZpbmUtbWl4aW4gYmFzZUZvbnRTdGFjayB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS10eXBlQmFzZVByaW1hcnkpLCB2YXIoLS10eXBlQmFzZUZhbGxiYWNrKTtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgKiAwLjkyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXR5cGVCYXNlU3BhY2luZyk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS10eXBlQmFzZUxpbmVIZWlnaHQpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGVCYXNlU2l6ZSk7XG4gIH1cbn1cblxuQGRlZmluZS1taXhpbiBiYXNlU21hbGxGb250U3RhY2sge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAqIDAuODUpO1xufVxuXG5AZGVmaW5lLW1peGluIGJhc2VFeHRyYVNtYWxsRm9udFN0YWNrIHtcbiAgZm9udC1zaXplOiBtYXgoY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICogMC43KSwgMTJweCk7XG59XG5cbkBkZWZpbmUtbWl4aW4gaGVhZGluZ1RleHRDZW50ZXIge1xuICBAbmVzdCBbZGF0YS10eXBlX2hlYWRlcnNfYWxpZ25fdGV4dD1cInRydWVcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBkZWZpbmUtbWl4aW4gYmFzZVRleHRDZW50ZXIge1xuICBAbmVzdCBbZGF0YS1jZW50ZXItdGV4dD1cInRydWVcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBkZWZpbmUtbWl4aW4gaGVhZGluZ0ZvbnRTdGFjayB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS10eXBlSGVhZGVyUHJpbWFyeSksIHZhcigtLXR5cGVIZWFkZXJGYWxsYmFjayk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS10eXBlSGVhZGVyV2VpZ2h0KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXR5cGVIZWFkZXJTcGFjaW5nKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLXR5cGVIZWFkZXJMaW5lSGVpZ2h0KTtcblxuICBAbmVzdCBbZGF0YS10eXBlX2hlYWRlcl9jYXBpdGFsaXplPVwidHJ1ZVwiXSAmIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG5cbkBkZWZpbmUtbWl4aW4gYWNjZW50Rm9udFN0YWNrIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuM2VtO1xufVxuXG5AZGVmaW5lLW1peGluIGFjY2VudEZvbnRTbWFsbFNpemUge1xuICBmb250LXNpemU6IDAuOGVtO1xufVxuXG5cbkBkZWZpbmUtbWl4aW4gaGVyb1NjcmltIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySW1hZ2VPdmVybGF5O1xuICBvcGFjaXR5OiAkY29sb3JJbWFnZU92ZXJsYXlPcGFjaXR5O1xufVxuXG5AZGVmaW5lLW1peGluIGhlcm9SYWRpYWwge1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAkY29sb3JJbWFnZU92ZXJsYXlUZXh0U2hhZG93KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA2MCUpO1xuICBtYXJnaW46IC0xMDBweCAtMjAwcHggLTEwMHB4IC0yMDBweDtcbn1cbiIsImh0bWwge1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuaHRtbFtkaXI9XCJydGxcIl0ge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cblxuaHRtbCxcbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuc3VwcG9ydHMtdG91Y2gubG9jay1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvKiBpT1Mgc3BlY2lmaWMgZml4ICovXG4gICAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS13aWR0aCB7XG4gIG1heC13aWR0aDogJHBhZ2Utd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZS13aWR0aCxcbi5wYWdlLWZ1bGwge1xuICBwYWRkaW5nOiAwICRwYWdlLXdpZHRoLWd1dHRlci1zbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogMCAkcGFnZS13aWR0aC1ndXR0ZXItbGFyZ2U7XG4gIH1cbn1cblxuLnBhZ2Utd2lkdGgtLW5hcnJvdyB7XG4gIG1heC13aWR0aDogJHBhZ2Utd2lkdGgtbmFycm93O1xufVxuXG4ucGFnZS13aWR0aC0tdGlueSB7XG4gIG1heC13aWR0aDogNDUwcHg7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAucGFnZS13aWR0aC0tZmx1c2gtc21hbGwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnBhZ2UtY29udGVudCxcbi5zaG9waWZ5LXBvbGljeV9fY29udGFpbmVyLFxuLnNob3BpZnktZW1haWwtbWFya2V0aW5nLWNvbmZpcm1hdGlvbl9fY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbiAgcGFkZGluZy1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlO1xuICB9XG59XG5cbi5zaG9waWZ5LWVtYWlsLW1hcmtldGluZy1jb25maXJtYXRpb25fX2NvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2UtY29udGVudC0tdG9wLFxuLnBhZ2UtY29udGVudC0td2l0aC1ibG9ja3Mge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLnBhZ2UtY29udGVudC0tYm90dG9tIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5tYWluLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMzAwcHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtaW4taGVpZ2h0OiA3MDBweDtcbiAgfVxuXG4gIEBuZXN0IC50ZW1wbGF0ZS1jaGFsbGFuZ2UgJiB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxufVxuXG5ocixcbi5oci0tc21hbGwsXG4uaHItLW1lZGl1bSxcbi5oci0tbGFyZ2Uge1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLmhyLS1zbWFsbCB7XG4gIG1hcmdpbjogMTVweCBhdXRvO1xufVxuXG4uaHItLW1lZGl1bSB7XG4gIG1hcmdpbjogMjVweCBhdXRvO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDM1cHggYXV0bztcbiAgfVxufVxuXG4uaHItLWxhcmdlIHtcbiAgbWFyZ2luOiAkZ3V0dGVyIGF1dG87XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbjogY2FsYygkZ3V0dGVyICogMS41KSBhdXRvO1xuICB9XG5cbiAgQG5lc3QgLnBhZ2UtYmxvY2tzICsgJixcbiAgLnBhZ2UtYmxvY2tzICsgW2RhdGEtc2VjdGlvbi10eXBlPVwicmVjZW50bHktdmlld2VkXCJdICYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLmhyLS1jbGVhciB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFJlc3BvbnNpdmUgdGFibGVzLCBkZWZpbmVkIHdpdGggLnRhYmxlLS1yZXNwb25zaXZlIG9uIHRhYmxlIGVsZW1lbnQuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnRhYmxlLS1yZXNwb25zaXZlIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgdHIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJiB0cixcbiAgICAmIHRkIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIHRoLFxuICAgICYgdGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuXG4gICAgJiB0ZDpiZWZvcmUge1xuICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC50YWJsZS0tc21hbGwtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRhYmxlX19zZWN0aW9uICsgLnRhYmxlX19zZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuZGV0YWlscyBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbiAgZGlzcGxheTpub25lO1xufVxuIiwiYm9keSxcbmlucHV0LFxudGV4dGFyZWEsXG5idXR0b24sXG5zZWxlY3QsXG4uZmF1eC1zZWxlY3Qge1xuICBAbWl4aW4gYmFzZUZvbnRTdGFjaztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG59XG5cbmJvZHkge1xuICBmb250LXdlaWdodDogdmFyKC0tdHlwZUJhc2VXZWlnaHQpO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgY2FsYygkZ3V0dGVyIC8gMikgMDtcblxuICAmIGltZyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5iLCBzdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuc21hbGwsXG5wW2RhdGEtc3BhbS1kZXRlY3Rpb24tZGlzY2xhaW1lcl0ge1xuICBmb250LXNpemU6IDAuODVlbTtcbn1cblxuc3VwLCBzdWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogNjAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjVlbTtcbn1cblxuYmxvY2txdW90ZSxcbi5ydGUgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlciA0MHB4O1xuXG4gICYgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICYgKyBjaXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxuXG4gICYgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuY29kZSwgcHJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZjdmNTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXI6IDAgbm9uZTtcbiAgcGFkZGluZzogMCAycHg7XG4gIGNvbG9yOiAjNTFhYjYyO1xufVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIG1hcmdpbjogMCAwICRndXR0ZXI7XG59XG5cbmxhYmVsOm5vdCgudmFyaWFudF9fYnV0dG9uLWxhYmVsKTpub3QoLnRleHQtbGFiZWwpLFxuLmxhYmVsIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDAgMCBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gICYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICB9XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xufVxuXG4vKiBNb2JpbGUgc2l6ZXMgKi9cbmgxLCAuaDEge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC44NSk7XG59XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC43Myk7XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC42Mik7XG59XG5cbi8qIERlc2t0b3Agc2l6ZXMgKi9cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlSGVhZGVyU2l6ZSk7XG4gIH1cblxuICBoMiwgLmgyIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC44NSk7XG4gIH1cblxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpICogMC42NSk7XG4gIH1cbn1cblxuaDQsIC5oNCB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xufVxuXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxufVxuXG4uc3ViaGVhZGluZyB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG59XG5cbi8qU3RhbmRhcmRpemUgdGV4dCBzcGFjaW5nIHNvbWV0aW1lcyovXG4udGV4dC1zcGFjaW5nLFxuLnRleHQtc3BhY2luZy5ydGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG4ucnRlIHtcbiAgJiB0YWJsZSB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG5cbiAgICAgICYgdGQsXG4gICAgICAmIHRoIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbmVzdCAuY29sbGFwc2libGUtY29udGVudCAmIHtcbiAgICAgICYgdGQsXG4gICAgICAmIHRoIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbW1lbnQtYXV0aG9yIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNvbW1lbnQtZGF0ZSB7XG4gIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAzcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuLmFqYXhjYXJ0X19zdWJ0b3RhbCB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xufVxuXG4ucnRlIHtcbiAgJiAuZW5sYXJnZS10ZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgfVxuXG4gICYgLmVubGFyZ2UtdGV4dC0tb2Zmc2V0IHtcbiAgICAmIHAge1xuICAgICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNSU7XG5cbiAgICAgICAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgICAgICAgIHBhZGRpbmc6IDAgNSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAudGFibGUtLXNtYWxsLXRleHQge1xuICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIH1cbn1cblxuLmluZGV4LXNlY3Rpb24tLWZvb3RlciB7XG4gICYgaDMge1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09IFJUTCBvdmVycmlkZXMgPT09PT09PT09PT09PT09PSovXG5odG1sW2Rpcj1cInJ0bFwiXSB7XG4gICYgLnRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gICYgLnRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKkljb24gKyB0ZXh0IGVsZW1lbnQgdGhhdCBwcmV2ZW50cyBhd2t3YXJkIGxpbmUgd3JhcHBpbmcqL1xuLmljb24tYW5kLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAmIC5pY29uIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxufVxuIiwidWwsIG9sIHtcbiAgbWFyZ2luOiAwIDAgY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlcjtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxub2wgb2wge1xuICBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYTtcbn1cblxub2wgeyBsaXN0LXN0eWxlOiBkZWNpbWFsOyB9XG51bCB1bCwgdWwgb2wsXG5vbCBvbCwgb2wgdWwgeyBtYXJnaW46IDRweCAwIDVweCAyMHB4OyB9XG5saSB7IG1hcmdpbi1ib3R0b206IDAuMjVlbTsgfVxuXG51bC5zcXVhcmUgeyBsaXN0LXN0eWxlOiBzcXVhcmUgb3V0c2lkZTsgfVxudWwuZGlzYyB7IGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTsgfVxub2wuYWxwaGEgeyBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYSBvdXRzaWRlOyB9XG5cbi5uby1idWxsZXRzIHtcbiAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmlubGluZS1saXN0IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuXG4gICYgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cbiIsInRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1zcGFjaW5nOiAxcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvcmRlcjtcbn1cblxuLnRhYmxlLXdyYXBwZXIge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbnRkLFxudGgge1xuICBib3JkZXI6IDAgbm9uZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuXG4gIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRoLFxuLnRhYmxlX190aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuIiwiYSxcbi50ZXh0LWxpbmsge1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi8qRm9yY2UgYW4gaW5wdXQvYnV0dG9uIHRvIGxvb2sgbGlrZSBhIHRleHQgbGluayovXG4udGV4dC1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBib3JkZXI6IDAgbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKkxpbmtzIGluIFJURSovXG4ucnRlIGEsXG4uc2hvcGlmeS1wb2xpY3lfX2NvbnRhaW5lciBhLFxuLnNob3BpZnktZW1haWwtbWFya2V0aW5nLWNvbmZpcm1hdGlvbl9fY29udGFpbmVyIGEge1xuICBjb2xvcjogJGNvbG9yTGluaztcbn1cbiIsImJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5idG4sXG4ucnRlIC5idG4sXG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQsXG4uc3ByLWNvbnRhaW5lciAuc3ByLXN1bW1hcnktYWN0aW9ucyBhLFxuLnNwci1jb250YWluZXIgLnNwci1idXR0b24ge1xuICBsaW5lLWhlaWdodDogMS40MjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA0cHgpO1xuICBmb250LXNpemU6IG1heChjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA0cHgpLCAxM3B4KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYnRuUHJpbWFyeVBhZGRpbmc7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogOTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b25SYWRpdXMpO1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnk7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogJGJ0blByaW1hcnlQYWRkaW5nU21hbGw7XG4gICAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA1cHgpO1xuICAgIGZvbnQtc2l6ZTogbWF4KGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDVweCksIDExcHgpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnk7XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGNvbG9yOiAkZGlzYWJsZWRHcmV5VGV4dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGRpc2FibGVkR3JleVRleHQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIH1cblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRkaXNhYmxlZEJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZGlzYWJsZWRCb3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLypDdXN0b20gc2V0dGluZy1iYXNlZCBzdHlsZXMqL1xuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICB0cmFuc2Zvcm06c2tld1goLSRidXR0b25Ta2V3RGVnKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogLTZweDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAtNnB4O1xuICAgIH1cblxuICAgICYuYnRuLS1zbWFsbCB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IC01cHg7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IC01cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLypIb3ZlciBlZmZlY3Qgb24gbm9uLWFuZ2xlZCBidXR0b25zLiBNdXN0IG9ubHkgaGF2ZSAuYnRuIGNsYXNzKi9cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdzcXVhcmUnXSAmLFxuICBbZGF0YS1idXR0b25fc3R5bGVePSdyb3VuZCddICYge1xuICAgICY6bm90KC5idG4tLXNlY29uZGFyeSk6bm90KC5idG4tLXRlcnRpYXJ5KTpub3QoLmJ0bi0taW52ZXJzZSk6bm90KC5idG4tLWJvZHkpOm5vdCguYnRuLS1zdGF0aWMpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZSAwcztcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMTUwJTtcbiAgICAgICAgd2lkdGg6IDIwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtMjBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsdHJhbnNwYXJlbnQsIHJnYmEoMjU1LDI1NSwyNTUsLjI1KSx0cmFuc3BhcmVudCk7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBhbmltYXRpb246IHNoaW5lIDAuNzVzIGN1YmljLWJlemllcigwLjAxLCAwLjU2LCAxLCAxKTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnlMaWdodDtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qTWltaWMgdGhlIC5idG4gaG92ZXIgc3R5bGUgZm9yIFNob3BpZnkgUGF5bWVudCBCdXR0b24qL1xuLnNob3BpZnktcGF5bWVudC1idXR0b24gLnNob3BpZnktcGF5bWVudC1idXR0b25fX2J1dHRvbi0tdW5icmFuZGVkOmhvdmVyOm5vdChbZGlzYWJsZWRdKSB7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcbn1cblxuLypNb3JlIHBheW1lbnQgb3B0aW9ucyBidXR0b24gY29sb3IqL1xuLnNob3BpZnktcGF5bWVudC1idXR0b25fX21vcmUtb3B0aW9ucyB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uYnRuLS1zZWNvbmRhcnksXG4ucnRlIC5idG4tLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JCb3JkZXI7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXIgMC4zcyBlYXNlO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjNzIGVhc2U7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIDAuM3MgZWFzZTtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi0tdGVydGlhcnksXG4ucnRlIC5idG4tLXRlcnRpYXJ5IHtcbiAgLypVbmRvIC5idG4gc3R5bGVzKi9cbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBpbml0aWFsO1xuXG4gIC8qTmV3IHN0eWxlcyovXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgcGFkZGluZzogJGZvcm1FbGVtZW50UGFkZGluZztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cblxuICAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGNvbG9yOiAkZGlzYWJsZWRHcmV5VGV4dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkQm9yZGVyO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qRm9yY2Ugc2FtZSBjb2xvcnMgYXMgLmJ0biovXG4uYnRuLS10ZXJ0aWFyeS1hY3RpdmUge1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnk7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgfVxufVxuXG4vKkJ1dHRvbiB0aGF0IG1hdGNoZXMgYm9keSBiYWNrZ3JvdW5kKi9cbi5idG4tLWJvZHkge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLmJ0bi0tY2lyY2xlIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtaW4td2lkdGg6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87IC8qZm9yIHBob3Rvc3dpcGUgY2xvc2UgYnV0dG9uKi9cbiAgfVxuXG4gICYuYnRuLS1sYXJnZSAuaWNvbiB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICB9XG5cbiAgJi5idG4tLWxhcmdlIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG5cbiAgLypVbmRvIGFuZ2xlZCBidXR0b24gc3R5bGVzIG9uIGNpcmNsZXMsIGJ1dCBrZWVwIGJvcmRlciovXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5idG4tLXNtYWxsIHtcbiAgcGFkZGluZzogOHB4IDE0cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDE1MCUgNDUlO1xuICBtaW4td2lkdGg6IDkwcHg7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gNnB4KTtcbiAgZm9udC1zaXplOiBtYXgoY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gNnB4KSwgMTJweCk7XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgfVxufVxuXG4uYnRuLS1zZWNvbmRhcnkuYnRuLS1zbWFsbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5idG4tLWxhcmdlIHtcbiAgcGFkZGluZzogMTVweCAyMHB4O1xufVxuXG4uYnRuLS1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRidG5QcmltYXJ5UGFkZGluZztcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgcGFkZGluZzogMTNweCAyMHB4O1xuXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgbWF4LXdpZHRoOiA5NCU7XG4gIH1cbn1cblxuW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQge1xuICAgIG1heC13aWR0aDogOTQlO1xufVxuXG4uYnRuLS1pbnZlcnNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBib3R0b206IC0ycHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZDtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZDtcbiAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8qU3BlY2lmaWMgY29sb3Igd2hlbiBpbiBhIGhlcm8qL1xuICBAbmVzdCAuaGVyb19fbGluayAmIHtcbiAgICBjb2xvcjogJGNvbG9ySGVyb1RleHQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JIZXJvVGV4dDtcblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9ySGVyb1RleHQ7XG4gICAgICB9XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnRuLS1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeURpbTtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlEaW07XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnlEaW07XG4gICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlEaW07XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMnB4O1xuICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDNweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGFuaW1hdGlvbjogc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5RGltO1xuICAgIH1cblxuICAgICYuYnRuLS1zZWNvbmRhcnk6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgfVxuICB9XG59XG5cbi8qQWx0IGxvYWRpbmcgc3RhdGUqL1xuLmJ0bi0tbG9hZGluZy5idG4tLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLnJldHVybi1saW5rIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4IDI1cHg7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogMjJweCAxN3B4O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgfVxuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICBAbWl4aW4gYWNjZW50Rm9udFN0YWNrO1xuICBAbWl4aW4gYWNjZW50Rm9udFNtYWxsU2l6ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxNXB4IDEwcHggMTVweCAwO1xuXG4gIEBuZXN0IC5jb2xsZWN0aW9uLXNpZGViYXJfX2dyb3VwICYge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuLS1ib3JkZXJzIHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxMnB4O1xuXG4gICYgLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24ge1xuICAgIHJpZ2h0OiAxMnB4O1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6IDE1cHg7XG5cbiAgICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uIHtcbiAgICAgIHJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5jb2xsYXBzaWJsZS1jb250ZW50ICsgJiB7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgfVxuXG4gICYgKyAuY29sbGFwc2libGUtY29udGVudCAuY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZzogMCAyMHB4IDIwcHg7XG4gICAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkqMC45Mik7XG4gIH1cblxuICAmICsgLmNvbGxhcHNpYmxlLWNvbnRlbnQtLWV4cGFuZGVkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgfVxuICB9XG59XG5cbi5jb2xsYXBzaWJsZS10cmlnZ2VyLWJ0bi0tYm9yZGVycy10b3Age1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEJ1dHRvbiBzdHlsZXMgd2hlbiBhZGRpdGlvbmFsIHF1aWNrIGNoZWNrb3V0IGJ1dHRvbnNcbiAgYXJlIGVuYWJsZWQgb24gcHJvZHVjdCBwYWdlXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnNob3BpZnktcGF5bWVudC1idXR0b24ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5wYXltZW50LWJ1dHRvbnMge1xuICAmIC5hZGQtdG8tY2FydCxcbiAgJiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbixcbiAgJiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQge1xuICAgIG1pbi1oZWlnaHQ6ICRidG5NaW5IZWlnaHRXaGVuUXVpY2tDaGVja291dDtcbiAgfVxufVxuXG4uYWRkLXRvLWNhcnQuYnRuLS1zZWNvbmRhcnkge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWRCb3JkZXI7XG5cbiAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWRCb3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zaG9waWZ5LXBheW1lbnQtYnV0dG9uX19idXR0b24tLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbiIsInN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4udmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBoZWlnaHQ6IDA7XG4gIGhlaWdodDogYXV0bztcblxuICAmIGlmcmFtZSxcbiAgJiB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4udmlkZW8td3JhcHBlci0tbW9kYWwge1xuICB3aWR0aDogMTAwMHB4O1xufVxuXG4uZ3JpZF9faW1hZ2UtcmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclNtYWxsSW1hZ2VCZztcblxuICAmIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgICYuZ3JpZF9faW1hZ2UtY29udGFpbiB7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIC5wbGFjZWhvbGRlci1zdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvLS1vYmplY3Qge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZ3JpZF9faW1hZ2UtcmF0aW8tLXdpZGU6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvLS1sYW5kc2NhcGU6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvLS1zcXVhcmU6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG59XG5cbi5ncmlkX19pbWFnZS1yYXRpby0tcG9ydHJhaXQ6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDE1MCU7XG59XG5cbi5pbWFnZS1maXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlclwiO1xuICB6LWluZGV4OiAxO1xufVxuXG4ucGFyYWxsYXgtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0zMCU7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTYwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wYXJhbGxheC1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNSU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDExMCU7XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuIiwiZm9ybSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmZvcm0tdmVydGljYWwge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gICYgbGFiZWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLmlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gIGlucHV0LFxuICB0ZXh0YXJlYSxcbiAgc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG5idXR0b24sXG5pbnB1dCxcbnRleHRhcmVhIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5idXR0b24sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dCxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRmb3JtRWxlbWVudFBhZGRpbmc7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG5cbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkQm9yZGVyO1xuICB9XG5cbiAgJi5pbnB1dC1mdWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG50ZXh0YXJlYSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBtYXJnaW46IDAgMTBweCAwIDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGNoZWNrYm94O1xuICAtbW96LWFwcGVhcmFuY2U6IGNoZWNrYm94O1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHJhZGlvO1xuICAtbW96LWFwcGVhcmFuY2U6IHJhZGlvO1xufVxuXG5pbnB1dFt0eXBlPVwiaW1hZ2VcIl0ge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbnNlbGVjdCxcbi5mYXV4LXNlbGVjdCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nLXJpZ2h0OiAyOHB4O1xuICB0ZXh0LWluZGVudDogMC4wMXB4O1xuICB0ZXh0LW92ZXJmbG93OiAnJztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS11cmxJY29TZWxlY3QpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxMHB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMXB4O1xuXG4gIEBuZXN0IC5pcy1saWdodCAmIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS11cmxJY29TZWxlY3RXaGl0ZSk7XG4gIH1cbn1cblxuLmZhdXgtc2VsZWN0IC5pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTBweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDExcHg7XG4gIGhlaWdodDogMTFweDtcbn1cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLypGb3JjZSBvcHRpb24gY29sb3IgKGFmZmVjdHMgSUUgYW5kIHNvbWUgRmlyZWZveCB2ZXJzaW9ucykqL1xub3B0aW9uIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIGNvbG9yOiAjY2NjO1xuICB9XG59XG5cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRkZW4tbGFiZWwge1xuICBAbWl4aW4gdmlzdWFsbHlIaWRkZW47XG59XG5cbmxhYmVsW2Zvcl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5mb3JtLXZlcnRpY2FsIHtcbiAgJiBpbnB1dCxcbiAgJiBzZWxlY3QsXG4gICYgdGV4dGFyZWEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICAmIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgJiBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICYgLmJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgJiAuYnRuOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuc21hbGwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gICYuZXJyb3Ige1xuICAgIGJvcmRlci1jb2xvcjogJGVycm9yUmVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRlcnJvclJlZEJnO1xuICAgIGNvbG9yOiAkZXJyb3JSZWQ7XG4gIH1cbn1cblxubGFiZWwuZXJyb3Ige1xuICBjb2xvcjogJGVycm9yUmVkO1xufVxuXG4uc2VsZWN0b3Itd3JhcHBlciB7XG4gICYgbGFiZWwge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxuXG4gICYgKyAuc2VsZWN0b3Itd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cbiIsIi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJiAuaW5wdXQtZ3JvdXAtZmllbGQ6Zmlyc3QtY2hpbGQsXG4gICYgLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCAuYnRuLFxuICAmIGlucHV0W3R5cGU9XCJoaWRkZW5cIl06Zmlyc3QtY2hpbGQgKyAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXM7XG4gIH1cblxuICAmIC5pbnB1dC1ncm91cC1maWVsZDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwO1xuICB9XG5cbiAgJiAuaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkIC5idG4sXG4gICYgaW5wdXRbdHlwZT1cImhpZGRlblwiXTpmaXJzdC1jaGlsZCArIC5pbnB1dC1ncm91cC1idG4gLmJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uUmFkaXVzKSAwIDAgdmFyKC0tYnV0dG9uUmFkaXVzKTtcbiAgfVxuXG4gICYgLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgdmFyKC0tYnV0dG9uUmFkaXVzKSB2YXIoLS1idXR0b25SYWRpdXMpIDA7XG4gIH1cblxuICAmIGlucHV0IHtcbiAgICAvKk5hc3R5IEZpcmVmb3ggaGFjayBmb3IgaW5wdXRzIGh0dHA6Ly9kYXZpZHdhbHNoLm5hbWUvZmlyZWZveC1idXR0b25zKi9cbiAgICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgICB9XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDsgLypmb3JjZXMgLmJ0biBmdWxsIGhlaWdodCovXG5cbiAgJiAuaWNvbiB7XG4gICAgdmVydGljYWwtYWxpZ246IGluaXRpYWw7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOHB4O1xuICB9XG59XG4iLCIuaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmlsbDogY3VycmVudENvbG9yO1xuXG4gIEBuZXN0IC5uby1zdmcgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaWNvbi0tZnVsbC1jb2xvciB7XG4gIGZpbGw6IGluaXRpYWw7XG59XG5cbnN2ZyxcbnN5bWJvbCB7XG4gICYuaWNvbjpub3QoLmljb24tLWZ1bGwtY29sb3IpIHtcbiAgICAmIGNpcmNsZSxcbiAgICAmIGVsbGlwc2UsXG4gICAgJiBnLFxuICAgICYgbGluZSxcbiAgICAmIHBhdGgsXG4gICAgJiBwb2x5Z29uLFxuICAgICYgcG9seWxpbmUsXG4gICAgJiByZWN0IHtcbiAgICAgIGZpbGw6IGluaGVyaXQ7XG4gICAgICBzdHJva2U6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbi8qIE92ZXJyaWRlIHRoZSBhYm92ZSBmb3Igb3VyIHN0cm9rZS1vbmx5IGljb25zICovXG4uaWNvbi1jYXJ0LFxuLmljb24tYmFnLFxuLmljb24tYmFnLW1pbmltYWwsXG4uaWNvbi1zZWFyY2gsXG4uaWNvbi1jbG9zZSxcbi5pY29uLWNoZXZyb24tZG93bixcbi5pY29uLWVtYWlsLFxuLmljb24tdXNlcixcbi5pY29uLWhhbWJ1cmdlcixcbi5pY29uLWZpbHRlcixcbi5pY29uLWdsb2JlLFxuLmljb24tdHJ1Y2ssXG4uaWNvbi1wYWNrYWdlLFxuLmljb24tY2lyY2xlLWNoZWNrbWFyayxcbi5pY29uLWxlYWYsXG4uaWNvbi1sb2NrLFxuLmljb24tZ2lmdCxcbi5pY29uLXJpYmJvbixcbi5pY29uLXBob25lLFxuLmljb24taGVhcnQsXG4uaWNvbi1zaGllbGQsXG4uaWNvbi10YWcsXG4uaWNvbi1zaXplLWNoYXJ0LFxuLmljb24tdGN3aS1iaWxscyxcbi5pY29uLXRjd2ktY2FsZW5kYXIsXG4uaWNvbi10Y3dpLWNhcnQsXG4uaWNvbi10Y3dpLWNoYXJpdHksXG4uaWNvbi10Y3dpLWdlYXJzLFxuLmljb24tdGN3aS1naWZ0LFxuLmljb24tdGN3aS1nbG9iZSxcbi5pY29uLXRjd2ktb3Blbi1lbnZlbG9wZSxcbi5pY29uLXRjd2ktcGFja2FnZSxcbi5pY29uLXRjd2ktcGxhbnQsXG4uaWNvbi10Y3dpLXJlY3ljbGUsXG4uaWNvbi10Y3dpLXJpYmJvbixcbi5pY29uLXRjd2ktc2FsZXMtdGFnLFxuLmljb24tdGN3aS1zaGllbGQsXG4uaWNvbi10Y3dpLXN0b3B3YXRjaCxcbi5pY29uLXRjd2ktc3RvcmUsXG4uaWNvbi10Y3dpLXRodW1icy11cCxcbi5pY29uLXRjd2ktdHJvcGh5LFxuLmljb24tdGN3aS10cnVjayxcbi5pY29uLXRjd2ktd2FsbGV0LFxuLmljb24tdGN3aS1jaGF0LFxuLmljb24tdGN3aS1waG9uZSB7XG4gICYgY2lyY2xlLFxuICAmIGVsbGlwc2UsXG4gICYgZyxcbiAgJiBsaW5lLFxuICAmIHBhdGgsXG4gICYgcG9seWdvbixcbiAgJiBwb2x5bGluZSxcbiAgJiByZWN0IHtcbiAgICBmaWxsOiBub25lICFpbXBvcnRhbnQ7XG4gICAgc3Ryb2tlLXdpZHRoOiB2YXIoLS1pY29uV2VpZ2h0KTtcbiAgICBzdHJva2U6IGN1cnJlbnRDb2xvciAhaW1wb3J0YW50O1xuICAgIHN0cm9rZS1saW5lY2FwOiB2YXIoLS1pY29uTGluZWNhcHMpO1xuICAgIHN0cm9rZS1saW5lam9pbjogdmFyKC0taWNvbkxpbmVjYXBzKTtcbiAgfVxufVxuLmljb24tY2FydCBjaXJjbGUge1xuICBmaWxsOiBjdXJyZW50Q29sb3IgIWltcG9ydGFudDtcbn1cblxuLmljb25fX2ZhbGxiYWNrLXRleHQge1xuICBAbWl4aW4gdmlzdWFsbHlIaWRkZW47XG59XG4iLCIuanMtZHJhd2VyLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZHJhd2VyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBtYXgtd2lkdGg6IDk1JTtcbiAgei1pbmRleDogJHppbmRleERyYXdlcjtcbiAgY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckRyYXdlcnM7XG4gIGJveC1zaGFkb3c6IDAgMCAxNTBweCByZ2JhKDAsMCwwLDAuMSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuXG4gIC8qIEFsbG93IHdob2xlIGRyYXdlciB0byBiZSBzY3JvbGxhYmxlIG9uIHNob3J0IHNjcmVlbnNcbiAgICAgdHlwaWNhbGx5IHdoZW4gQW5kcm9pZCBrZXlib2FyZCBpcyBvcGVuKi9cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6ICRmaXhlZEhlaWdodExpbWl0KSB7XG4gICAgb3ZlcmZsb3c6IHNjcm9sbDtcblxuICAgICYgLmRyYXdlcl9fY29udGVudHMge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYgYTpub3QoLmJ0bikge1xuICAgIGNvbG9yOiAkY29sb3JEcmF3ZXJUZXh0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgICB9XG4gIH1cblxuICAmIGlucHV0LFxuICAmIHRleHRhcmVhIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgfVxuXG4gICYgLmJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRHJhd2VyQnV0dG9uO1xuICAgIGNvbG9yOiAkY29sb3JEcmF3ZXJCdXR0b25UZXh0O1xuICB9XG59XG5cbi5kcmF3ZXItLWxlZnQge1xuICB3aWR0aDogJGRyYXdlck5hdldpZHRoO1xuICBsZWZ0OiAtJGRyYXdlck5hdldpZHRoO1xuXG4gICYuZHJhd2VyLS1pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGRyYXdlck5hdldpZHRoKTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjQ1cztcbiAgfVxufVxuXG4uZHJhd2VyLS1yaWdodCB7XG4gIHdpZHRoOiAkZHJhd2VyQ2FydFdpZHRoO1xuICByaWdodDogLSRkcmF3ZXJDYXJ0V2lkdGg7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHdpZHRoOiAkZHJhd2VyQ2FydFdpZHRoTGFyZ2U7XG4gICAgcmlnaHQ6IC0kZHJhd2VyQ2FydFdpZHRoTGFyZ2U7XG4gIH1cblxuICAmLmRyYXdlci0taXMtb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kZHJhd2VyQ2FydFdpZHRoKTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjQ1cztcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJGRyYXdlckNhcnRXaWR0aExhcmdlKTtcbiAgICB9XG4gIH1cbn1cblxuLmpzLWRyYXdlci1vcGVuIC5tYWluLWNvbnRlbnQ6YWZ0ZXIsXG4uanMtZHJhd2VyLWNsb3NpbmcgLm1haW4tY29udGVudDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvck1vZGFsQmc7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXhEcmF3ZXJPdmVybGF5O1xufVxuXG4uanMtZHJhd2VyLW9wZW4gLm1haW4tY29udGVudDphZnRlciB7XG4gIGFuaW1hdGlvbjogb3ZlcmxheS1vbiAwLjM1cyBmb3J3YXJkcztcbn1cblxuLmpzLWRyYXdlci1jbG9zaW5nIC5tYWluLWNvbnRlbnQ6YWZ0ZXIge1xuICBhbmltYXRpb246IG92ZXJsYXktb2ZmIDAuMjVzIGZvcndhcmRzO1xufVxuXG4uZHJhd2VyX19oZWFkZXIsXG4uZHJhd2VyX19maXhlZC1oZWFkZXIsXG4uZHJhd2VyX19zY3JvbGxhYmxlLFxuLmRyYXdlcl9fZm9vdGVyIHtcbiAgcGFkZGluZy1sZWZ0OiB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tZHJhd2VyLWd1dHRlcik7XG59XG5cbi5kcmF3ZXJfX2hlYWRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtaW4taGVpZ2h0OiAkZHJhd2VySGVhZGVySGVpZ2h0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMi42KSAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbn1cblxuLmRyYXdlcl9fZml4ZWQtaGVhZGVyIHtcbiAgbWluLWhlaWdodDogJGRyYXdlckhlYWRlckhlaWdodDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qZm9yIGNsb3NlIGJ1dHRvbiBoaXQgYXJlYSovXG59XG5cbi5kcmF3ZXJfX2hlYWRlcixcbi5kcmF3ZXJfX2ZpeGVkLWhlYWRlciB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuZHJhd2VyX19oZWFkZXIsXG4gIC5kcmF3ZXJfX2ZpeGVkLWhlYWRlciB7XG4gICAgbWluLWhlaWdodDogJGRyYXdlckhlYWRlckhlaWdodExhcmdlO1xuICB9XG59XG5cbi5kcmF3ZXJfX3RpdGxlLFxuLmRyYXdlcl9fY2xvc2Uge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZHJhd2VyX190aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZHJhd2VyX19jbG9zZSB7XG4gIHdpZHRoOiAxJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKkJ1dHRvbiBzaXRzIG9uIHJpZ2h0IGJ5IGRlZmF1bHQqL1xuLmRyYXdlcl9fY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHJpZ2h0OiBjYWxjKHZhcigtLWRyYXdlci1ndXR0ZXIpICogLTEpO1xuICBwYWRkaW5nOiAwIHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuICBjb2xvcjogaW5oZXJpdDtcblxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRHJhd2Vyc0RpbTtcbiAgfVxuXG4gICYgLmljb24ge1xuICAgIGhlaWdodDogMjhweDtcbiAgICB3aWR0aDogMjhweDtcbiAgfVxufVxuXG4vKlJhcmUgdXNlIGNhc2UgbGVmdCBjbG9zZSBidXR0b24qL1xuLmRyYXdlcl9fY2xvc2UtLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICYgLmRyYXdlcl9fY2xvc2UtYnV0dG9uIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBjYWxjKHZhcigtLWRyYXdlci1ndXR0ZXIpICogLTEpO1xuICB9XG59XG5cbi5kcmF3ZXJfX2NvbnRlbnRzIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZHJhd2VyX19pbm5lcixcbi5kcmF3ZXJfX3Njcm9sbGFibGUge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4uZHJhd2VyX19zY3JvbGxhYmxlIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5kcmF3ZXJfX2Zvb3RlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctYm90dG9tOiB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoJGd1dHRlciAvIDEuMzUpO1xuICB9XG59XG5cbi5kcmF3ZXJfX2lubmVyLmlzLWxvYWRpbmcge1xuICAmIC5kcmF3ZXJfX3Njcm9sbGFibGUge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlIDAuN3M7XG4gICAgb3BhY2l0eTogMC40O1xuICB9XG59XG5cbi5jYXJ0LW5vdGVzIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbWluLWhlaWdodDogNjBweDtcbiAgaGVpZ2h0OiA2MHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgIGhlaWdodDogODBweDtcbiAgfVxufVxuIiwiLnBsYWNlaG9sZGVyLXN2ZyB7XG4gIGZpbGw6ICM5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMWUxZTE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLnBsYWNlaG9sZGVyLW5vYmxvY2tzIHtcbiAgcGFkZGluZzogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKlBsYWNlaG9sZGVyIGFuaW1hdGlvbiBmb3IgbG9hZGluZyBwcm9kdWN0IGZvcm0qL1xuLnBsYWNlaG9sZGVyLWNvbnRlbnQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyLXNoaW1tZXIgMS4zcyBsaW5lYXIgaW5maW5pdGU7XG4gIGJhY2tncm91bmQtc2l6ZTogNDAwJSAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCJAbWl4aW4gYW5pbWF0aW9uLWRlbGF5IDIwO1xuQG1peGluIGFwcGVhci1kZWxheSAyMDtcblxuLmFuaW1hdGlvbi1jcm9wcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi5pbWFnZS13cmFwIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yU21hbGxJbWFnZUJnO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbWFnZS13cmFwIGltZzpub3QoW3JvbGU9XCJwcmVzZW50YXRpb25cIl0pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5pbWFnZS13cmFwIHtcbiAgJiBzdmcsXG4gICYgLmFuaW1hdGUtbWUge1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICBAbmVzdCAubm8tanMgJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4uYW9zLWFuaW1hdGUgLmltYWdlLXdyYXAge1xuICAmIHN2ZyxcbiAgJiAuYW5pbWF0ZS1tZSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLWluIDFzIGN1YmljLWJlemllcigwLjI2LCAwLjU0LCAwLjMyLCAxKSAwcyBmb3J3YXJkcztcbiAgfVxufVxuXG4uaW1hZ2Utd3JhcCBpbWcge1xuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtM1wiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoM24rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxNTBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi0zXCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCgzbiszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDMwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTRcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDRuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTIwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNFwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNG4rMykgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyNDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi00XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg0bis0KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDM2MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogNzVtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi01XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg1biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMjI1bXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rNSkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bisyKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rMykgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bis0KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzUpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMjAwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rNikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyNTBtcztcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1pbWFnZSB7XG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi0zXCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCgzbisyKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTNcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDNuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMzAwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNFwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNG4rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMjBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi00XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg0biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDI0MG1zO1xuICB9XG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi00XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg0bis0KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDM2MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogNzVtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi01XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg1biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMjI1bXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rNSkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bisyKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rMykgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bis0KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzUpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMjAwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rNikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyNTBtcztcbiAgfVxufVxuXG4ubG9hZGluZzphZnRlcixcbi5sb2FkaW5nOmJlZm9yZSxcbi51bmxvYWQ6YmVmb3JlLFxuLnVubG9hZDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbjogLTFweCAwIDAgLTUwcHg7XG4gIHotaW5kZXg6ICR6LWluZGV4LWxvYWRlcjtcbiAgb3BhY2l0eTogMDtcblxuICBAbmVzdCAubm8tanMgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubG9hZGluZzpiZWZvcmUsXG4udW5sb2FkOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvclRleHRCb2R5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubG9hZGluZzphZnRlcixcbi51bmxvYWQ6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb246IHByZWxvYWRpbmcgMC41cyBlYXNlIDAuM3MgaW5maW5pdGU7XG59XG5cbi5sb2FkaW5nLS1kZWxheWVkOmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC44cyAhaW1wb3J0YW50O1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzICFpbXBvcnRhbnQ7XG59XG5cbi5sb2FkaW5nLS1kZWxheWVkOmFmdGVyIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjNzICFpbXBvcnRhbnQ7XG59XG5cbi8qRGVsYXkgYW5pbWF0aW9ucywgdXNlZCBpbiBkcmF3ZXJzKi9cbi5hcHBlYXItYW5pbWF0aW9uIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYwcHgpO1xuXG4gIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmpzLWRyYXdlci1vcGVuIC5hcHBlYXItYW5pbWF0aW9uIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG59XG5cbi5qcy1kcmF3ZXItY2xvc2luZyAuYXBwZWFyLWFuaW1hdGlvbiB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xufVxuIiwiLnNob3BpZnktcHJvZHVjdC1yZXZpZXdzLWJhZGdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDI1cHg7XG59XG5cbi8qU3RhciBzaXplIG9uIHByb2R1Y3QgcGFnZSovXG4ucHJvZHVjdC1zaW5nbGVfX21ldGEgLnNwci1pY29uIHtcbiAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbn1cblxuLypNYXRjaCBIMyBzdHlsZXMqL1xuLnNwci1oZWFkZXItdGl0bGUge1xuICBAbWl4aW4gaGVhZGluZ0ZvbnRTdGFjaztcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVIZWFkZXJTaXplKSAqIDAuNykgIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xufVxuXG4uc3ByLWNvbnRhaW5lci5zcHItY29udGFpbmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zcHItY29udGFpbmVyIHtcbiAgJiAuc3ByLXN1bW1hcnktYWN0aW9ucy1uZXdyZXZpZXcge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgJiAuc3ByLXN1bW1hcnktc3RhcnJhdGluZyB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAmIC5zcHItc3VtbWFyeS5zcHItc3VtbWFyeSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJiAuc3ByLXJldmlldy1jb250ZW50LWJvZHksXG4gICYgLnNwci1mb3JtLWxhYmVsIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDJweCk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYzO1xuICB9XG5cbiAgJiAuc3ByLXJldmlldy1oZWFkZXItYnlsaW5lIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgb3BhY2l0eTogMTtcblxuICAgICYgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgJiAuc3ByLXJldmlldyB7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmIC5zcHItZm9ybS1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG5cbiAgJiAuc3ByLXN1bW1hcnktY2FwdGlvbixcbiAgJiAuc3ByLXN1bW1hcnktYWN0aW9ucyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmIC5zcHItc3VtbWFyeS1hY3Rpb25zIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5zcHItZm9ybS1jb250YWN0LW5hbWUgbGFiZWwge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4vKlJldmlldyBzdHlsZXMgaW4gZnVsbCB3aWR0aCBzZWN0aW9uKi9cbi5wcm9kdWN0LWZ1bGwtd2lkdGggLnNwci1jb250YWluZXIge1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgJi5pbmRleC1zZWN0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgJiAuc3ByLWZvcm0tdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5zcHItZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBib3JkZXItdG9wOiBub25lO1xuICAgIH1cblxuICAgICYgLnNwci1yZXZpZXdzIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICBAbmVzdCBbZGF0YS10eXBlX2hlYWRlcnNfYWxpZ25fdGV4dD1cInRydWVcIl0gJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLnNwci1yZXZpZXc6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmIC5zcHItcmV2aWV3IHtcbiAgICAgIGZsZXg6IDEgMSA0MCU7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6ICRncmlkLWd1dHRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlcjtcblxuICAgICAgQG5lc3QgW2RhdGEtdHlwZV9oZWFkZXJzX2FsaWduX3RleHQ9XCJ0cnVlXCJdICYge1xuICAgICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtY2hpbGQoM24rMSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qUmV2aWV3IHN0eWxlcyBpbiBwcm9kdWN0IGdyaWQqL1xuLmdyaWQtcHJvZHVjdCB7XG4gICYgLnNwci1iYWRnZVtkYXRhLXJhdGluZz1cIjAuMFwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYgLnNwci1iYWRnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJiAuc3ByLWJhZGdlLXN0YXJyYXRpbmcge1xuICAgIGZvbnQtc2l6ZTogMC42NWVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gICYgLnNwci1pY29uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgfVxuXG4gICYgLnNwci1iYWRnZS1jYXB0aW9uIHtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbiAgfVxufVxuXG4uc3ByLWNvbnRlbnQgLnNwci1yZXZpZXctaGVhZGVyLXRpdGxlIHtcbiAgQG1peGluIGJhc2VGb250U3RhY2s7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLnNwci1wYWdpbmF0aW9uIHtcbiAgZmxleDogMSAxIDEwMCU7XG59XG5cbi5zcHItcmV2aWV3LXJlcG9ydHJldmlldyB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zcHItc3VtbWFyeS1zdGFycmF0aW5nIHtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cbiIsInRvb2wtdGlwW2RhdGEtdG9vbC10aXAtb3Blbj1cInRydWVcIl0gLnRvb2wtdGlwX19pbm5lciB7XG4gIHBhZGRpbmc6IDQ1cHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogNDVweCAyMHB4IDIwcHg7XG4gIH1cbn1cblxuLnRvb2wtdGlwX19jbG9zZSB7XG4gIHBhZGRpbmc6IDEwcHg7XG59XG4iLCJbZGF0YS1jZW50ZXItdGV4dD1cInRydWVcIl0gcHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNbZGF0YS1pbnRlbnQ9XCJjb21wbGVtZW50YXJ5XCJdIHtcblxuICAmIC5ncmlkLXByb2R1Y3RfX2NvbG9ycyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0IC5zcHItYmFkZ2Uge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3QgLnNwci1iYWRnZS1jYXB0aW9uIHtcbiAgICBmb250LXNpemU6IGluaXRpYWw7XG4gIH1cbn1cblxuW2RhdGEtcHJvZHVjdC1ibG9ja3NdIHByb2R1Y3QtcmVjb21tZW5kYXRpb25zW2RhdGEtaW50ZW50PVwiY29tcGxlbWVudGFyeVwiXSAuc3ByLXN0YXJyYXRpbmcge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwicHJlZGljdGl2ZS1zZWFyY2gge1xuICAmIC5zZWFyY2hfX3Jlc3VsdHMge1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDMwcHgpO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgICB9XG4gIH1cblxuICAmIGZvcm0ge1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWFyZ2luOiAwIDEwcHggMCAyMHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLmZvb3Rlci1wcm9tb3Rpb25zIHtcbiAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICYgLmdyaWRfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNpdGUtZm9vdGVyIHtcbiAgcGFkZGluZy1ib3R0b206ICRndXR0ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckZvb3RlcjtcbiAgY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgKiAyKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygkZ3V0dGVyICogMik7XG4gIH1cblxuICAmIC5mb290ZXJfX2NvbGxhcHNpYmxlIHtcbiAgICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICYgdGV4dGFyZWEsXG4gICAgJiBzZWxlY3QsXG4gICAgJiBpbnB1dCB7XG4gICAgICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICYgLmdyaWRfX2l0ZW0ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gICAgICAgIG9wYWNpdHk6IDAuMTI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoJGd1dHRlciAvIDQpO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgYSB7XG4gICAgY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gIH1cbn1cblxuLmZvb3Rlcl9fc21hbGwtdGV4dCB7XG4gIEBtaXhpbiBiYXNlRXh0cmFTbWFsbEZvbnRTdGFjaztcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gNCkgMDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG5lc3QgdWwgKyAmIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuLmZvb3Rlcl9fY2xlYXIge1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAkZ3V0dGVyO1xufVxuXG4uZm9vdGVyX19zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi10b3A6ICRndXR0ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5mb290ZXJfX2l0ZW0tcGFkZGluZyB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygkZ3V0dGVyICogMik7XG4gIH1cbn1cblxuLmZvb3Rlcl9fdGl0bGUge1xuICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgfVxufVxuXG4uc2l0ZS1mb290ZXJfX2xpbmtsaXN0IHtcbiAgbWFyZ2luOiAwO1xuXG4gICYgYSB7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogNHB4IDA7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlci1pbnB1dCB7XG4gIHBhZGRpbmc6IDEwcHggNDVweCAxMHB4IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckZvb3RlcjtcbiAgY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gIH1cblxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mb290ZXJfX25ld3NsZXR0ZXItaW5wdXQtLWFjdGl2ZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDgwcHg7XG59XG5cbi5mb290ZXJfX25ld3NsZXR0ZXItYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICByaWdodDogMDtcbiAgY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gIHBhZGRpbmc6IDA7XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDI2cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICB9XG5cbiAgQG5lc3QgLmZvb3Rlcl9fbmV3c2xldHRlci1pbnB1dC0tYWN0aXZlICsgJiB7XG4gICAgJiAuaWNvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgLmZvb3Rlcl9fbmV3c2xldHRlci1idG4tbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXJfX25ld3NsZXR0ZXItYnRuLWxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcbn1cblxuLmZvb3Rlcl9fbG9nbyB7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMikgMDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luOiAwIDAgY2FsYygkZ3V0dGVyIC8gMS41KTtcbiAgfVxuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5mb290ZXJfX3NvY2lhbCB7XG4gIG1hcmdpbjogMDtcblxuICBAbmVzdCBmb3JtICsgJiB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlcjtcbiAgfVxuXG4gICYgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMTVweCAxNXB4IDA7XG4gIH1cblxuICAmIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgJi5pY29uLS13aWRlIHtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKkNvbGxhcHNpYmxlIGJ1dHRvbnMqL1xuLmZvb3Rlcl9fY29sbGFwc2libGUge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAwIDAgY2FsYygkZ3V0dGVyIC8gMikgMDtcbiAgfVxufVxuXG4uZm9vdGVyX2NvbGxhcHNpYmxlLS1kaXNhYmxlZCB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4uY29sbGFwc2libGUtY29udGVudF9faW5uZXIgcCB7XG4gICYgYTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTJweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNXMgZWFzZTtcbiAgfVxuXG4gICYgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvckZvb3RlclRleHRBbHBoYTAxKTtcblxuICAgICY6aG92ZXI6YWZ0ZXIsXG4gICAgJjpmb2N1czphZnRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnNpdGUtZm9vdGVyIHtcbiAgJiBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLXVybEljb1NlbGVjdEZvb3Rlcik7XG4gIH1cbn1cblxuLnBheW1lbnQtaWNvbnMge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgJiBsaSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIG1hcmdpbjogMCA0cHggMDtcbiAgfVxufVxuIiwiLm5vdGUsXG4uZXJyb3JzIHtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgcGFkZGluZzogNnB4IDEycHg7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAmIHVsLFxuICAmIG9sIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmIGxpOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLm5vdGUge1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLmVycm9ycyB7XG4gICYgdWwge1xuICAgIGxpc3Qtc3R5bGU6IGRpc2Mgb3V0c2lkZTtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgfVxufVxuXG4ubm90ZS0tc3VjY2VzcyB7XG4gIGNvbG9yOiAkc3VjY2Vzc0dyZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VjY2Vzc0dyZWVuQmc7XG4gIGJvcmRlci1jb2xvcjogJHN1Y2Nlc3NHcmVlbjtcblxuICAmIGEge1xuICAgIGNvbG9yOiAkc3VjY2Vzc0dyZWVuO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWVycm9yLFxuLmVycm9ycyB7XG4gIGNvbG9yOiAkZXJyb3JSZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRlcnJvclJlZEJnO1xuICBib3JkZXItY29sb3I6ICRlcnJvclJlZDtcblxuICAmIGEge1xuICAgIGNvbG9yOiAkZXJyb3JSZWQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAyKSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJiA+IHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAmIGEsXG4gICYgLnBhZ2UuY3VycmVudCB7XG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gIH1cblxuICAmIC5wYWdlLmN1cnJlbnQge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgfVxuXG4gICYgLm5leHQsXG4gICYgLnByZXYge1xuICAgIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5O1xuICAgIHdpZHRoOiA0M3B4O1xuICAgIG1hcmdpbjogMCAxMHB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogMzVweDtcbiAgICB9XG5cbiAgICAmIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuXG4gICAgJiAuaWNvbiB7XG4gICAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gICAgICB3aWR0aDogMTNweDtcbiAgICAgIGhlaWdodDogMTRweDtcblxuICAgICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIucnRlIHtcbiAgQG1peGluIGNsZWFyZml4O1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyA0KTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmICsgLnJ0ZSB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlcjtcbiAgfVxuXG4gICYgcCxcbiAgJiB1bCxcbiAgJiBvbCxcbiAgJiB0YWJsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiB1bCB7XG4gICAgJiB1bCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8qQWRkIHNvbWUgdG9wIG1hcmdpbiB0byBoZWFkZXJzIGZyb20gdGhlIHJpY2ggdGV4dCBlZGl0b3IqL1xuXG4gICYgaDEsICYgaDIsICYgaDMsICYgaDQsICYgaDUsICYgaDYge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gICYgaDEsICYgaDIsICYgaDMsICYgaDQsICYgaDUsICYgaDYge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8qSW4gY2FzZSBtZXJjaGFudHMgcGFzdGUgbWV0YSB0YWdzIGludG8gdGhlaXIgY29udGVudCBieSBhY2NpZGVudCovXG5cbiAgJiBtZXRhOmZpcnN0LWNoaWxkIHtcbiAgICAmICsgaDEsICYgKyBoMiwgJiArIGgzLCAmICsgaDQsICYgKyBoNSwgJiArIGg2IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJiA+IGRpdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiB0YWJsZSB7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgfVxufVxuXG4ucnRlLS1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gIH1cbn1cblxuLnJ0ZS1zZXR0aW5nIHtcbiAgJiA+IHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4ucnRlLFxuLnJ0ZS1zZXR0aW5nIHtcbiAgJiBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmIGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJiBhOm5vdCgucnRlX19pbWFnZSk6bm90KC5idG4pOm5vdCguc3ByLXN1bW1hcnktYWN0aW9ucy1uZXdyZXZpZXcpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAxNSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLypzbyB1bmRlcmxpbmUgaG92ZXIgZWZmZWN0IHdvcmtzKi9cbiAgfVxuXG4gICYgYTpub3QoLmJ0bik6bm90KC5zcHItc3VtbWFyeS1hY3Rpb25zLW5ld3Jldmlldyk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0ycHg7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgY3VycmVudENvbG9yO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuNXMgZWFzZTtcbiAgfVxuXG4gICYgYTpub3QoLmJ0bikge1xuICAgICY6aG92ZXI6YWZ0ZXIsXG4gICAgJjpmb2N1czphZnRlciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAmIGEucnRlX19pbWFnZTphZnRlciB7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxufVxuXG4udGV4dC1jZW50ZXIgLnJ0ZSxcbi50ZXh0LWNlbnRlci5ydGUge1xuICAmIHVsLFxuICAmIG9sIHtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLnJ0ZS0tbm9tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwiLmhlYWRlci1sYXlvdXQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5oZWFkZXItbGF5b3V0LS1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uaGVhZGVyLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmhlYWRlci1pdGVtLS1sb2dvIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5oZWFkZXItaXRlbS0taWNvbnMge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLypTYW1lIGRlZmF1bHQgbG9nbyBhbmQgaWNvbiBjb250YWluZXIgc2l6ZSwgbG9nbyBibG9jayB3aWR0aCBvdmVycmlkZXMqL1xuLmhlYWRlci1sYXlvdXQtLWxlZnQtY2VudGVyIHtcbiAgJiAuaGVhZGVyLWl0ZW0tLWxvZ28sXG4gICYgLmhlYWRlci1pdGVtLS1pY29ucyB7XG4gICAgZmxleDogMCAwIDIwMHB4O1xuICAgIG1heC13aWR0aDogNTAlO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWluLXdpZHRoOiAxMzBweDsgLyphcHByb3ggd2lkdGggb2YgMiBpY29ucyovXG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItbGF5b3V0W2RhdGEtbG9nby1hbGlnbj1cImNlbnRlclwiXSB7XG4gICYgLmhlYWRlci1pdGVtLS1sb2dvIHtcbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW46IDAgMzBweDtcbiAgICB9XG4gIH1cblxuICAmIC5oZWFkZXItaXRlbS0tbmF2aWdhdGlvbixcbiAgJiAuaGVhZGVyLWl0ZW0tLWljb25zIHtcbiAgICBmbGV4OiAxIDEgMTMwcHg7IC8qYXByb3ggd2lkdGggb2YgMiBpY29ucyovXG4gIH1cbn1cblxuLmhlYWRlci1sYXlvdXRbZGF0YS1sb2dvLWFsaWduPVwibGVmdFwiXSB7XG4gICYgLnNpdGUtaGVhZGVyX19sb2dvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGd1dHRlciAvIDMpO1xuICB9XG59XG5cbi5oZWFkZXItaXRlbS0tbG9nby1zcGxpdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4OiAxIDEgMTAwJTtcblxuICAmIC5oZWFkZXItaXRlbTpub3QoLmhlYWRlci1pdGVtLS1sb2dvKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZsZXg6IDEgMSAyMCU7XG4gIH1cbn1cblxuLmhlYWRlci1pdGVtLS1zcGxpdC1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLypJY29uIGFsaWdubWVudCovXG4uaGVhZGVyLWl0ZW0tLWxlZnQge1xuICAmIC5zaXRlLW5hdiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kc2l0ZU5hdkljb25QYWRkaW5nO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYygtJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLWl0ZW0tLWljb25zIHtcbiAgJiAuc2l0ZS1uYXYge1xuICAgIG1hcmdpbi1yaWdodDogLSRzaXRlTmF2SWNvblBhZGRpbmc7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygtJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuICAgIH1cbiAgfVxufVxuIiwiLnNpdGUtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA3cHggMDtcbiAgYmFja2dyb3VuZDogJGNvbG9yTmF2O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG5cbiAgICBAbmVzdCAudG9vbGJhciArIC5oZWFkZXItc3RpY2t5LXdyYXBwZXIgJiB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1jb2xvckhlYWRlclRleHRBbHBoYTAxKTtcbiAgICB9XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyLS1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHotaW5kZXg6ICR6LWluZGV4LXN0dWNrLWhlYWRlcjtcblxuICAvKlJlYXJyYW5nZW1lbnQgZm9yIHdoZW4gdG9wIHNlYXJjaCBkcmF3ZXIgaXMgb3BlbiBzbyBuYXYgaXMgYWJvdmUgb3ZlcmxheSovXG4gIEBuZXN0IC5qcy1kcmF3ZXItb3Blbi0tc2VhcmNoICYge1xuICAgIHotaW5kZXg6ICR6LWluZGV4LWhlYWRlci1zZWFyY2g7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICB9XG59XG5cbi8qRGlzYWJsZSBzdGlja3kgaGVhZGVyIG9uIHNob3J0IGFuZCB3aWRlIHNjcmVlbnMqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzAwcHgpIGFuZCAobWF4LWhlaWdodDogNTUwcHgpIHtcbiAgLnNpdGUtaGVhZGVyLS1zdHVjayB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXItLW9wZW5pbmcge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xufVxuXG4uc2l0ZS1oZWFkZXJfX2xvZ28ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMykgMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMzBweDsgLyp3aGVuIG5vIGltYWdlKi9cbiAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMSk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIEBuZXN0IC50ZXh0LWNlbnRlciAmIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IGNhbGMoJGd1dHRlciAvIDMpIGF1dG87XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLmhlYWRlci1sYXlvdXRbZGF0YS1sb2dvLWFsaWduPVwiY2VudGVyXCJdICYge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmIGEge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gICYgYSxcbiAgJiBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBAbmVzdCAuc2l0ZS1oZWFkZXIgJiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXJfX2xvZ28tbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4vKlN0aWNreSBoZWFkZXIgb24gdG9wIG9mIGltYWdlL3NsaWRlc2hvdyovXG4uaGVhZGVyLXN0aWNreS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAkei1pbmRleC1oZWFkZXItc2VhcmNoO1xuXG4gIC8qIFVwZGF0ZSB3aGVuIGRyYXdlciBpcyBvcGVuICovXG4gIEBuZXN0IC5qcy1kcmF3ZXItb3Blbjpub3QoLmpzLWRyYXdlci1vcGVuLS1zZWFyY2gpICYge1xuICAgIHotaW5kZXg6ICR6LWluZGV4LXN0aWNreS1oZWFkZXI7XG4gIH1cbn1cblxuLmhlYWRlci13cmFwcGVyLS1zdGlja3kge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6ICR6LWluZGV4LXN0aWNreS1oZWFkZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwwLDAsMC4zKSAwJSxyZ2JhKDAsMCwwLDApIDEwMCUpO1xuXG4gICYgLnNpdGUtaGVhZGVyOm5vdCguc2l0ZS1oZWFkZXItLXN0dWNrKSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxuXG4gIC8qUmVhcnJhbmdlbWVudCBmb3Igd2hlbiB0b3Agc2VhcmNoIGRyYXdlciBpcyBvcGVuIHNvIG5hdiBpcyBhYm92ZSBvdmVybGF5Ki9cbiAgQG5lc3QgLmpzLWRyYXdlci1vcGVuLS1zZWFyY2ggJiB7XG4gICAgei1pbmRleDogJHotaW5kZXgtaGVhZGVyLXNlYXJjaDtcbiAgfVxufVxuIiwiLnNpdGUtaGVhZGVyX19zZWFyY2gtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAyMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6ICR6LWluZGV4LWhlYWRlci1zZWFyY2g7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGJvdHRvbTogMDtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXJfX3NlYXJjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAkei1pbmRleC1oZWFkZXItc2VhcmNoO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMTAlLCAwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3gtc2hhZG93OiAwIDE1cHggNDVweCByZ2IoMCwgMCwgMCwgMC4xKTtcblxuICAmIC5wYWdlLXdpZHRoIHtcbiAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5pcy1hY3RpdmUgJiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXJfX3NlYXJjaC1pbnB1dCB7XG4gIGJvcmRlcjogMDtcbiAgd2lkdGg6IDEwMHB4OyAvKmZsZXhib3ggb3ZlcnJpZGVzLCBidXQgZml4ZXMgYnJvd3NlciBpc3N1ZXMqL1xuICBmbGV4OiAxIDEgYXV0bztcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6IDA7XG4gICAgb3V0bGluZTogMDsgLypvbmx5IGFjdGl2ZSBlbGVtZW50IG9uIHRoZSBwYWdlLCBzbyB0aGlzIGlzIGFjY2VwdGFibGUqL1xuICB9XG59XG5cbi8qU3VibWl0IGFuZCBjYW5jZWwgYnV0dG9ucyovXG4uc2l0ZS1oZWFkZXJfX3NlYXJjaC1idG4ge1xuICBwYWRkaW5nOiAwIGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5zaXRlLWhlYWRlcl9fc2VhcmNoLWJ0bi0tc3VibWl0IHtcbiAgICBwYWRkaW5nOiAwIGNhbGMoJGd1dHRlciAvIDIpIDAgMDtcblxuICAgICYgLmljb24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgfVxuICB9XG59XG4iLCIucHJlZGljdGl2ZS1yZXN1bHRzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIG1heC1oZWlnaHQ6IDcwdmg7XG4gIG1heC1oZWlnaHQ6IGNhbGMoOTB2aCAtIDEwMCUpO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA5KTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDEwMCUgLSAzM3B4KTsgLypzZWFyY2ggYmFyICsgdG9vbGJhciovXG4gIH1cbn1cblxuLnByZWRpY3RpdmVfX2xhYmVsIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qTGF5b3V0IGZvciBhcnRpY2xlL2ltYWdlcyovXG4kcHJlZGljdGl2ZUdhcDogMTBweDtcbi5wcmVkaWN0aXZlLXJlc3VsdF9fbGF5b3V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBwYWRkaW5nOiAkcHJlZGljdGl2ZUdhcDtcbiAgbWFyZ2luLWxlZnQ6IC0kcHJlZGljdGl2ZUdhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtJHByZWRpY3RpdmVHYXA7XG5cbiAgJiA+IGRpdiB7XG4gICAgbWFyZ2luOiAwICRwcmVkaWN0aXZlR2FwICRndXR0ZXI7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIFtkYXRhLXR5cGUtcHJvZHVjdHNdIHtcbiAgICBmbGV4OiAxIDEgNjAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyLXNtYWxsO1xuXG4gICAgICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRncmlkLWd1dHRlci1zbWFsbDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJiBbZGF0YS10eXBlLWNvbGxlY3Rpb25zXSxcbiAgJiBbZGF0YS10eXBlLXBhZ2VzXSB7XG4gICAgZmxleDogMSAxIDIwMHB4O1xuICB9XG5cbiAgJiBbZGF0YS10eXBlLWFydGljbGVzXSB7XG4gICAgZmxleDogMSAxIDYwJTtcblxuICAgICYgLmdyaWQtcHJvZHVjdF9fbGluay0taW5saW5lIHtcbiAgICAgIGdhcDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnByZWRpY3RpdmVfX2ltYWdlLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcblxuICAmIGltZyB7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiA1MCUgMDtcbiAgfVxufVxuXG4ucHJlZGljdGl2ZS1yZXN1bHRzX19mb290ZXIge1xuICBwYWRkaW5nOiAwIDAgMzBweDtcbn1cbiIsIi5zZWFyY2gtYmFyIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uc2VhcmNoLWJhci0tcGFnZSB7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIG1hcmdpbi10b3A6IGNhbGMoLSRndXR0ZXIgLyAyKTtcblxuICBAbmVzdCBbZGF0YS10eXBlX2hlYWRlcnNfYWxpZ25fdGV4dD1cInRydWVcIl0gJiB7XG4gICAgbWFyZ2luOiBjYWxjKC0kZ3V0dGVyIC8gMikgYXV0byAwO1xuICB9XG59XG5cbi5zZWFyY2gtYmFyLS1kcmF3ZXIge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcblxuICAmIGlucHV0IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLnNlYXJjaC1iYXIgLmljb24ge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuIiwiLnRvb2xiYXIge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JOYXY7XG4gIGNvbG9yOiAkY29sb3JOYXZUZXh0O1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuXG4gICYgYSB7XG4gICAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG4gIH1cblxuICAvKkRvIG5vdCBzaG93IGluIHN0aWNreSBoZWFkZXIqL1xuICBAbmVzdCAuc2l0ZS1oZWFkZXItLXN0dWNrICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvb2xiYXItLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkY29sb3JTdGlja3lOYXZMaW5rcztcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAmIGEge1xuICAgIGNvbG9yOiAkY29sb3JTdGlja3lOYXZMaW5rcztcbiAgfVxuXG4gICYgLnRvb2xiYXJfX2NvbnRlbnQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gIH1cbn1cblxuLnRvb2xiYXJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udG9vbGJhcl9faXRlbSB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAwIDVweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAmIHNlbGVjdCxcbiAgJiAuZmF1eC1zZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuLnRvb2xiYXJfX2l0ZW0tLW1lbnUge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLnRvb2xiYXJfX21lbnUge1xuICBtYXJnaW4tbGVmdDogY2FsYygtJGd1dHRlciAvIDMpOyAvKmVxdWl2YWxlbnQgb2YgYSBwYWRkaW5nKi9cblxuICAmIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCBjYWxjKCRndXR0ZXIgLyAzKTtcbiAgfVxufVxuXG4udG9vbGJhcl9fc29jaWFsIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgfVxufVxuIiwiLnNlY3Rpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNlY3Rpb25IZWFkZXJCb3R0b21TbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNlY3Rpb25IZWFkZXJCb3R0b207XG4gIH1cblxuICBAbmVzdCBbZGF0YS10eXBlX2hlYWRlcnNfYWxpZ25fdGV4dD1cInRydWVcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJiBzZWxlY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlci0tZmx1c2gge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2VjdGlvbi1oZWFkZXItLXdpdGgtbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJiBzZWxlY3Qge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlci0taGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIDEwMCU7XG4gIGNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAmIGEge1xuICAgIGNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgfVxufVxuXG4uc2VjdGlvbi1oZWFkZXJfX3NoYWRvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6YmVmb3JlIHtcbiAgICBAbWl4aW4gb3ZlcmxheTtcbiAgICBAbWl4aW4gaGVyb1JhZGlhbDtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuXG4gICYgLmJyZWFkY3J1bWIsXG4gICYgLnNlY3Rpb24taGVhZGVyX190aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlcl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIEBuZXN0IC5zZWN0aW9uLWhlYWRlci0td2l0aC1saW5rICYge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIEBuZXN0IC5zZWN0aW9uLWhlYWRlci0taGVybyAmIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlSGVhZGVyU2l6ZSkgKiAxLjQ1KTtcbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24taGVhZGVyX19saW5rIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gIEBuZXN0IC5zZWN0aW9uLWhlYWRlci0td2l0aC1saW5rICYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLnNlY3Rpb24taGVhZGVyLS00MDQge1xuICBwYWRkaW5nLXRvcDogODBweDtcbn1cblxuLnNlY3Rpb24taGVhZGVyIHNlbGVjdCB7XG4gIG1hcmdpbjogMTBweCAwO1xufVxuXG4uc2VjdGlvbi1oZWFkZXIgcCB7XG4gIG1hcmdpbjogMTBweCAwO1xufVxuIiwiLnNpdGUtbmF2IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgQG5lc3QgLmhlYWRlci1sYXlvdXQtLWxlZnQgJiB7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCRndXR0ZXIgLyAzKTtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2ljb25zIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnNpdGUtbmF2X19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICAmIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLmljb24tY2hldnJvbi1kb3duIHtcbiAgICB3aWR0aDogJGRlc2t0b3BNZW51Q2hldnJvblNpemU7XG4gICAgaGVpZ2h0OiAkZGVza3RvcE1lbnVDaGV2cm9uU2l6ZTtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogY2FsYygkc2l0ZU5hdkl0ZW1QYWRkaW5nIC8gMikgJHNpdGVOYXZJdGVtUGFkZGluZztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG5cbiAgQG5lc3QgLnNpdGUtaGVhZGVyLS1oZWFkaW5nLXN0eWxlICYge1xuICAgIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG4gIH1cblxuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLnNpdGUtbmF2LS1oYXMtZHJvcGRvd24gPiAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMSk7XG4gIH1cblxuICAmIC5pY29uLWNoZXZyb24tZG93biB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgIHBhZGRpbmc6IGNhbGMoJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuXG4gICAgQG5lc3QgLmhlYWRlci1sYXlvdXQtLWNlbnRlciAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2xpbmstLXVuZGVybGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwICRzaXRlTmF2SXRlbVBhZGRpbmc7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvck5hdlRleHQ7XG4gICAgdHJhbnNpdGlvbjogcmlnaHQgMC41cztcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8qV2hpdGUgdW5kZXJsaW5lIHdoZW4gbm8gZHJvcGRvd24qL1xuICBAbmVzdCAuaXMtbGlnaHQgLnNpdGUtbmF2X19pdGVtOm5vdCguc2l0ZS1uYXYtLWhhcy1kcm9wZG93bikgJjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC8qRHJvcGRvd24gdGV4dCBjb2xvciB1bmRlcmxpbmUgd2hlbiBpbiBkcm9wZG93biBsaW5rKi9cbiAgQG5lc3QgLnNpdGUtbmF2LS1oYXMtZHJvcGRvd24gJjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cblxuICBAbmVzdCAuc2l0ZS1uYXZfX2l0ZW06aG92ZXIgJjphZnRlciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuLnNpdGUtbmF2X19kZXRhaWxzIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vKktlZXAgYWN0aXZlIHN0YXRlIG9uIHBhcmVudCBkcm9wZG93biBsaW5rKi9cbi5zaXRlLW5hdi0taGFzLWRyb3Bkb3duIHtcbiAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMSk7XG5cbiAgJi5pcy1mb2N1c2VkLFxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiBjYWxjKCR6aW5kZXhOYXZEcm9wZG93bnMgKyAyKTtcbiAgfVxufVxuXG4uc2l0ZS1uYXYtLWhhcy1kcm9wZG93bi5pcy1mb2N1c2VkID4gYSxcbi5zaXRlLW5hdi0taGFzLWRyb3Bkb3duOmhvdmVyID4gYSB7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4uc2l0ZS1uYXZfX2xpbmstLWljb24ge1xuICBwYWRkaW5nLWxlZnQ6ICRzaXRlTmF2SWNvblBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRzaXRlTmF2SWNvblBhZGRpbmc7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCRzaXRlTmF2SXRlbVBhZGRpbmcgLyAyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCRzaXRlTmF2SXRlbVBhZGRpbmcgLyAyKTtcblxuICAgICYgKyAuc2l0ZS1uYXZfX2xpbmstLWljb24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7IC8qfmFtb3VudCBvZiBpbmxpbmUtYmxvY2sgc3BhY2UqL1xuICAgIH1cbiAgfVxuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiAkZGVza3RvcE1lbnVJY29uU2l6ZTtcbiAgICBoZWlnaHQ6ICRkZXNrdG9wTWVudUljb25TaXplO1xuICB9XG59XG5cbi5zaXRlLW5hdl9fZHJvcGRvd24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogJHppbmRleE5hdkRyb3Bkb3ducztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAzKSAwIDVweDtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjA5KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTJweCwgMCk7XG5cbiAgQG5lc3QgZGV0YWlsc1tvcGVuXSA+ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMiwgMC4wNiwgMC4wNSwgMC45NSk7XG4gIH1cblxuICAmIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAmID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICYgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IGNhbGMoJHppbmRleE5hdkRyb3Bkb3ducyArIDEpO1xuICAgIH1cbiAgfVxuXG4gICYgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2RlZXAtZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBib3gtc2hhZG93OiAwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXhOYXZEcm9wZG93bnM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEycHgsIDAsIDApO1xuXG4gIEBuZXN0IC5zaXRlLW5hdl9fZGVlcC1kcm9wZG93bi10cmlnZ2VyOmhvdmVyICYsXG4gIC5pcy1mb2N1c2VkICsgJiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGN1YmljLWJlemllcigwLjIsIDAuMDYsIDAuMDUsIDAuOTUpO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuMDkpLCB0cmFuc3BhcmVudCk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLnNpdGUtbmF2X19kcm9wZG93bi1saW5rLS1oYXMtY2hpbGRyZW4ge1xuICBAbmVzdCAuc2l0ZS1uYXZfX2RlZXAtZHJvcGRvd24tdHJpZ2dlcjpob3ZlciAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5RGltO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keURpbTtcbiAgfVxufVxuXG4vKlJvdGF0ZSB0byBmYWNlIHJpZ2h0Ki9cbi5zaXRlLW5hdl9fZGVlcC1kcm9wZG93bi10cmlnZ2VyIC5pY29uLWNoZXZyb24tZG93biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxMHB4O1xuICB3aWR0aDogJGRlc2t0b3BNZW51Q2hldnJvblNpemU7XG4gIGhlaWdodDogJGRlc2t0b3BNZW51Q2hldnJvblNpemU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlWCg1MCUpO1xufVxuXG4ubW9iaWxlLW5hdiB7XG4gIG1hcmdpbjogY2FsYyh2YXIoLS1kcmF3ZXItZ3V0dGVyKSAqIC0xKSBjYWxjKHZhcigtLWRyYXdlci1ndXR0ZXIpICogLTEpIDA7XG5cbiAgJiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19zZWFyY2gge1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuLm1vYmlsZS1uYXZfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8qQmFja2dyb3VuZCBjb2xvciBvbiB0b3AgbGV2ZWwgaXRlbXMgc28gdGhlcmUgaXMgbm9cbiAgZWxlbWVudCBvdmVybGFwIG9uIHN1Ym5hdidzIENTUyB0b2dnbGUgYW5pbWF0aW9uKi9cbiAgQG5lc3QgLm1vYmlsZS1uYXYgPiAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JEcmF3ZXJzO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbiAgICByaWdodDogdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgfVxufVxuXG4vKkxvZ2luL2xvZ291dCBsaW5rcyBjYW4ndCBoYXZlIGEgY2xhc3Mgb24gdGhlbSwgc28gc3R5bGUgPGE+IGVsZW1lbnQqL1xuLm1vYmlsZS1uYXZfX2xpbmssXG4ubW9iaWxlLW5hdl9fZmF1eC1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tb2JpbGUtbmF2X19saW5rLS10b3AtbGV2ZWwge1xuICBmb250LXNpemU6IDEuNGVtO1xuXG4gIEBuZXN0IC5tb2JpbGUtbmF2LS1oZWFkaW5nLXN0eWxlICYge1xuICAgIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19saW5rLFxuLm1vYmlsZS1uYXZfX2ZhdXgtbGluayxcbi5tb2JpbGUtbmF2X190b2dnbGUgYnV0dG9uLFxuLm1vYmlsZS1uYXZfX3RvZ2dsZSAuZmF1eC1idXR0b24ge1xuICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMikgdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRjb2xvckRyYXdlclRleHREYXJrO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckRyYXdlcnNEaW07XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX2NoaWxkLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICYgYSxcbiAgJiAubW9iaWxlLW5hdl9fbGluayB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyOm5vdCgubW9iaWxlLW5hdl9fbGluay0tYnV0dG9uKSB7XG4gICAgZmxleDogMCAwIGNhbGMoJGNvbGxhcHNpYmxlLXRyaWdnZXItY2lyY2xlLXdpZHRoICsgY2FsYygkZ3V0dGVyIC8gMikpO1xuICB9XG5cbiAgJiAuY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19pdGVtLS1zZWNvbmRhcnkge1xuICAmIGEge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyAvKm5vIHRyYWlsaW5nIGJvcmRlciovXG4gIH1cbn1cblxuLypTcGFjaW5nIGFib3ZlIHNlY29uZGFyeSBsaW5rcyovXG4ubW9iaWxlLW5hdl9faXRlbTpub3QoLm1vYmlsZS1uYXZfX2l0ZW0tLXNlY29uZGFyeSkgKyAubW9iaWxlLW5hdl9faXRlbS0tc2Vjb25kYXJ5IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLm1vYmlsZS1uYXZfX2hhcy1zdWJsaXN0LFxuLm1vYmlsZS1uYXZfX2xpbmstLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJiA+ICoge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IC8qQnJlYWtzIGxvbmcgcHJvYmxlbWF0aWMgd29yZHMqL1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19saW5rLS1idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1vYmlsZS1uYXZfX3RvZ2dsZSB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgfVxuXG4gICYgYnV0dG9uLFxuICAmIC5mYXV4LWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiA2MCU7XG4gICAgcGFkZGluZzogMCAzMHB4O1xuICAgIG1hcmdpbjogMjAlIDA7XG4gIH1cblxuICAmIGJ1dHRvbiB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19zdWJsaXN0IHtcbiAgbWFyZ2luOiAwO1xuXG4gICYgLm1vYmlsZS1uYXZfX2l0ZW06YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IGF1dG87XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuXG4gICYgLm1vYmlsZS1uYXZfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgJiAubW9iaWxlLW5hdl9fbGluayxcbiAgJiAubW9iaWxlLW5hdl9fZmF1eC1saW5rIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDQpIDI1cHggY2FsYygkZ3V0dGVyIC8gNCkgdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX2dyYW5kY2hpbGRsaXN0IHtcbiAgbWFyZ2luOiAwO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgIGxlZnQ6IDE3cHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIGJvdHRvbTogMTBweDtcbiAgfVxuXG4gICYgLm1vYmlsZS1uYXZfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICAmIC5tb2JpbGUtbmF2X19saW5rIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX3NvY2lhbCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHN0cmV0Y2g7XG4gIG1hcmdpbjogMTVweCAwIDIwcHggMDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tZHJhd2VyLWd1dHRlcikgKiAtMSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWRyYXdlci1ndXR0ZXIpICogLTEpO1xuICB9XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxMnB4IDMwcHg7XG5cbiAgICAmIC5pY29uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTFweDtcbiAgICB9XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX3NvY2lhbC1pdGVtIHtcbiAgZmxleDogMCAxIDMzLjMzJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JEcmF3ZXJCb3JkZXI7XG4gIG1hcmdpbjogMCAwIC0xcHg7XG5cbiAgJjpudGgtY2hpbGQoM24tMSkge1xuICAgIG1hcmdpbi1yaWdodDogLTFweDtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5zaXRlLW5hdl9fbGluay0taWNvbiAuaWNvbiB7XG4gICAgd2lkdGg6IDI4cHg7XG4gICAgaGVpZ2h0OiAyOHB4O1xuXG4gICAgJi5pY29uLXVzZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAxcHg7XG4gICAgfVxuICB9XG59XG5cbi5jYXJ0LWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2FydC1saW5rX19idWJibGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uY2FydC1saW5rX19idWJibGUtLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxNXB4O1xuICBoZWlnaHQ6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckNhcnREb3Q7XG4gIGJvcmRlcjogMnB4IHNvbGlkICRjb2xvckJvZHk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAvKlNsaWdodCBwb3NpdGlvbiBjaGFuZ2Ugd2l0aCBjYXJ0IGljb24qL1xuICBAbmVzdCBbZGF0YS1pY29uPVwiY2FydFwiXSAmIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC00cHg7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1pY29uPVwiYmFnLW1pbmltYWxcIl0gJiB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJyZWFkY3J1bWIge1xuICBAbWl4aW4gaGVhZGluZ1RleHRDZW50ZXI7XG4gIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIG1hcmdpbjogLTI1cHggMCAxMHB4O1xuXG4gIEBuZXN0IC50ZW1wbGF0ZS1wcm9kdWN0ICYge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbi5icmVhZGNydW1iX19kaXZpZGVyIHtcbiAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cbiIsIi5tZWdhbWVudSB7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAqIDEuMykgMDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMiwgMC4wNiwgMC4wNSwgMC45NSk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG5cbiAgQG5lc3QgZGV0YWlsc1tvcGVuXSA+ICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG5cbiAgICAmIC5hcHBlYXItYW5pbWF0aW9uIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLW5hdi0taXMtbWVnYW1lbnUuc2l0ZS1uYXZfX2l0ZW0ge1xuICBwb3NpdGlvbjogc3RhdGljO1xufVxuXG4ubWVnYW1lbnVfX2NvbGxlY3Rpb24taW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDEuNSk7XG59XG5cbi8qQ2VudGVyIGdyaWQgaXRlbXMgaW4gbWVnYW1lbnUgd2hlbiBsb2dvIGNlbnRlcmVkKi9cbi50ZXh0LWNlbnRlciAubWVnYW1lbnUgLmdyaWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgJiAuZ3JpZF9faXRlbSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4ubWVnYW1lbnUgLnNpdGUtbmF2X19kcm9wZG93bi1saW5rOm5vdCguc2l0ZS1uYXZfX2Ryb3Bkb3duLWxpbmstLXRvcC1sZXZlbCkge1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMXB4KTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4ubWVnYW1lbnUgaDUsXG4ubWVnYW1lbnUgLmg1IHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbiIsIi5tb2RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAkemluZGV4TW9kYWw7XG4gIGNvbG9yOiAkY29sb3JNb2RhbFRleHQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICYubW9kYWwtLXF1aWNrLXNob3Age1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgJiBhLFxuICAmIGE6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgJiAuYnRuOm5vdChbZGlzYWJsZWRdKTpub3QoLmJ0bi0tc2Vjb25kYXJ5KTpub3QoLmJ0bi0tYm9keSksXG4gICYgLmJ0bjpub3QoW2Rpc2FibGVkXSk6bm90KC5idG4tLXNlY29uZGFyeSk6bm90KC5idG4tLWJvZHkpOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIH1cblxuICBAbmVzdCAubW9kYWwtb3BlbiAmIHtcbiAgICAmIC5tb2RhbF9faW5uZXIge1xuICAgICAgYW5pbWF0aW9uOiBtb2RhbC1vcGVuIDAuNXMgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JNb2RhbEJnO1xuICAgICAgYW5pbWF0aW9uOiBvdmVybGF5LW9uIDAuNXMgZm9yd2FyZHM7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLm1vZGFsLWNsb3NpbmcgJiB7XG4gICAgJiAubW9kYWxfX2lubmVyIHtcbiAgICAgIGFuaW1hdGlvbjogbW9kYWwtY2xvc2luZyAwLjVzIGZvcndhcmRzO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTW9kYWxCZztcbiAgICAgIGFuaW1hdGlvbjogb3ZlcmxheS1vZmYgMC41cyBmb3J3YXJkcztcbiAgICB9XG4gIH1cblxuICBAbmVzdCAubW9kYWwtb3Blbi0tc29saWQgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvck1vZGFsQmc7XG4gIH1cbn1cblxuLm1vZGFsLS1zb2xpZCB7XG4gIEBuZXN0IC5tb2RhbC1vcGVuICYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBhbmltYXRpb246IGZ1bGwtb3ZlcmxheS1vbiAwLjVzIGZvcndhcmRzO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5tb2RhbC1jbG9zaW5nICYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBhbmltYXRpb246IGZ1bGwtb3ZlcmxheS1vZmYgMC41cyBmb3J3YXJkcztcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsLS1pcy1jbG9zaW5nIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvKm92ZXJyaWRlIC5pcy10cmFuc2l0aW9uaW5nIHN0eWxlcyovXG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tb2RhbC0taXMtYWN0aXZlIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvKm92ZXJyaWRlIC5pcy10cmFuc2l0aW9uaW5nIHN0eWxlcyovXG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qQ2xhc3Mgb24gYm9keSBlbGVtZW50IHdoZW4gbW9kYWwgb3Blbi5cbk9ubHkgbWVkaXVtLXVwIGJlY2F1c2UgaU9TIGp1bXBzIHRvIHRvcCBvdGhlcndpc2UqL1xuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAubW9kYWwtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubW9kYWxfX2lubmVyIHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMik7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gY2FsYygkZ3V0dGVyIC8gMikpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDQwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxuXG4gIEBuZXN0IC5tb2RhbC0tc3F1YXJlICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIGJveC1zaGFkb3c6IDAgMTVweCA0NXB4IHJnYigwLCAwLCAwLCAwLjEpO1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gIH1cbn1cblxuLypObyBtYXggaGVpZ2h0IG9uIHByb2R1Y3QgaW1hZ2VzKi9cbi5tb2RhbF9faW5uZXIge1xuICAmIC5pbWFnZS13cmFwIGltZyB7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgfVxufVxuXG4ubW9kYWxfX2NlbnRlcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDEgYXV0bztcbiAgbWluLXdpZHRoOiAxcHg7IC8qaWUxMCB0aGluZyovXG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm1vZGFsX19jZW50ZXJlZC1jb250ZW50IHtcbiAgQG5lc3QgLm1vZGFsLS1zcXVhcmUgJiB7XG4gICAgbWF4LWhlaWdodDogODB2aDtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAuNzUpO1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMS41KTtcbiAgICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsX19jbG9zZSB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY29sb3I6ICRjb2xvck1vZGFsVGV4dDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogJGd1dHRlcjtcbiAgfVxuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3JNb2RhbFRleHQ7XG4gIH1cblxuICBAbmVzdCAubW9kYWwtLXNxdWFyZSAmIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDMpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICB9XG4gIH1cbn1cblxuLypBamF4IHBhZ2UgYWRqdXN0bWVudHMqL1xuLm1vZGFsIHtcbiAgJiAucGFnZS1jb250ZW50LFxuICAmIC5wYWdlLXdpZHRoIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qR29vZ2xlLWZyaWVuZGx5IG5vbiBpbnRydXNpdmUgbW9iaWxlIG1vZGFsKi9cbi5wb3B1cC1jdGEge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5tb2RhbC0tbW9iaWxlLWZyaWVuZGx5IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgJi5tb2RhbC0tc3F1YXJlIC5tb2RhbF9fY2VudGVyZWQtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgfVxuXG4gICAgJi5tb2RhbC0taXMtYWN0aXZlIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cblxuICAgIEBuZXN0IC5tb2RhbC1vcGVuICYge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLm1vZGFsX19pbm5lciB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJiAuaDEge1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICB9XG5cbiAgICAmIGlucHV0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYgLnRleHQtY2xvc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qcy1xdHlfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiA4MHB4O1xuICBtaW4td2lkdGg6IDYwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG5cbiAgJi5pcy1sb2FkaW5nIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLmpzLXF0eV9fbnVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCAyMHB4O1xuICBtYXJnaW46IDA7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5qcy1xdHlfX2FkanVzdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGJvcmRlcjogMCBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLW91dDtcbiAgei1pbmRleDogMjtcbiAgZmlsbDogJGNvbG9yVGV4dEJvZHk7XG5cbiAgJiAuaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgZmlsbDogaW5oZXJpdDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHlEaW07XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgQG5lc3QgLmpzLXF0eV9fbnVtOmFjdGl2ZSB+ICYsXG4gIC5qcy1xdHlfX251bTpmb2N1cyB+ICYge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLmpzLXF0eV9fYWRqdXN0LS1wbHVzIHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5qcy1xdHlfX2FkanVzdC0tbWludXMge1xuICBsZWZ0OiAwO1xufVxuXG4uZHJhd2VyIHtcbiAgJiAuanMtcXR5X193cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgfVxuXG4gICYgLmpzLXF0eV9fbnVtIHtcbiAgICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAycHg7XG4gIH1cblxuICAmIC5qcy1xdHlfX2FkanVzdCB7XG4gICAgY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG4gICAgZmlsbDogJGNvbG9yRHJhd2VyVGV4dDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgICAgIGNvbG9yOiAkY29sb3JEcmF3ZXJzO1xuICAgICAgZmlsbDogJGNvbG9yRHJhd2VycztcbiAgICB9XG4gIH1cbn1cbiIsIi5jdXJyZW5jeS1mbGFnIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjU1KTtcbiAgbWFyZ2luOiAtMC41NXJlbTtcbn1cblxuLypcbiAgQ2VudGVyIHBvcHVwIG9uIG1vYmlsZSBzbyBsb25nIGNvdW50cnkvY3VycmVuY3kgbmFtZXNcbiAgZG8gbm90IGNhdXNlIGhvcml6b250YWwgc2Nyb2xsXG4gKi9cbkBtZWRpYSAoLS1zbWFsbCkge1xuICBbZGF0YS1kaXNjbG9zdXJlLWN1cnJlbmN5XSAuZGlzY2xvc3VyZS1saXN0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIG1heC13aWR0aDogOTV2dztcbiAgfVxufVxuIiwiLypjb2xsYXBzaWJsZXMtd3JhcHBlciBpcyBhbiBvcHRpb25hbCB3cmFwcGVyKi9cbi5jb2xsYXBzaWJsZXMtd3JhcHBlci0tYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yQm9yZGVyO1xufVxuXG4uY29sbGFwc2libGVzLXdyYXBwZXItLWJvcmRlci1ib3R0b20gKyAuY29sbGFwc2libGVzLXdyYXBwZXItLWJvcmRlci1ib3R0b20gLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuLS1ib3JkZXJzIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLnByb2R1Y3QtYmxvY2stLXRhYiArIC5wcm9kdWN0LWJsb2NrLS10YWIgLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuLS1ib3JkZXJzIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGgtc21hbGw7XG4gIGhlaWdodDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aC1zbWFsbDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICB3aWR0aDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGg7XG4gIH1cblxuICBAbmVzdCAubW9iaWxlLW5hdl9faGFzLXN1Ymxpc3QgJiB7XG4gICAgcmlnaHQ6IDI1cHg7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aC1zbWFsbDtcbiAgICBoZWlnaHQ6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGgtc21hbGw7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbjtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHdpZHRoOiAkY29sbGFwc2libGUtdHJpZ2dlci1pY29uLXdpZHRoO1xuICAgICAgaGVpZ2h0OiAkY29sbGFwc2libGUtdHJpZ2dlci1pY29uLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlci0taW5saW5lIHtcbiAgcGFkZGluZzogMTFweCAwIDExcHggNDBweDtcblxuICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uLS1jaXJjbGUge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHdpZHRoOiAkY29sbGFwc2libGUtdHJpZ2dlci1jaXJjbGUtd2lkdGg7XG4gIGhlaWdodDogJGNvbGxhcHNpYmxlLXRyaWdnZXItY2lyY2xlLXdpZHRoO1xuICBib3JkZXItcmFkaXVzOiAkY29sbGFwc2libGUtdHJpZ2dlci1jaXJjbGUtd2lkdGg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmIC5pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS10cmlnZ2VyLmlzLW9wZW4gLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24gPiAuaWNvbi1jaGV2cm9uLWRvd24ge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG59XG5cbi8qU2xpZ2h0bHkgZGlmZmVyZW50IGZvciBjaXJjbGUgYnV0dG9ucyovXG4uY29sbGFwc2libGUtdHJpZ2dlci5pcy1vcGVuIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uLS1jaXJjbGUgPiAuaWNvbi1jaGV2cm9uLWRvd24ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZVkoLTEpO1xufVxuXG4uY29sbGFwc2libGUtY29udGVudCB7XG4gIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1jbG9zZS10cmFuc2l0aW9uO1xuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1vcGVuLXRyYW5zaXRpb247XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLWNvbnRlbnQtLWFsbCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgJiAuY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmNvbGxhcHNpYmxlLWNvbnRlbnQtLXNtYWxsIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBoZWlnaHQ6IDA7XG5cbiAgICAmIC5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG4gICAgfVxuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lciB7XG4gIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1jb250ZW50LWNsb3NlLXRyYW5zaXRpb247XG5cbiAgQG5lc3QgLmlzLW9wZW4gJiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1jb250ZW50LW9wZW4tdHJhbnNpdGlvbjtcbiAgfVxufVxuXG4ucnRlLmNvbGxhcHNpYmxlLWNvbnRlbnRfX2lubmVyLS1mYXEge1xuICBwYWRkaW5nLWJvdHRvbTogJGd1dHRlcjtcbn1cblxuLmNvbGxhcHNpYmxlLWxhYmVsX19jbG9zZWQge1xuICBAbmVzdCAuY29sbGFwc2libGUtdHJpZ2dlclthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1sYWJlbF9fb3BlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLmNvbGxhcHNpYmxlLXRyaWdnZXJbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gJiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8qQ3VzdG9tIGZ1bmN0aW9uYWxpdHkgZm9yIGNvbGxlY3Rpb24gc2lkZWJhciovXG4uY29sbGFwc2libGUtY29udGVudC0tc2lkZWJhciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICYuaXMtb3BlbiB7XG4gICAgICBvdmVyZmxvdzogaW5pdGlhbDtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLnBzd3Age1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICB6LWluZGV4OiAxNTAwO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ucHN3cCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi8qIHN0eWxlIGlzIGFkZGVkIHdoZW4gSlMgb3B0aW9uIHNob3dIaWRlT3BhY2l0eSBpcyBzZXQgdG8gdHJ1ZSAqL1xuLnBzd3AtLWFuaW1hdGVfb3BhY2l0eSB7XG4gIC8qIDAuMDAxLCBiZWNhdXNlIG9wYWNpdHk6MCBkb2Vzbid0IHRyaWdnZXIgUGFpbnQgYWN0aW9uLCB3aGljaCBjYXVzZXMgbGFnIGF0IHN0YXJ0IG9mIHRyYW5zaXRpb24gKi9cbiAgb3BhY2l0eTogMC4wMDE7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwLS1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9faW1nIHtcbiAgY3Vyc29yOiB6b29tLWluOyB9XG5cbi5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2ltZyB7XG4gIGN1cnNvcjogZ3JhYjsgfVxuXG4ucHN3cC0tZHJhZ2dpbmcgLnBzd3BfX2ltZyB7XG4gIGN1cnNvcjogZ3JhYmJpbmc7IH1cblxuLypcbiAgQmFja2dyb3VuZCBpcyBhZGRlZCBhcyBhIHNlcGFyYXRlIGVsZW1lbnQuXG4gIEFzIGFuaW1hdGluZyBvcGFjaXR5IGlzIG11Y2ggZmFzdGVyIHRoYW4gYW5pbWF0aW5nIHJnYmEoKSBiYWNrZ3JvdW5kLWNvbG9yLlxuKi9cbi5wc3dwX19iZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTsgfVxuXG4ucHN3cF9fc2Nyb2xsLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX3pvb20td3JhcCB7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7IH1cblxuLyogUHJldmVudCBzZWxlY3Rpb24gYW5kIHRhcCBoaWdobGlnaHRzICovXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX2ltZyB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cblxuLnBzd3BfX3pvb20td3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTsgfVxuXG4ucHN3cF9fYmcge1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fYmcsXG4ucHN3cC0tYW5pbWF0ZWQtaW4gLnBzd3BfX3pvb20td3JhcCB7XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX196b29tLXdyYXAge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ucHN3cF9faXRlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wc3dwX19pbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4vKlxuICBzdHJldGNoZWQgdGh1bWJuYWlsIG9yIGRpdiBwbGFjZWhvbGRlciBlbGVtZW50IChzZWUgYmVsb3cpXG4gIHN0eWxlIGlzIGFkZGVkIHRvIGF2b2lkIGZsaWNrZXJpbmcgaW4gd2Via2l0L2JsaW5rIHdoZW4gbGF5ZXJzIG92ZXJsYXBcbiovXG4ucHN3cF9faW1nLS1wbGFjZWhvbGRlciB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5wc3dwLS1pZSAucHN3cF9faW1nIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4vKlxuICBFcnJvciBtZXNzYWdlIGFwcGVhcnMgd2hlbiBpbWFnZSBpcyBub3QgbG9hZGVkXG4gIChKUyBvcHRpb24gZXJyb3JNc2cgY29udHJvbHMgbWFya3VwKVxuKi9cbi5wc3dwX19lcnJvci1tc2cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLXRvcDogLThweDtcbiAgY29sb3I6ICNDQ0M7IH1cblxuLnBzd3BfX2Vycm9yLW1zZyBhIHtcbiAgY29sb3I6ICNDQ0M7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5wc3dwX19idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLypCZWNhdXNlIEpTIGxpc3RlbnMgdG8gY2xpY2sgb24gYnV0dG9uIGVsZW1lbnQgaXRzZWxmKi9cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gIC8qSWdub3JlIGNsaWNrcyBvbiBzdmdzIGluc2lkZSBidXR0b24qL1xuICAmIHN2ZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQgLmljb24sXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQgLmljb24ge1xuICB3aWR0aDogMTNweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBtYXJnaW46IDhweDtcbn1cblxuLnBzd3BfX2J1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnBzd3BfX3VpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm90dG9tOiAkZ3V0dGVyO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgMC42cztcblxuICAmIC5idG4ge1xuICAgIG1hcmdpbjogMTVweDtcbiAgfVxufVxuXG4ucHN3cF9fdWktLWhpZGRlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xufVxuXG4vKiBGaXhlcyBmb3IgaU9TMTUgKi9cbi8qIFNlZSBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9kaW1zZW1lbm92LzBiOGMyNTVjMGQ4N2YyOTg5ZThhYjg3NjA3MzUzNGVhICovXG5cbmh0bWwucHN3cC1vcGVuLWluLWlvcyxcbmh0bWwucHN3cC1vcGVuLWluLWlvcyBib2R5IHtcbiAgYmFja2dyb3VuZDogIzQ0NDtcbiAgaGVpZ2h0OiB2YXIoLS13aW5kb3ctaW5uZXItaGVpZ2h0KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogSGlkZSBwYWdlIGNvbnRlbnQgdmlhIENTUyB3aGVuIFBob3RvU3dpcGUgb3BlbnMgKi9cbi5wc3dwLW9wZW4taW4taW9zIGJvZHkgPiAqIHtcbiAgZGlzcGxheTogbm9uZTsgXG59XG4ucHN3cC1vcGVuLWluLWlvcyBib2R5IC5wc3dwLnBzd3AtLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jazsgXG59IFxuIiwiJG1heC1oZWlnaHQtZGlzY2xvc3VyZTogNjB2aDtcbiRtaW4taGVpZ2h0LWRpc2Nsb3N1cmU6IDkycHg7XG5cbi5kaXNjbG9zdXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZGlzY2xvc3VyZV9fdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmRpc2Nsb3N1cmUtbGlzdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm90dG9tOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4taGVpZ2h0OiAkbWluLWhlaWdodC1kaXNjbG9zdXJlO1xuICBtYXgtaGVpZ2h0OiAkbWF4LWhlaWdodC1kaXNjbG9zdXJlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMDkpO1xuXG4gICYgYSB7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgfVxufVxuXG4uZGlzY2xvc3VyZS1saXN0LS1kb3duIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDEwMCU7XG4gIHotaW5kZXg6ICR6LWluZGV4LWRpc2Nsb3N1cmUtaGVhZGVyO1xufVxuXG4uZGlzY2xvc3VyZS1saXN0LS1sZWZ0IHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5kaXNjbG9zdXJlLWxpc3QtLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRpc2Nsb3N1cmUtbGlzdF9faXRlbSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHBhZGRpbmc6IDVweCAxNXB4IDRweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmRpc2Nsb3N1cmUtbGlzdF9fb3B0aW9uIHtcbiAgJjpmb2N1cyxcbiAgJjpob3ZlciB7XG4gICAgJiAuZGlzY2xvc3VyZS1saXN0X19sYWJlbCB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuLmRpc2Nsb3N1cmUtbGlzdF9faXRlbS0tY3VycmVudCB7XG4gICYgLmRpc2Nsb3N1cmUtbGlzdF9fbGFiZWwge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5kaXNjbG9zdXJlLWxpc3RfX2xhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDAuMnJlbTtcblxuICBAbmVzdCBbZGF0YS1kaXNjbG9zdXJlLWN1cnJlbmN5XSAmIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHhcbiAgfVxuXG4gICYgc3BhbiB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgQG5lc3QgLmlzLWFjdGl2ZSAmIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIubXVsdGktc2VsZWN0b3JzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLm11bHRpLXNlbGVjdG9yc19faXRlbSB7XG4gIG1hcmdpbjogMCAyMHB4IDEwcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luOiAxMHB4IDIwcHg7XG4gIH1cblxuICBAbmVzdCAudG9vbGJhciAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vZ2xvYmFsL3ZhcmlhYmxlcy1yb290LmNzcy5saXF1aWQnO1xuXG4vKk1vZGVsIHZpZXdlciBjb250cm9scyovXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWkge1xuICAmIC5zaG9waWZ5LW1vZGVsLXZpZXdlci11aV9fY29udHJvbHMtYXJlYSB7XG4gICAgb3BhY2l0eTogMTsgLyphbHdheXMgc2hvdyBjb250cm9scyovXG4gICAgYmFja2dyb3VuZDogJGNvbG9yQm9keTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuXG4gICYgLnNob3BpZnktbW9kZWwtdmlld2VyLXVpX19idXR0b24ge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxuXG4gICYgLnNob3BpZnktbW9kZWwtdmlld2VyLXVpX19idXR0b24tLWNvbnRyb2wge1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICYuZm9jdXMtdmlzaWJsZTpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5QWxwaGEwMDUpO1xuICAgIH1cblxuICAgICY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgfVxuICB9XG5cbiAgJiAuc2hvcGlmeS1tb2RlbC12aWV3ZXItdWlfX2J1dHRvbi0tcG9zdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBjb2xvcjogJGNvbG9yQm9keTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb2R5QWxwaGEwNSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvckJvZHk7XG4gICAgfVxuICB9XG59XG5cbi8qVmlldyBpbiBzcGFjZSBidXR0b24qL1xuLnByb2R1Y3Qtc2luZ2xlX192aWV3LWluLXNwYWNlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keUFscGhhMDA4KTtcbiAgd2lkdGg6IDgwJTtcbiAgd2lkdGg6IGNhbGMoODAlIC0gNHB4KTsgLyo0cHggPSByaWdodCBtYXJnaW4gb24gcHJvZHVjdC1pbWFnZS1tYWluKi9cbiAgbWFyZ2luOiA0MHB4IDEwJSAxMHB4O1xuICBwYWRkaW5nOiA1cHggMTBweCAxMHB4O1xuXG4gICZbZGF0YS1zaG9waWZ5LXhyLWhpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByb2R1Y3Qtc2luZ2xlX192aWV3LWluLXNwYWNlLXRleHQge1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5cbi8qTW9kZWwgdmlld2VyIGNvbnRhaW5lciovXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWksXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWkgbW9kZWwtdmlld2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2hvcGlmeS1tb2RlbC12aWV3ZXItdWlfX2J1dHRvbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByb2R1Y3Qtc2luZ2xlX19jbG9zZS1tZWRpYSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMTBweDtcbiAgei1pbmRleDogMjtcbn1cbiIsIi5wcmljZS1yYW5nZV9fc2xpZGVyLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwIDhweCA4cHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogMCAxMHB4IDhweDtcbiAgfVxufVxuXG4ucHJpY2UtcmFuZ2VfX2lucHV0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByaWNlLXJhbmdlX19kaXNwbGF5LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgYXV0bztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICB3aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi5ub1VpLWhvcml6b250YWwgLm5vVWktaGFuZGxlIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yVGV4dEJvZHkpO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IDJweCByZ2IoMjU1IDI1NSAyNTUpO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHJpZ2h0OiAtNnB4O1xuICB0b3A6IC0zcHg7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIHJpZ2h0OiAtN3B4O1xuICAgIHRvcDogLTRweDtcbiAgfVxuXG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5cbi5ub1VpLXRhcmdldCB7XG4gIGJhY2tncm91bmQ6ICNmNGY0ZjQ7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm5vVWktY29ubmVjdCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yVGV4dEJvZHkpO1xufVxuXG4ubm9VaS1ob3Jpem9udGFsIHtcbiAgaGVpZ2h0OiA2cHg7XG59XG4iLCIuY291bnRkb3duX19jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY291bnRkb3duLWJhY2tncm91bmQtY29sb3IpO1xuICBjb2xvcjogdmFyKC0tY291bnRkb3duLXRleHQtY29sb3IpO1xufVxuXG4uY291bnRkb3duX19ibG9jay0tYnV0dG9uIHtcbiAgJiAuYnRuLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgICBjb2xvcjogdmFyKC0tYWNjZW50LWNvbG9yKTtcbiAgICAvKlxuICAgICAgSW1wdWxzZSBzZWNvbmRhcnkgYnRuIGlzIGNvbm5lY3RlZCB0b1xuICAgICAgdGhlIHRoZW1lIHNldHRpbmcgZm9yIGJvcmRlciBjb2xvclxuICAgICovXG4gIH1cbn1cbiIsIjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICBjb2xvcjogaW5oZXJpdDtcbiAgIG9wYWNpdHk6IDAuNTtcbn1cblxuOi1tb3otcGxhY2Vob2xkZXIge1xuICAgY29sb3I6IGluaGVyaXQ7XG4gICBvcGFjaXR5OiAwLjU7XG59XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgY29sb3I6IGluaGVyaXQ7XG4gICBvcGFjaXR5OiAwLjU7XG59XG5cbjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgIGNvbG9yOiBpbmhlcml0O1xuICAgb3BhY2l0eTogMTtcbn1cblxuaW5wdXQsXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGlzYWJsZWRHcmV5O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwiaW1hZ2VcIl0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiIsIiRzaGFyZUJ1dHRvbkhlaWdodDogMThweDtcblxuLnNvY2lhbC1zaGFyaW5nIHtcbiAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuXG4gICYgLmljb24ge1xuICAgIGhlaWdodDogJHNoYXJlQnV0dG9uSGVpZ2h0O1xuICAgIHdpZHRoOiAkc2hhcmVCdXR0b25IZWlnaHQ7XG4gIH1cbn1cblxuLnNvY2lhbC1zaGFyaW5nX19saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgbWFyZ2luOiAwIDE4cHggMCAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLnNvY2lhbC1zaGFyaW5nX190aXRsZSB7XG4gIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAzcHg7XG59XG4iLCIuZ3JpZC1zZWFyY2gge1xuICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xufVxuXG4uZ3JpZC1zZWFyY2hfX3Byb2R1Y3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmdyaWQtc2VhcmNoX19wYWdlLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5TGlnaHREaW0pO1xuICBwYWRkaW5nOiAyMHB4O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yQm9keU1lZGl1bURpbSk7XG4gIH1cbn1cblxuLmdyaWQtc2VhcmNoX19wYWdlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZ3JpZC1zZWFyY2hfX3BhZ2UtY29udGVudCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmdyaWQtc2VhcmNoX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG59XG4iLCIuaW5kZXgtc2VjdGlvbiB7XG4gIG1hcmdpbjogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsIDA7XG59XG5cbi5pbmRleC1zZWN0aW9uLS1zbWFsbCB7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyICogMC42KSAwO1xufVxuXG4uaW5kZXgtc2VjdGlvbiArIC5pbmRleC1zZWN0aW9uLFxuLmluZGV4LXNlY3Rpb24gKyAuaW5kZXgtc2VjdGlvbi0taGlkZGVuLFxuLm1haW4tY29udGVudCArIC5pbmRleC1zZWN0aW9uIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmluZGV4LXNlY3Rpb24tLWZsdXNoIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc2VjdGlvbi0tZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBwYWRkaW5nLXRvcDogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsO1xufVxuXG4uaW5kZXgtc2VjdGlvbi0tZmFxIHtcbiAgbWFyZ2luLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsO1xufVxuXG4uaW5kZXgtc2VjdGlvbi0tZmFxIHtcbiAgbWFyZ2luLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsO1xufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uIHtcbiAgcGFkZGluZzogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsIDA7XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb24tLXdpdGgtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yQm9yZGVyO1xufVxuXG4vKkhpZGUgZm9vdGVyIHNlY3Rpb25zIG9uIC9jaGFsbGVuZ2UgcGFnZSovXG4udGVtcGxhdGUtY2hhbGxhbmdlIC5pbmRleC1zZWN0aW9uLS1mb290ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGVzdGltb25pYWxzLXNlY3Rpb24ge1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAwLjg1KSAwO1xufVxuXG4udGVzdGltb25pYWxzLXNlY3Rpb24tLXdpdGgtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yQm9yZGVyO1xufVxuXG4vKkxhcmdlIHNjcmVlbiBzZWN0aW9uIHNwYWNpbmcqL1xuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuaW5kZXgtc2VjdGlvbiB7XG4gICAgbWFyZ2luOiAkaW5kZXhTZWN0aW9uTWFyZ2luTGFyZ2UgMDtcbiAgfVxuXG4gIC5pbmRleC1zZWN0aW9uLS1zbWFsbCB7XG4gICAgbWFyZ2luOiAkZ3V0dGVyIDA7XG4gIH1cblxuICAuc2VjdGlvbi0tZGl2aWRlciB7XG4gICAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgfVxuXG4gIC5pbmRleC1zZWN0aW9uLS1mYXEge1xuICAgIG1hcmdpbjogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlIDAgY2FsYygkaW5kZXhTZWN0aW9uTWFyZ2luTGFyZ2UgLyAyKTtcbiAgfVxuXG4gIC5uZXdzbGV0dGVyLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZSAwO1xuICB9XG5cbiAgLnRlc3RpbW9uaWFscy1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAyLjUpIDA7XG4gIH1cbn1cblxuLnBhZ2UtYmxvY2tzLS1mbHVzaCAucGFnZS13aWR0aCB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5wYWdlLWJsb2NrcyA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICYgLmluZGV4LXNlY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09IEZlYXR1cmVkIHJvdyBzZWN0aW9uID09PT09PT09PT09PT09PT0qL1xuLmZlYXR1cmUtcm93LXdyYXBwZXIge1xuICBkaXJlY3Rpb246IGx0cjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZlYXR1cmUtcm93IHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAbWVkaWEgKC0td2lkZXNjcmVlbikge1xuICAgIG1hcmdpbjogMCA2JTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAuZmVhdHVyZS1yb3ctLXNtYWxsLW5vbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5mZWF0dXJlLXJvd19faXRlbSB7XG4gIGZsZXg6IDAgMSA1NyU7XG4gIG1hcmdpbjogMCBhdXRvO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93X19pdGVtLS1vdmVybGFwLWltYWdlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAwIDE1cHg7XG4gIG1hcmdpbjogMCAwIDAgLTMwcHg7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6IDUwcHggMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuXG4gICYgPiAqIHtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzBweCwgMzBweCk7XG5cbiAgICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTBweCwgNTBweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJiBzdmcge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcbiAgfVxufVxuXG4uZmVhdHVyZS1yb3dfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBvcmRlcjogMTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93X190ZXh0IHtcbiAgbWluLXdpZHRoOiA0MyU7XG4gIGZsZXg6IDAgMSA0MyU7XG4gIHBhZGRpbmc6IDA7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgb3JkZXI6IDI7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHggMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgLyphbHdheXMgbGFzdCBlbGVtZW50IG9uIG1vYmlsZSovXG4gIH1cblxuICAmIC5ydGUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuZmVhdHVyZS1yb3dfX3RleHQtLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygkZ3V0dGVyICogMik7XG4gIH1cblxuICAuZmVhdHVyZS1yb3dfX3RleHQtLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCRndXR0ZXIgKiAyKTtcbiAgfVxufVxuIiwiLnByb2R1Y3QtYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuXG4gICYgaHIge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4ucHJvZHVjdC1ibG9jay0tdGFiICsgLnByb2R1Y3QtYmxvY2stLXRhYiB7XG4gIG1hcmdpbi10b3A6IC0yNXB4O1xufVxuXG4ucHJvZHVjdC1ibG9jay0tc2FsZXMtcG9pbnQgKyAucHJvZHVjdC1ibG9jay0tc2FsZXMtcG9pbnQge1xuICBtYXJnaW4tdG9wOiAtMjBweDtcbn1cblxuLnByb2R1Y3QtYmxvY2stLWhlYWRlciArIC5wcm9kdWN0LWJsb2NrLS1wcmljZSB7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xufVxuXG4udGhlbWUtYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5bZGF0YS1wcm9kdWN0LWJsb2Nrc10gLnNwci1zdGFycmF0aW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgbWFyZ2luLXRvcDogLTE1cHg7XG59XG5cbi5zaXplLWNoYXJ0X19zdGFuZGFsb25lIC50b29sLXRpcC10cmlnZ2VyX190aXRsZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjNlbTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cbiIsIi5zbGlkZXNob3ctd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLypQYXVzZSBidXR0b24gKGZvY3VzYWJsZSBieSBrZXlib2FyZCBvbmx5KSovXG4uc2xpZGVzaG93X19wYXVzZTpmb2N1cyB7XG4gIGNsaXA6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xuICBwYWRkaW5nOiAxMHB4O1xuICB6LWluZGV4OiAkemluZGV4U2tpcFRvQ29udGVudDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICBAbmVzdCAudmlkZW8taXMtcGxheWluZyAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zbGlkZXNob3dfX3BhdXNlLXN0b3Age1xuICBkaXNwbGF5OiBibG9jaztcblxuICBAbmVzdCAuaXMtcGF1c2VkICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNsaWRlc2hvd19fcGF1c2UtcGxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLmlzLXBhdXNlZCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc2xpZGVzaG93X19zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBuZXN0IC5mbGlja2l0eS1zbGlkZXIgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIiR6LWluZGV4LWhlcm8taW1hZ2U6IDE7XG4kei1pbmRleC1oZXJvLXZpZGVvOiAyO1xuJHotaW5kZXgtaGVyby1pbWFnZS1vdmVybGF5OiAzO1xuJHotaW5kZXgtaGVyby10ZXh0OiA0O1xuJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uQW1vdW50OiAyMDBweDtcbiRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkOiAwLjVzO1xuXG4uaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogJGNvbG9yTGFyZ2VJbWFnZUJnO1xufVxuXG4uaGVyb19fbWVkaWEtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZXJvX19pbWFnZS13cmFwcGVyLFxuLmhlcm9fX21lZGlhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpiZWZvcmUge1xuICAgIEBtaXhpbiBvdmVybGF5ICR6LWluZGV4LWhlcm8taW1hZ2Utb3ZlcmxheTtcbiAgICBAbWl4aW4gaGVyb1NjcmltO1xuXG4gICAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uaGVyb19faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6ICR6LWluZGV4LWhlcm8taW1hZ2U7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaGVyb19fbWVkaWEge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICB6LWluZGV4OiAkei1pbmRleC1oZXJvLWltYWdlO1xufVxuXG4uaGVyb19faW1hZ2Utd3JhcHBlci0tbm8tb3ZlcmxheTpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4uaGVyb19fbWVkaWEgaWZyYW1lLFxuLmhlcm9fX21lZGlhIHZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuXG4gIEBuZXN0IC52aWRlby1wYXJlbnQtc2VjdGlvbi5sb2FkaW5nICYge1xuICAgIG9wYWNpdHk6IDAuMDE7IC8qc25lYWt5IHdheSB0byBhdm9pZCB0YWxraW5nIHRvIGFuIGludmlzaWJsZSBZVCBpZnJhbWUqL1xuICB9XG5cbiAgQG5lc3QgLnZpZGVvLXBhcmVudC1zZWN0aW9uLmxvYWRlZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IC8qZml4ZXMgc2FmYXJpIGFuaW1hdGlvbiBjb25mbGljdCovXG4gIH1cbn1cblxuLypNUDQgc2l6aW5nKi9cbi5oZXJvX19tZWRpYSB2aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGNvdmVyXCI7XG59XG5cbi8qWW91VHViZSBpZnJhbWVzIG5lZWQgbW9yZSBzcGVjaWZpYyBzaXppbmcqL1xuLmhlcm9fX21lZGlhIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMzAwJTtcbiAgbGVmdDogLTEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcblxuICAvKlRoaXMgbWluLXdpZHRoIG1heSBuZWVkIHRvIGNoYW5nZSBzbGlnaHRseSBkZXBlbmRpbmcgb25cbiAgZW1iZWRkZWQgdmlkZW8gZGltZW5zaW9ucy4gQ2FuIGRvIG9uIGEgcGVyLXNob3AgYmFzaXMqL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTQwcHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IC0xMDAlO1xuICB9XG59XG5cbi8qTW9iaWxlIG9ubHkgdmltZW8gcGxheSBidXR0b24qL1xuLnZpbWVvLW1vYmlsZS10cmlnZ2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi10b3A6IDkwcHg7XG5cbiAgQG5lc3QgLmhlcm9fX3RleHQtY29udGVudCAmIHtcbiAgICBib3R0b206IDEyMCU7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG4uaGVyb19fc2xpZGUtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IGNhbGMoJHotaW5kZXgtaGVyby10ZXh0ICsgMSk7XG5cbiAgJjpob3ZlciB7XG4gICAgJiB+IC5oZXJvX190ZXh0LXdyYXAgLmJ0bjpub3QoLmJ0bi0tc2Vjb25kYXJ5KTpub3QoLmJ0bi0tdGVydGlhcnkpOm5vdCguYnRuLS1pbnZlcnNlKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5TGlnaHQ7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjI1cztcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogc2hpbmUgMC43NXMgY3ViaWMtYmV6aWVyKDAuMDEsIDAuNTYsIDEsIDEpO1xuICAgICAgfVxuXG4gICAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlcm9fX3RleHQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjb2xvcjogJGNvbG9ySGVyb1RleHQ7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYgLnBhZ2Utd2lkdGgge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uaGVyb19fdGV4dC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKSAwO1xuICB6LWluZGV4OiAkei1pbmRleC1oZXJvLXRleHQ7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAxLjUpIDA7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1kb3RzPVwidHJ1ZVwiXSAmIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuXG4uaGVyb19fdGV4dC1zaGFkb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOmJlZm9yZSB7XG4gICAgQG1peGluIG92ZXJsYXk7XG4gICAgQG1peGluIGhlcm9SYWRpYWw7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cblxuLmhlcm9fX3RvcC1zdWJ0aXRsZSB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmhlcm9fX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5oZXJvX19zdWJ0ZXh0IHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLmhlcm9fX3N1YnRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uaGVyb19fbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLypJRSBjbGlja2FiaWxpdHkgZml4Ki9cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luOiA0cHggM3B4IDJweCAwO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICBtYXJnaW4tbGVmdDogJGJ1dHRvblNrZXc7XG4gICAgfVxuICB9XG5cbiAgJiAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICBtYXJnaW4tbGVmdDogJGJ1dHRvblNrZXc7XG4gICAgfVxuICB9XG5cbiAgLypQbGF5IGljb24gaW4gYnV0dG9uKi9cbiAgJiAuYnRuIC5pY29uLXBsYXkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAvKkV4dHJhIHBhZGRpbmcgaW4gY2FzZSBpbnNpZGUgYW5pbWF0aW9uIGNyb3BwZXIqL1xuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICYgLmFuaW1hdGlvbi1jcm9wcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qVGV4dCBhbGlnbm1lbnQqL1xuLmhlcm9fX3RleHQtY29udGVudCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cbiAgJiAuaGVyb19fbGluayB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygkZ3V0dGVyIC8gNCk7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG4gIH1cblxuICAmLmhvcml6b250YWwtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gICYuaG9yaXpvbnRhbC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICYuaG9yaXpvbnRhbC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICAmLnZlcnRpY2FsLWNlbnRlciB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gICYudmVydGljYWwtYm90dG9tIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi8qVG9wIHBhZGRpbmcgYWRqdXN0bWVudCB0byBhY2NvdW50IGZvciBvdmVybGFpZCBoZWFkZXIqL1xuLm92ZXJsYWlkLWhlYWRlciAuaW5kZXgtc2VjdGlvbi0taGVybzpmaXJzdC1jaGlsZCAuaGVyb19fdGV4dC1jb250ZW50LnZlcnRpY2FsLWNlbnRlciB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IDkwcHg7XG4gIH1cbn1cblxuLmhlcm8tLTQ1MHB4IHtcbiAgaGVpZ2h0OiBjYWxjKDQ1MHB4ICogMC42NSk7XG59XG4uaGVyby0tNTUwcHgge1xuICBoZWlnaHQ6IGNhbGMoNTUwcHggKiAwLjY1KTtcbn1cbi5oZXJvLS02NTBweCB7XG4gIGhlaWdodDogY2FsYyg2NTBweCAqIDAuNjUpO1xufVxuLmhlcm8tLTc1MHB4IHtcbiAgaGVpZ2h0OiBjYWxjKDc1MHB4ICogMC42NSk7XG59XG4uaGVyby0tMTAwdmgge1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5oZXJvLS1uYXR1cmFsW2RhdGEtbmF0dXJhbF0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgLmhlcm8tLTQ1MHB4IHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICB9XG4gIC5oZXJvLS01NTBweCB7XG4gICAgaGVpZ2h0OiA1NTBweDtcbiAgfVxuICAuaGVyby0tNjUwcHgge1xuICAgIGhlaWdodDogNjUwcHg7XG4gIH1cbiAgLmhlcm8tLTc1MHB4IHtcbiAgICBoZWlnaHQ6IDc1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuaGVyby0tbW9iaWxlLS1hdXRvW2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJ0cnVlXCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuaGVyby0tbmF0dXJhbFtkYXRhLW1vYmlsZS1uYXR1cmFsPVwiZmFsc2VcIl0ge1xuICAgIGhlaWdodDogNTAwcHg7IC8qZm9yY2UgaXQganVzdCBpbiB0aGlzIGNhc2UqL1xuICB9XG4gIC5oZXJvLS1tb2JpbGUtLTI1MHB4W2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJmYWxzZVwiXSB7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgfVxuICAuaGVyby0tbW9iaWxlLS0zMDBweFtkYXRhLW1vYmlsZS1uYXR1cmFsPVwiZmFsc2VcIl0ge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbiAgLmhlcm8tLW1vYmlsZS0tNDAwcHhbZGF0YS1tb2JpbGUtbmF0dXJhbD1cImZhbHNlXCJdIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG4gIC5oZXJvLS1tb2JpbGUtLTUwMHB4W2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJmYWxzZVwiXSB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxuICAuaGVyby0tbW9iaWxlLS0xMDB2aFtkYXRhLW1vYmlsZS1uYXR1cmFsPVwiZmFsc2VcIl0ge1xuICAgIGhlaWdodDogOTB2aDtcbiAgfVxufVxuXG4vKkhlcm8gYW5kIHNsaWRlc2hvdyBzaGFyZWQgc3RhcnRpbmcgYW5pbWF0aW9uKi9cbi5zbGlkZXNob3dfX3NsaWRlLFxuW2RhdGEtYW9zPVwiaGVyb19fYW5pbWF0aW9uXCJdIHtcbiAgLypEZWZhdWx0IHBvc2l0aW9uaW5nIHByZS1hbmltYXRpb24qL1xuICAmIC5hbmltYXRpb24tY3JvcHBlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICYgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTVweCk7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8qT3ZlcnJpZGUgbGF6eWxvYWQgc3R5bGUqL1xuICAmOm5vdCguYW5pbWF0ZS1vdXQpIC5oZXJvX19pbWFnZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgJiAuaGVyb19fbGluayAuYnRuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAvKkRpc2FibGUgYW5pbWF0aW9ucyB3aGVuIG5vdCBhY3RpdmUgb3IgZmFkaW5nIG91dCovXG4gICYgLmhlcm9fX2ltYWdlLXdyYXBwZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2xpZGVzaG93SW1hZ2VBbmltYXRpb25BbW91bnQpO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKkhlcm8gYW5kIHNsaWRlc2hvdyBzaGFyZWQgYWN0aXZlIGFuaW1hdGlvbiAqL1xuLmxvYWRlZCAuc2xpZGVzaG93X19zbGlkZS5pcy1zZWxlY3RlZCxcbltkYXRhLWFvcz1cImhlcm9fX2FuaW1hdGlvblwiXS5sb2FkZWQge1xuICAmIC5hbmltYXRpb24tY3JvcHBlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cblxuICAmIC5oZXJvX190aXRsZSAuYW5pbWF0aW9uLWNvbnRlbnRzIHtcbiAgICBhbmltYXRpb246IDAuOHMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDAuM3MgZm9yd2FyZHM7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHJpc2UtdXA7XG4gIH1cblxuICAmIC5oZXJvX190b3Atc3VidGl0bGUgLmFuaW1hdGlvbi1jb250ZW50cyxcbiAgJiAuaGVyb19fc3VidGl0bGUgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgYW5pbWF0aW9uOiAxcyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMC43cyBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tbmFtZTogcmlzZS11cDtcbiAgfVxuXG4gICYgLmhlcm9fX2xpbmsgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYgLmhlcm9fX2xpbmsgLmJ0biB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLWluIDJzIGVhc2UgMS4zcyBmb3J3YXJkcztcbiAgfVxuXG4gICYgLmhlcm9fX2xpbmsgLmJ0bjpudGgtY2hpbGQoMikge1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAycyBlYXNlIDEuNnMgZm9yd2FyZHM7XG4gIH1cblxuICAmIC5oZXJvX19tZWRpYSxcbiAgJiAuaGVyb19faW1hZ2UsXG4gICYgLmhlcm9fX2ltYWdlLS1zdmcge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gICYgLmhlcm9fX2ltYWdlLXdyYXBwZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGNhbGMoJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uU3BlZWQgKyAwLjJzKSBlYXNlLCBvcGFjaXR5IGNhbGMoJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uU3BlZWQgKyAwLjJzKSBlYXNlO1xuICB9XG59XG5cbi8qV2hlbiBub3QgaW4gYSBzbGlkZXNob3csIHNpbXBsZSBmYWRlIGFuaW1hdGlvbiovXG5bZGF0YS1hb3M9XCJoZXJvX19hbmltYXRpb25cIl0ubG9hZGVkIHtcbiAgJiAuaGVyb19faW1hZ2Utd3JhcHBlciB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSBjYWxjKCRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkICsgMC4ycykgZWFzZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5uby1qcyB7XG4gICYgLmhlcm9fX2ltYWdlLFxuICAmIC5oZXJvX19pbWFnZS13cmFwcGVyIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi8qU2xpZGVzaG93IGZhZGluZyBvdXQgYW5pbWF0aW9uKi9cbi5zbGlkZXNob3dfX3NsaWRlLmFuaW1hdGUtb3V0IHtcbiAgJiAuYW5pbWF0aW9uLWNyb3BwZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gICYgLmhlcm9fX2ltYWdlLXdyYXBwZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2xpZGVzaG93SW1hZ2VBbmltYXRpb25BbW91bnQpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkc2xpZGVzaG93SW1hZ2VBbmltYXRpb25TcGVlZCBlYXNlLWluIDAuMDVzLCBvcGFjaXR5ICRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkIGVhc2UtaW4gMC4wNXM7XG4gIH1cblxuICAmIC5oZXJvX19saW5rIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi5jb2xsZWN0aW9uLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyICogMC43NSk7IC8qc2FtZSBhcyBwYWdlLWNvbnRlbnQqL1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyICogMS41KTtcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1maWx0ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6ICRncmlkLWd1dHRlci1zbWFsbDtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgQG5lc3QgLnN0aWNreS1oZWFkZXIgJiB7XG4gICAgICB0b3A6IDg2cHg7IC8qdXBkYXRlZCB3aXRoIEpTIGJhc2VkIG9uIHN0aWNreSBoZWFkZXIgaGVpZ2h0Ki9cbiAgICB9XG4gIH1cblxuICAmIHNlbGVjdCxcbiAgJiAuYnRuIHtcbiAgICBoZWlnaHQ6IDQ0cHg7IC8qbWFnaWMgbnVtYmVyLCBqdXN0IGluIGZpbHRlciBtZW51Ki9cbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cblxuICAmIHNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIC5idG4ge1xuICAgIHBhZGRpbmc6IDAgMjBweDsgLypiZWNhdXNlIGl0IGhhcyBhIGZpeGVkIGhlaWdodCovXG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmIC5pY29uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTJweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24tZmlsdGVyX19pdGVtIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG4uY29sbGVjdGlvbi1maWx0ZXIgLmJ0bjpub3QoLmJ0bi0tdGVydGlhcnktYWN0aXZlKSxcbi5jb2xsZWN0aW9uLWZpbHRlcl9fc29ydC1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xufVxuXG4uY29sbGVjdGlvbi1maWx0ZXJfX2l0ZW0tLWRyYXdlciB7XG4gIGZsZXg6IDAgMSA0OCU7XG59XG5cbi5jb2xsZWN0aW9uLWZpbHRlcl9faXRlbS0tY291bnQge1xuICBmbGV4OiAxIDEgMTcwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29sbGVjdGlvbi1maWx0ZXJfX2l0ZW0tLXNvcnQge1xuICBmbGV4OiAwIDEgNDglO1xufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmNvbGxlY3Rpb24tZmlsdGVyX19pdGVtLS1jb3VudCB7XG4gICAgb3JkZXI6IDM7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gIH1cbn1cblxuLnJ0ZS5jb2xsZWN0aW9uX19kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAqIDEuNSk7XG59XG5cbiRjb2xsZWN0aW9uSGVyb0xhcmdlOiA0MjBweDtcbiRjb2xsZWN0aW9uSGVyb1NtYWxsOiAyNTBweDtcbi5jb2xsZWN0aW9uLWhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjb2xsZWN0aW9uSGVyb1NtYWxsO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JMYXJnZUltYWdlQmc7XG4gIGJveC1zaXppbmc6IGluaXRpYWw7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGhlaWdodDogJGNvbGxlY3Rpb25IZXJvTGFyZ2U7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taGVyb19fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpIDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6ICRndXR0ZXIgMDtcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLXR5cGVfaGVhZGVyc19hbGlnbl90ZXh0PVwidHJ1ZVwiXSAmIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLypBY2NvdW50IGZvciBvdmVybGF5ZWQgaGVhZGVyL3Rvb2xiYXIqL1xuICBAbmVzdCAub3ZlcmxhaWQtaGVhZGVyICYge1xuICAgIHBhZGRpbmctdG9wOiA3MHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgLnBhZ2Utd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIEBtaXhpbiBvdmVybGF5O1xuICAgIEBtaXhpbiBoZXJvU2NyaW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC41cyBmb3J3YXJkcyAxcztcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKkFwcGx5IGFuaW1hdGlvbnMqL1xuLmNvbGxlY3Rpb24taGVyb19faW1hZ2Uge1xuICBhbmltYXRpb246IHpvb20tZmFkZSAyLjVzIGN1YmljLWJlemllcigwLjI2LCAwLjU0LCAwLjMyLCAxKSAwcyBmb3J3YXJkcztcbiAgdHJhbnNpdGlvbjogbm9uZTsgLypmaXhlcyBzYWZhcmkgYW5pbWF0aW9uIGNvbmZsaWN0Ki9cblxuICBAbmVzdCBbZGF0YS1kaXNhYmxlLWFuaW1hdGlvbnM9XCJ0cnVlXCJdICYge1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiAxXG4gIH1cbn1cblxuLypVbmxvYWQgYWpheCBzdHlsZXMqL1xuLmNvbGxlY3Rpb24tZ3JpZF9fd3JhcHBlci51bmxvYWQge1xuICBtaW4taGVpZ2h0OiAxODBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAwLjI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcblxuICAmIFtkYXRhLXNlY3Rpb24tdHlwZT1cImNvbGxlY3Rpb24tZ3JpZFwiXSB7XG4gICAgYW5pbWF0aW9uOiBncmlkLXByb2R1Y3RfX2xvYWRpbmcgMS41cyBlYXNlIGluZmluaXRlIDEuNXM7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24tc2lkZWJhciB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmdyaWRfX2l0ZW0tLXNpZGViYXIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAxMHB4OyAvKnVwZGF0ZWQgd2l0aCBzdGlja3kgaGVhZGVyIEpTKi9cbiAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24tc2lkZWJhcl9fZ3JvdXAge1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gICYgLmNvbGxhcHNpYmxlLWNvbnRlbnRfX2lubmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbi8qUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSBmaXJzdCBmaWx0ZXIgZ3JvdXAqL1xuLmZpbHRlci1mb3JtIGRpdjpmaXJzdC1vZi10eXBlIC5jb2xsZWN0aW9uLXNpZGViYXJfX2dyb3VwIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4iLCIuc2l0ZS1oZWFkZXJfX2xvZ28gLmxvZ28tLWhhcy1pbnZlcnRlZCB7XG4gIEBuZXN0IC5pcy1saWdodCAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nbyAubG9nby0taW52ZXJ0ZWQge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBuZXN0IC5pcy1saWdodCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXJfX2xvZ28ge1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXJfX2xvZ28gYSxcbi5oZWFkZXItbG9nbyBhIHtcbiAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG5cbiAgQG5lc3QgLmlzLWxpZ2h0ICYge1xuICAgIGNvbG9yOiAkY29sb3JTdGlja3lOYXZMaW5rcztcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXIge1xuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXItLXBhc3N3b3JkIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yTmF2VGV4dCk7XG5cbiAgJiBhLFxuICAmIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvck5hdlRleHQpO1xuICB9XG5cbiAgQG5lc3QgLmlzLWxpZ2h0ICYge1xuICAgIGNvbG9yOiAkY29sb3JTdGlja3lOYXZMaW5rcztcblxuICAgICYgYSxcbiAgICAmIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2Ryb3Bkb3duLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogOHB4IDE1cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQG5lc3QgLm1lZ2FtZW51ICYge1xuICAgIHBhZGRpbmc6IDRweCAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbiIsIiR0YWdBY3RpdmVJY29uU2l6ZTogMTZweDtcbiR0YWdBY3RpdmVJY29uU2l6ZUFjdGl2ZTogMTBweDtcblxuLnRhZy1saXN0X19oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGFnLWxpc3QgLnRhZy1saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG4udGFnLWxpc3QgYSxcbi50YWctbGlzdCBsYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi50YWctbGlzdCBsYWJlbDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLnRhZy0tYWN0aXZlID4gYSxcbi50YWctLWFjdGl2ZSA+IGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLnRhZy1saXN0LS1hY3RpdmUtdGFnczplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50YWctbGlzdC0tY2hlY2tib3hlcyB7XG4gIHBhZGRpbmctYm90dG9tOiA2cHg7XG5cbiAgJiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMnB4KTtcbiAgICBmb250LXNpemU6IG1heChjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSAycHgpLCAxNHB4KTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgICBoZWlnaHQ6ICR0YWdBY3RpdmVJY29uU2l6ZTtcbiAgICAgIHdpZHRoOiAkdGFnQWN0aXZlSWNvblNpemU7XG4gICAgfVxuICB9XG59XG5cbi50YWctbGlzdC0tY2hlY2tib3hlcyAudGFnLS1hY3RpdmUgYTphZnRlcixcbi50YWctLWFjdGl2ZSAudGFnX19jaGVja2JveDphZnRlcixcbmlucHV0OmNoZWNrZWQgfiAudGFnX19jaGVja2JveDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3JkZXItY29sb3I6ICRjb2xvclRleHRCb2R5O1xufVxuXG4vKlJlbW92ZSB0YWdzICh0b3Agb2Ygc2lkZWJhcikqL1xuLnRhZy0tcmVtb3ZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgYSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC8qWCBpY29uIHNpdHMgb3ZlciBidXR0b24sIG5vdCBpbiBpdCovXG4gICYgLmljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICB9XG59XG5cbi8qQ29sb3Igc3dhdGNoZXMgaW4gc2lkZWJhciovXG4udGFnLWxpc3QtLXN3YXRjaGVzIHtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBtYXJnaW4tbGVmdDogLTJweDtcblxuICBAbmVzdCAuZHJhd2VyICYge1xuICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICB9XG5cbiAgJiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbmxhYmVsLnRhZ19fY2hlY2tib3gtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi50YWdfX2NoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yQm9yZGVyKTtcbiAgICBoZWlnaHQ6ICR0YWdBY3RpdmVJY29uU2l6ZTtcbiAgICB3aWR0aDogJHRhZ0FjdGl2ZUljb25TaXplO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgaGVpZ2h0OiAkdGFnQWN0aXZlSWNvblNpemVBY3RpdmU7XG4gICAgd2lkdGg6ICR0YWdBY3RpdmVJY29uU2l6ZUFjdGl2ZTtcbiAgICBsZWZ0OiAzcHg7XG4gIH1cbn1cblxuLnRhZ19faW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xufVxuIiwiJGxhYmVsLWJvdHRvbS1tYXJnaW46IDEycHg7XG5cbi52YXJpYW50LWlucHV0LXdyYXAge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCAwIC0kbGFiZWwtYm90dG9tLW1hcmdpbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgaW5wdXQge1xuICAgIEBtaXhpbiB2aXN1YWxseUhpZGRlbjtcbiAgfVxuXG4gICYgbGFiZWwge1xuICAgIEBtaXhpbiBiYXNlRm9udFN0YWNrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiA3cHggMTVweCA3cHg7XG4gICAgbWFyZ2luOiAwIDhweCAkbGFiZWwtYm90dG9tLW1hcmdpbiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvckJvcmRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQG5lc3QgW2RhdGEtY2VudGVyLXRleHQ9XCJ0cnVlXCJdICYge1xuICAgICAgbWFyZ2luOiAwIDRweCAkbGFiZWwtYm90dG9tLW1hcmdpbjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZDphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cbiAgfVxuXG4gICYgaW5wdXRbdHlwZT0ncmFkaW8nXTpmb2N1cyArIGxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgJiBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi52YXJpYW50LWlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIC8qRmlyZWZveCBidWcgZml4Ki9cbiAgQG5lc3Qgc2VsZWN0ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi52YXJpYW50LXdyYXBwZXIgKyAudmFyaWFudC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMjVweDtcbn1cblxuLm5vLWpzIC52YXJpYW50LXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udmFyaWFudC13cmFwcGVyLS1kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udmFyaWFudF9fbGFiZWxbZm9yXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi52YXJpYW50X19sYWJlbC1pbmZvIHtcbiAgLyp1bmRvIGFjY2VudCBzdGFjayBzdHlsZXMqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG4iLCIuZ3JpZC1wcm9kdWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBAbmVzdCAuZ3JpZC1vdmVyZmxvdy13cmFwcGVyICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4uZ3JpZF9faXRlbS1pbWFnZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ3JpZC1wcm9kdWN0X190aXRsZS0taGVhZGluZyB7XG4gIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDJweCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5bZGF0YS10eXBlX3Byb2R1Y3RfY2FwaXRhbGl6ZT1cInRydWVcIl0ge1xuICAmIC5ncmlkLXByb2R1Y3RfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMnB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4yZW07XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gM3B4KTtcbiAgICB9XG4gIH1cbn1cblxuLyogUHJldmVudCBsb25nIHdvcmRzIGZyb20gYnJlYWtpbmcgb3V0IG9mIGF2YWlsYWJsZSBzcGFjZSAqL1xuLmdyaWQtcHJvZHVjdF9fdGl0bGUge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICBoeXBoZW5zOiBhdXRvO1xufVxuXG4uZ3JpZC1wcm9kdWN0X19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi5ncmlkLXByb2R1Y3RfX2xpbmstLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS1tYXNrIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICAmIC5ncmlkX19pbWFnZS1yYXRpbyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX21ldGEge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmdyaWQtcHJvZHVjdF9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uZ3JpZC1wcm9kdWN0X19zZWNvbmRhcnktaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTFweDtcbiAgbGVmdDogLTFweDtcbiAgcmlnaHQ6IC0xcHg7XG4gIGJvdHRvbTogLTFweDtcbiAgb3BhY2l0eTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcblxuICAmIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG5cbiAgQG5lc3QgLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzazpob3ZlciAmIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC4ycyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBAbmVzdCAuc3VwcG9ydHMtdG91Y2ggJiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZ3JpZC1wcm9kdWN0X19jb2xvci1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMC41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fbWV0YSB7XG4gIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxMHB4IDAgNnB4IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS10eXBlQmFzZWxpbmVIZWlnaHRNaW51czAxKTtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBAbmVzdCAuc21hbGwtLWdyaWQtLWZsdXNoICYge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fdmVuZG9yIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgb3BhY2l0eTogMC42NTtcbn1cblxuLmdyaWQtcHJvZHVjdF9fcHJpY2Uge1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBjb2xvcjogJGNvbG9yUHJpY2U7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cblxuLmdyaWQtcHJvZHVjdF9fcHJpY2UtLW9yaWdpbmFsIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4uZ3JpZC1wcm9kdWN0X19wcmljZS0tc2F2aW5ncyB7XG4gIGNvbG9yOiAkY29sb3JUZXh0U2F2aW5ncztcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmdyaWQtcHJvZHVjdF9fdGFnIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgKiAwLjY1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogNnB4IDVweCA2cHggN3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlO1xuXG4gICYuZ3JpZC1wcm9kdWN0X190YWctLXNvbGQtb3V0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAqIDAuODUpO1xuICAgIHBhZGRpbmc6IDdweCA3cHggN3B4IDlweDtcbiAgfVxufVxuXG4uZ3JpZC1wcm9kdWN0X190YWctLXNhbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JTYWxlVGFnO1xuICBjb2xvcjogJGNvbG9yU2FsZVRhZ1RleHQ7XG59XG5cbi5xdWljay1wcm9kdWN0X19idG4ge1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnk7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogOHB4IDVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1cHgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHRyYW5zZm9ybSAwLjI1cyBlYXNlLW91dCwgYmFja2dyb3VuZCAwLjRzIGVhc2U7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcblxuICBAbmVzdCAubm8tanMgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLXByb2R1Y3RfX2NvbnRlbnQ6aG92ZXIgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1vdXQ7XG4gIH1cblxuICBAbmVzdCAuc3VwcG9ydHMtdG91Y2ggJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLXByb2R1Y3Q6Zm9jdXMtd2l0aGluICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgdHJhbnNmb3JtIDAuMjVzIGVhc2Utb3V0O1xuICB9XG59XG5cbi5xdWljay1wcm9kdWN0X19idG4tLW5vdC1yZWFkeSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKk1vYmlsZSBob3Jpem9udGFsIG92ZXJmbG93IGdyaWQqL1xuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5ncmlkLW92ZXJmbG93LXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICYgLmdyaWQge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJiAuZ3JpZF9faXRlbSB7XG4gICAgICB3aWR0aDogMzl2dztcbiAgICAgIGZsZXg6IDAgMCAzOXZ3O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRwYWdlLXdpZHRoLWd1dHRlci1zbWFsbDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLmdyaWRfX2l0ZW0tLXZpZXctYWxsIHtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmIC5ncmlkX19pdGVtLFxuICAgICYgLmdyaWQtcHJvZHVjdF9fcHJpY2Uge1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIH1cbiAgfVxuXG4gIFtkYXRhLWFvcz1cIm92ZXJmbG93X19hbmltYXRpb25cIl0ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDB2dyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCk7XG5cbiAgICAmLmFvcy1hbmltYXRlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgICBAbmVzdCBbZGF0YS1kaXNhYmxlLWFuaW1hdGlvbnM9XCJ0cnVlXCJdICYge1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLypTZWUgYWxsIChtb2JpbGUgb3ZlcmZsb3cpKi9cbi5ncmlkLXByb2R1Y3RfX3NlZS1hbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgbWFyZ2luLXRvcDogLTYwcHg7IC8qYXBwcm94IG9mIHdoYXQgdGl0bGUrcHJpY2UgaXMqL1xufVxuXG4uZ3JpZC1wcm9kdWN0X19jb2xvcnMge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBsaW5lLWhlaWdodDogJGNvbG9yU3dhdGNoQ29sbGVjdGlvblNpemU7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGxpbmUtaGVpZ2h0OiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZUxhcmdlO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtY2VudGVyLXRleHQ9XCJ0cnVlXCJdICYge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAmICsgLmdyaWQtcHJvZHVjdF9fY29sb3JzIHtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cbn1cbiIsIi5zYWxlcy1wb2ludHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDI1cHggMDtcblxuICBAbmVzdCAucXVpY2stYWRkLW1vZGFsICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNhbGVzLXBvaW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICBAbmVzdCBbZGlyPVwicnRsXCJdICYge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuc2FsZXMtcG9pbnQgLmljb24tYW5kLXRleHQge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4iLCIvKkludmVudG9yeSBpbmRpY2F0b3IqL1xuQGtleWZyYW1lcyBpbnZlbnRvcnktcHVsc2Uge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMi41KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5pY29uLS1pbnZlbnRvcnkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgd2lkdGg6IDlweDtcbiAgICBoZWlnaHQ6IDlweDtcbiAgICBiYWNrZ3JvdW5kOiAjNTRjNjNhO1xuICAgIGJvcmRlci1yYWRpdXM6IDlweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgbWFyZ2luOiA4cHg7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYW5pbWF0aW9uOiBpbnZlbnRvcnktcHVsc2UgMnMgbGluZWFyIGluZmluaXRlO1xuICB9XG5cbiAgQG5lc3QgLmludmVudG9yeS0tbG93ICYge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogI0Y0QUYyOTtcbiAgICB9XG4gIH1cbn1cbiIsIi5jb2xvci1zd2F0Y2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwIDRweCA0cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB3aWR0aDogNDBweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvckJvcmRlcjtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XG5cbiAgQG5lc3QgW2RhdGEtc3dhdGNoX3N0eWxlPSdyb3VuZCddICYge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcblxuICAgIC8qVHJ5IGFuZCBhdm9pZCBvdmVyLXBpeGVsYXRlZCBib3JkZXJzIG9uIHNvbWUgc2NyZWVucyovXG4gICAgQG5lc3QgW2RhdGEtc3dhdGNoX3N0eWxlPSdyb3VuZCddICYge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJvcmRlci13aWR0aDogNHB4O1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgbGVmdDogLTFweDtcbiAgICAgIHJpZ2h0OiAtMXB4O1xuICAgICAgYm90dG9tOiAtMXB4O1xuICAgIH1cbiAgfVxufVxuXG4vKlByb2R1Y3QgZ3JpZCBkaXJlY3QgdmFyaWFudCBsaW5rcyBhbmRcbnNpZGViYXIgY29sb3Igc3dhdGNoZXMqL1xuYS5jb2xvci1zd2F0Y2g6aG92ZXIsXG4udGFnOm5vdCgudGFnLS1hY3RpdmUpIGxhYmVsOmhvdmVyIC5jb2xvci1zd2F0Y2g6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGNvbG9yVGV4dEJvZHk7XG59XG5cbi50YWctLWFjdGl2ZSAuY29sb3Itc3dhdGNoIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xufVxuXG4uY29sb3Itc3dhdGNoLS1zbWFsbCB7XG4gIHdpZHRoOiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZTtcbiAgaGVpZ2h0OiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgd2lkdGg6ICRjb2xvclN3YXRjaENvbGxlY3Rpb25TaXplTGFyZ2U7XG4gICAgaGVpZ2h0OiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZUxhcmdlO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcblxuICAgIEBuZXN0IFtkYXRhLXN3YXRjaF9zdHlsZT0ncm91bmQnXSAmIHtcbiAgICAgIGJvcmRlci13aWR0aDogM3B4O1xuICAgIH1cbiAgfVxufVxuXG4udGFnLS1zd2F0Y2gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJiA+IGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5jb2xvci1zd2F0Y2gtLWZpbHRlciB7XG4gIHdpZHRoOiAkY29sb3JTd2F0Y2hTaWRlYmFyU2l6ZTtcbiAgaGVpZ2h0OiAkY29sb3JTd2F0Y2hTaWRlYmFyU2l6ZTtcbn1cblxuLnRhZy0tYWN0aXZlIC5jb2xvci1zd2F0Y2gtLWZpbHRlcjpob3ZlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbiIsIi5jb2xsZWN0aW9uLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItc21hbGw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlcjtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLS1uby1ndXR0ZXJzICYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmOmhvdmVyIC5jb2xsZWN0aW9uLWltYWdlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMsMS4wMyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZTtcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uY29sbGVjdGlvbi1pdGVtOm5vdCguY29sbGVjdGlvbi1pdGVtLS1iZWxvdykge1xuICAmOmFmdGVyIHtcbiAgICBAbWl4aW4gb3ZlcmxheTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JHcmlkT3ZlcmxheTtcbiAgICBvcGFjaXR5OiB2YXIoLS1jb2xvckdyaWRPdmVybGF5T3BhY2l0eSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjhzIGVhc2U7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBvcGFjaXR5OiBjYWxjKHZhcigtLWNvbG9yR3JpZE92ZXJsYXlPcGFjaXR5KSArIDAuMTUpO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuXG4gICYgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW0tLWJlbG93IGltZyB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5jb2xsZWN0aW9uLWltYWdlLS1wbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDE7XG5cbiAgJiBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taW1hZ2UtLXNxdWFyZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xufVxuXG4uY29sbGVjdGlvbi1pbWFnZS0tbGFuZHNjYXBlIHtcbiAgcGFkZGluZy10b3A6IDc1JTtcbn1cblxuLmNvbGxlY3Rpb24taW1hZ2UtLXBvcnRyYWl0IHtcbiAgcGFkZGluZy10b3A6IDE1MCU7XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDI7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQ29sbGVjdGlvblRpdGxlKSAqIDAuOCk7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUNvbGxlY3Rpb25UaXRsZSk7XG5cbiAgICAvKlNsaWdodGx5IHNtYWxsZXIgYmFzZSB3aGVuIDUtYWNyb3NzIG9uIGRlc2t0b3AqL1xuICAgIEBuZXN0IC5tZWRpdW0tdXAtLW9uZS1maWZ0aCAmIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCBbZGF0YS10eXBlX3Byb2R1Y3RfY2FwaXRhbGl6ZT1cInRydWVcIl0gJiB7XG4gICAgJiBzcGFuIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5jb2xsZWN0aW9uLWl0ZW0tLWJlbG93ICYge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0taGVhZGluZyB7XG4gIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xufVxuXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tb3ZlcmxhaWQsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tb3ZlcmxhaWQtYm94IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IDEwcHg7XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1vdmVybGFpZCB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LXNoYWRvdzogMCAwIDUwcHggcmdiYSgwLDAsMCwxKTtcbn1cblxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLW92ZXJsYWlkLWJveCB7XG4gICYgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi8qVGl0bGUgYWxpZ25tZW50Ki9cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS10b3AtY2VudGVyLFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWNlbnRlcixcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1ib3R0b20tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tdG9wLXJpZ2h0XG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tcmlnaHQsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tYm90dG9tLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1sZWZ0LFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWNlbnRlcixcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1yaWdodCB7XG4gICZbY2xhc3MqPVwiY29sbGVjdGlvbi1pdGVtX190aXRsZS0tb3ZlcmxhaWRcIl0ge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuXG4vKlRvcCBhbGlnbiBzb21lIHRpdGxlcyovXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tdG9wLWxlZnQsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tdG9wLWNlbnRlcixcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS10b3AtcmlnaHQge1xuICAmW2NsYXNzKj1cImNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLW92ZXJsYWlkXCJdIHtcbiAgICB0b3A6IDEwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB0b3A6IDE4cHg7XG4gICAgfVxuICB9XG59XG5cbi8qQm90dG9tIGFsaWduIHNvbWUgdGl0bGVzKi9cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1ib3R0b20tbGVmdCxcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1ib3R0b20tY2VudGVyLFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWJvdHRvbS1yaWdodCB7XG4gICZbY2xhc3MqPVwiY29sbGVjdGlvbi1pdGVtX190aXRsZS0tb3ZlcmxhaWRcIl0ge1xuICAgIGJvdHRvbTogMTBweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGJvdHRvbTogMThweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5jdXN0b20tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAtJGdyaWQtZ3V0dGVyO1xuICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlcjtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtJGdyaWQtZ3V0dGVyLXNtYWxsO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyLXNtYWxsO1xuICB9XG59XG5cbi5jdXN0b21fX2l0ZW0ge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogJGdyaWQtZ3V0dGVyO1xuICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlcjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLXNtYWxsO1xuICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci1zbWFsbDtcblxuICAgICYuc21hbGwtLW9uZS1oYWxmIHtcbiAgICAgIGZsZXg6IDEgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5jdXN0b21fX2l0ZW0taW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmN1c3RvbV9faXRlbS1pbm5lci0tdmlkZW8sXG4uY3VzdG9tX19pdGVtLWlubmVyLS1odG1sIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jdXN0b21fX2l0ZW0taW5uZXItLWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jdXN0b21fX2l0ZW0taW5uZXItLWh0bWwgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uY3VzdG9tX19pdGVtLWlubmVyLS1wbGFjZWhvbGRlci1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYWxpZ24tLXRvcC1taWRkbGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbGlnbi0tdG9wLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5hbGlnbi0tbWlkZGxlLWxlZnQge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5cbi5hbGlnbi0tY2VudGVyIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hbGlnbi0tbWlkZGxlLXJpZ2h0IHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmFsaWduLS1ib3R0b20tbGVmdCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tLWJvdHRvbS1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWxpZ24tLWJvdHRvbS1yaWdodCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbiIsIi5hcnRpY2xlX19ncmlkLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTdweDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uYXJ0aWNsZV9fdGl0bGUge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDJweCk7XG59XG5cbi5hcnRpY2xlX19kYXRlIHtcbiAgQG1peGluIGJhc2VFeHRyYVNtYWxsRm9udFN0YWNrO1xuICBtYXJnaW4tYm90dG9tOiAzcHg7XG5cbiAgQG5lc3QgLnNlY3Rpb24taGVhZGVyICYge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbi5hcnRpY2xlX19hdXRob3Ige1xuICBtYXJnaW4tdG9wOiAycHg7XG4gIEBtaXhpbiBiYXNlRXh0cmFTbWFsbEZvbnRTdGFjaztcbn1cblxuLmFydGljbGVfX2dyaWQtbWV0YSB7XG4gIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgfVxufVxuXG4uYXJ0aWNsZV9fZXhjZXJwdCB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4iLCIubG9nby1iYXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IC0kZ3V0dGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubG9nby1iYXJfX2l0ZW0ge1xuICBmbGV4OiAwIDEgMTEwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCBjYWxjKCRndXR0ZXIgLyAyKSBjYWxjKCRndXR0ZXIgLyAxLjUpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmbGV4OiAwIDEgMTYwcHg7XG4gICAgbWFyZ2luOiAwIGNhbGMoJGd1dHRlciAvIDEuNSkgJGd1dHRlcjtcbiAgfVxufVxuXG4ubG9nby1iYXJfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmxvZ28tYmFyX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXSAubG9nby1iYXJfX2l0ZW0ge1xuICBvcGFjaXR5OiAwO1xufVxuXG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtIHtcbiAgYW5pbWF0aW9uOiBmYWRlLWluIDAuNXMgZWFzZSAwcyBmb3J3YXJkcztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDIpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoMykge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNHM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCg0KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC42cztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDUpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjhzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoNikge1xuICBhbmltYXRpb24tZGVsYXk6IDEuMHM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCg3KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMS4yc1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoOCkge1xuICBhbmltYXRpb24tZGVsYXk6IDEuNHM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCg5KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMS42cztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDEwKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMS44cztcbn1cbiIsIi5iYWNrZ3JvdW5kLW1lZGlhLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JMYXJnZUltYWdlQmc7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IDMwMCU7XG4gICAgbGVmdDogLTEwMCU7XG4gIH1cblxuICAmIGlmcmFtZSxcbiAgJiB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGhlaWdodDogMTIwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgaGVpZ2h0OiAxNTAlO1xuICAgICAgd2lkdGg6IDMwMCU7XG4gICAgfVxuXG4gICAgLypUaGlzIG1pbi13aWR0aCBtYXkgbmVlZCB0byBjaGFuZ2Ugc2xpZ2h0bHkgZGVwZW5kaW5nIG9uXG4gICAgZW1iZWRkZWQgdmlkZW8gZGltZW5zaW9ucy4gQ2FuIGRvIG9uIGEgcGVyLXNob3AgYmFzaXMqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExNDBweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDMwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgdG9wOiAtMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLWludGVyYWN0YWJsZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gICYgaWZyYW1lLFxuICAmIHZpZGVvIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbm5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fYWxpZ25lciB7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyICogMik7XG59XG5cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3RleHQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDEuMWVtO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICBwYWRkaW5nOiAkZ3V0dGVyO1xuICB3aWR0aDogMzgwcHg7XG5cbiAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fdGV4dC0tZnJhbWVkIHtcbiAgYm9yZGVyOiAkdGV4dEZyYW1lTWFyZ2luU21hbGwgc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBib3JkZXItd2lkdGg6ICR0ZXh0RnJhbWVNYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X190ZXh0IC5idG4ge1xuICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS1yaWdodCAuYW5pbWF0aW9uLWNyb3BwZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4vKlNlY3Rpb24gaGVpZ2h0Ki9cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fY29udGFpbmVyLFxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjQwcHg7XG5cbiAgICBAbmVzdCAucHJvbW8tdmlkZW8gJiB7XG4gICAgICBoZWlnaHQ6IDU1MHB4O1xuICAgIH1cbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbGlnbmVyIHtcbiAgICBtYXJnaW46IC02cHggNnB4IDZweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X190ZXh0IHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAwLjc1KTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LmxvYWRpbmcge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAxMTdweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS00NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTQ1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNDUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS01NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTU1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNTUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA1NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS02NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTY1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNjUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA2NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS03NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTc1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNzUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA3NTBweDtcbiAgfVxufVxuXG5bZGF0YS1hb3M9XCJiYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2FuaW1hdGlvblwiXSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbWFnZSxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2ltYWdlIHN2ZyxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgYW5pbWF0aW9uOiB6b29tLWZhZGUgMi41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIHRyYW5zaXRpb246IG5vbmU7IC8qZml4ZXMgc2FmYXJpIGFuaW1hdGlvbiBjb25mbGljdCovXG5cbiAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5bZGF0YS1hb3M9XCJiYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbWFnZSxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2ltYWdlIHN2ZyxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdLmxvYWRlZC5hb3MtYW5pbWF0ZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB0cmFuc2l0aW9uOiBub25lOyAvKmZpeGVzIHNhZmFyaSBhbmltYXRpb24gY29uZmxpY3QqL1xuXG4gIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgW2RhdGEtYW9zPVwiYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbmltYXRpb25cIl0gLmJhY2tncm91bmQtbWVkaWEtdGV4dF9faW5uZXIgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBuZXN0IC5uby1qcyAmIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgW2RhdGEtYW9zPVwiYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbmltYXRpb25cIl0ubG9hZGVkLmFvcy1hbmltYXRlIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2lubmVyIC5hbmltYXRpb24tY29udGVudHMge1xuICAgIGFuaW1hdGlvbjogcmlzZS11cCAxcyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMC41cyBmb3J3YXJkcztcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLnF1b3RlLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbn1cblxuLnRlc3RpbW9uaWFsLXN0YXJzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4udGVzdGltb25pYWxzLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogNDBweCAwIDU1cHg7XG4gIHdpZHRoOiAzMyU7XG5cbiAgLypIaWRlIGFsbCBidXQgZmlyc3Qgc2xpZGUgdG8gcHJldmVudCBwYWdlIHJlZmxvd3MgcHJpb3IgdG8gaW5pdCovXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG5lc3QgLmZsaWNraXR5LXNsaWRlciAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAudGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLCBib3gtc2hhZG93IDAuNXMgZWFzZTtcbiAgfVxuXG4gICYuaXMtc2VsZWN0ZWQgLnRlc3RpbW9uaWFscy1zbGlkZXJfX3RleHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIC50ZXN0aW1vbmlhbHMtc2xpZGVyX190ZXh0IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44Nik7XG4gICAgfVxuXG4gICAgJi5pcy1zZWxlY3RlZCAudGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgfVxufVxuXG4udGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gIG1hcmdpbjogMCAzMHB4O1xuICBwYWRkaW5nOiAzMHB4IGNhbGMoJGd1dHRlciAvIDIpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvckJvZHkpO1xuICBjb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiBjaXRlIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDFweCk7XG4gICAgfVxuICB9XG5cbiAgJiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyA0KTtcblxuICAgICYgKyBjaXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi50ZXN0aW1vbmlhbHNfX2luZm8ge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDFweCk7XG59XG5cbiR0ZXN0aW1vbmlhbEltYWdlU2l6ZTogMTQycHg7XG4kdGVzdGltb25pYWxJbWFnZVNpemVSb3VuZDogNjVweDtcblxuLnRlc3RpbW9uaWFsLWltYWdlIHtcbiAgbWF4LXdpZHRoOiAkdGVzdGltb25pYWxJbWFnZVNpemU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG5cbiAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gICYgLmltYWdlLXdyYXAge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi50ZXN0aW1vbmlhbC1pbWFnZS0tcm91bmQge1xuICB3aWR0aDogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG4gIGhlaWdodDogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG5cbiAgLypmaXggYW5pbWF0aW9uIGJ1ZyBpbiBTYWZhcmkqL1xuICAmIGltZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiAkdGVzdGltb25pYWxJbWFnZVNpemVSb3VuZDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFscy1zZWN0aW9uIC5mbGlja2l0eS1wYWdlLWRvdHMge1xuICBib3R0b206IDA7XG59XG4iLCIuYW5ub3VuY2VtZW50LWJhciB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICogMC43NSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnQ7XG4gIGNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnRUZXh0O1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjsgLypvbmx5IHdoZW4gc2FtZSBiZyBhcyBib2R5Ki9cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICogMC44NSk7XG4gIH1cblxuICAmIGEsXG4gICYgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGNvbG9yQW5ub3VuY2VtZW50VGV4dDtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRjb2xvckFubm91bmNlbWVudFRleHQ7XG4gICAgfVxuICB9XG59XG5cbi5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMCA1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYW5ub3VuY2VtZW50LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjb2xvckFubm91bmNlbWVudFRleHQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnRUZXh0O1xuICB9XG59XG5cbi5hbm5vdW5jZW1lbnQtdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuXG4uYW5ub3VuY2VtZW50LWxpbmstdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIEBuZXN0IC5hbm5vdW5jZW1lbnQtbGluayAmIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gICYgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAvKjEgc2xpZGUgYXQgYSB0aW1lLCBpbmxpbmUgdGV4dCovXG4gIC5hbm5vdW5jZW1lbnQtc2xpZGVyW2RhdGEtY29tcGFjdD1cInRydWVcIl0ge1xuICAgICYgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgJiAuYW5ub3VuY2VtZW50LXRleHQsXG4gICAgJiAuYW5ub3VuY2VtZW50LWxpbmstdGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgfVxuXG4gICAgJiAuYW5ub3VuY2VtZW50LXRleHQgKyAuYW5ub3VuY2VtZW50LWxpbmstdGV4dCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICB9XG5cbiAgICAmLmZsaWNraXR5LWVuYWJsZWQgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8qVXAgdG8gMyBiZXNpZGUgZWFjaG90aGVyKi9cbiAgLmFubm91bmNlbWVudC1zbGlkZXJbZGF0YS1jb21wYWN0PVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmIC5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gICAgICBmbGV4OiAxIDEgMzMlO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmFubm91bmNlbWVudC1zbGlkZXIge1xuICAgICYgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZsaWNraXR5LWVuYWJsZWQgLmFubm91bmNlbWVudC1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLnNob3BpZnktY2hhbGxlbmdlX19jb250YWluZXIge1xuICBwYWRkaW5nOiAzMHB4IDIycHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiAxMjBweCAwO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNTIwcHg7XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb24gLmVycm9ycyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogNTIwcHg7XG59XG5cbi5tb2RhbCAubmV3c2xldHRlciAuaDEge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cbn1cblxuLm1vZGFsIC5uZXdzbGV0dGVyIC5pbWFnZS13cmFwIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gNCk7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4ubW9kYWwgLm5ld3NsZXR0ZXIgLnRleHQtY2xvc2Uge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLm5ld3NsZXR0ZXJfX2lucHV0LWdyb3VwIHtcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgbWF4LXdpZHRoOiA0MDBweDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXJfX2lucHV0IHtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmZvcm1fX3N1Ym1pdC0tbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZm9ybV9fc3VibWl0LS1zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuZm9ybV9fc3VibWl0LS1sYXJnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuZm9ybV9fc3VibWl0LS1zbWFsbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5bZGF0YS1oYXMtaW1hZ2VdIC5tb2RhbF9fY2xvc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJvZHkpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IDVweDtcbiAgdG9wOiAxMHB4O1xuICByaWdodDoxMHB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG5bZGF0YS1zZWN0aW9uLXR5cGU9XCJuZXdzbGV0dGVyLXBvcHVwXCJdIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICYgLm1vZGFsX19pbm5lciB7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIH1cblxuICAgICYubW9kYWwtLXNxdWFyZSAubW9kYWxfX2Nsb3NlIHtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICB9XG4gIH1cblxuICAmIC5oMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiAucnRlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIC5wb3B1cC1jdGEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmIC5ub3RlLS1zdWNjZXNzIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXJfX2lucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXItYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICB9XG5cbiAgJiAuc29jaWFsLWljb25zIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmc6IDVweDtcblxuICB9XG59XG5cbi5tb2RhbF9fY2VudGVyZWQtY29udGVudC5uZXdzbGV0dGVyLS1oYXMtaW1hZ2Uge1xuICBwYWRkaW5nOiAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyLXBvcHVwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gICAgbWluLXdpZHRoOiA2NTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cblxuICAgICYubmV3c2xldHRlci1wb3B1cC0taW1hZ2UtcmV2ZXJzZWQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cbiAgfVxuXG4gICYgLmZvcm1fX3N1Ym1pdC0tbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmIC5mb3JtX19zdWJtaXQtLXNtYWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXItcG9wdXBfX2ltYWdlLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXItcG9wdXBfX2ltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJiAubmV3c2xldHRlci1wb3B1cF9fY29udGVudCB7XG4gICAgcGFkZGluZzogNDBweDtcbiAgICB3aWR0aDogNTAlO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG5uZXdzbGV0dGVyLXJlbWluZGVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yQnRuUHJpbWFyeVRleHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJ0blByaW1hcnkpO1xuXG4gICYubW9kYWwtLXNxdWFyZSAubW9kYWxfX2Nsb3NlIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3JCdG5QcmltYXJ5VGV4dCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvckJ0blByaW1hcnlUZXh0KTtcbiAgICAgIG9wYWNpdHk6IDUwJTtcbiAgICB9XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyLXJlbWluZGVyX19tZXNzYWdlIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUhlYWRlclNpemUpKjAuNSk7XG4gIH1cbn1cblxuLmZvcm1fX3N1Ym1pdC0tc21hbGwge1xuICBsaW5lLWhlaWdodDogMDtcbn1cbiIsIi5tYXAtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA2NTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGhlaWdodDogNTAwcHg7XG4gIH1cblxuICAmIC5wYWdlLXdpZHRoIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLm1hcC1zZWN0aW9uLS1sb2FkLWVycm9yIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubWFwLW9uYm9hcmRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgei1pbmRleDogMDtcbn1cblxuLm1hcC1zZWN0aW9uX19vdmVybGF5LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1hcC1zZWN0aW9uX19vdmVybGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIHBhZGRpbmc6ICRndXR0ZXI7XG4gIG1hcmdpbjogJGd1dHRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gJGd1dHRlcioyKTtcbiAgei1pbmRleDogMztcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6ICRndXR0ZXI7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgd2lkdGg6IDMwJTtcbiAgfVxuXG4gIEBuZXN0IC5tYXAtc2VjdGlvbi0tbG9hZC1lcnJvciAmIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG4ubWFwLXNlY3Rpb25fX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi8qT3B0aWNhbGx5IGNlbnRlciBtYXAgaW4gdmlzaWJsZSBhcmVhIHdpdGhcbmV4dGVuZGVkIGhlaWdodC93aWR0aHMgYW5kIG5lZ2F0aXZlIG1hcmdpbnMqL1xuLm1hcC1zZWN0aW9uX19jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgLyphcGkgd2lsbCBpbmxpbmUgcmVsYXRpdmUgc29tZXRpbWVzKi9cbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxNTAlO1xuICBtYXJnaW4tYm90dG9tOiAtNTAlO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICB3aWR0aDogMTMwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwIC0zMCUgMCAwO1xuICB9XG5cbiAgQG5lc3QgLmRpc3BsYXktbWFwLS1mYWxzZS5iZy1pbWFnZS0tdHJ1ZSAmICB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgJiBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbltkYXRhLWFvcz1cIm1hcC1zZWN0aW9uX19hbmltYXRpb25cIl0gLm1hcC1zZWN0aW9uX19jb250YWluZXIge1xuICBhbmltYXRpb246IGZhZGUtb3V0IDAuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICBvcGFjaXR5OiAwO1xufVxuXG5bZGF0YS1hb3M9XCJtYXAtc2VjdGlvbl9fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5tYXAtc2VjdGlvbl9fY29udGFpbmVyIHtcbiAgYW5pbWF0aW9uOiB6b29tLWZhZGUgMi41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG59XG4iLCIuaW1hZ2Utcm93IHtcbiAgQG1peGluIGNsZWFyZml4O1xufVxuXG4uaW1hZ2Utcm93X19wbGFjZWhvbGRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMuMzMlO1xuXG4gIEBuZXN0IC5pbWFnZS1yb3ctLWd1dHRlcnMgJiB7XG4gICAgd2lkdGg6IDMyJTtcbiAgICBtYXJnaW46IDAgMSUgMiU7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5pbWFnZS1yb3dfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGZsb2F0OiBsZWZ0O1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLypab29tIGN1cnNvciB1bmxlc3MgaW5zaWRlIGEgbGluayovXG5bZGF0YS16b29tPVwidHJ1ZVwiXSB7XG4gICYgLmltYWdlLXJvd19faW1hZ2UgLmpzLXBob3Rvc3dpcGVfX3pvb20ge1xuICAgIGN1cnNvcjogem9vbS1pbjtcbiAgfVxuXG4gICYgLmltYWdlLXJvd19faW1hZ2UgYSAuanMtcGhvdG9zd2lwZV9fem9vbSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4iLCIkei1pbmRleC1wcm9tby10aW50OiAyO1xuJHotaW5kZXgtcHJvbW8tY29sb3Itb3ZlcmxheTogMztcbiR6LWluZGV4LXByb21vLWZyYW1lOiAzO1xuJHotaW5kZXgtcHJvbW8tdGV4dDogMztcbiR6LWluZGV4LXByb21vLWNvbnRlbnQ6IDQ7XG4kei1pbmRleC1wcm9tby1saW5rOiA1O1xuXG4ucHJvbW8tZ3JpZC0tc3BhY2UtdG9wIHtcbiAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmctdG9wOiAkaW5kZXhTZWN0aW9uTWFyZ2luTGFyZ2U7XG4gIH1cbn1cblxuLnByb21vLWdyaWQtLXNwYWNlLWJvdHRvbSB7XG4gIHBhZGRpbmctYm90dG9tOiAkaW5kZXhTZWN0aW9uTWFyZ2luU21hbGw7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlO1xuICB9XG59XG5cbi5wcm9tby1ncmlkX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICB9XG4gIH1cblxuICAmLmhvcml6b250YWwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmIC5idG4ge1xuICAgICAgbWFyZ2luOiAycHggNXB4O1xuICAgIH1cbiAgfVxuXG4gICYuaG9yaXpvbnRhbC1yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1ib3hlZCB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICYgLnByb21vLWdyaWRfX2JnIHtcbiAgICAgIGhlaWdodDogNjAlO1xuICAgIH1cblxuICAgICYgLnByb21vLWdyaWRfX2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiA1NSU7XG4gICAgICBib3gtc2hhZG93OiAwIDAgNTBweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgfVxuICB9XG59XG5cbi8qRnJhbWVkIGJ1dCBub3QgYm94ZWQqL1xuLnByb21vLWdyaWRfX2NvbnRhaW5lci0tZnJhbWVkOm5vdCgucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1ib3hlZCk6YWZ0ZXIge1xuICBAbWl4aW4gb3ZlcmxheTtcbiAgYm9yZGVyOiAkdGV4dEZyYW1lTWFyZ2luU21hbGwgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkY29sb3JIZXJvVGV4dDtcbiAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tZnJhbWU7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGJvcmRlci13aWR0aDogJHRleHRGcmFtZU1hcmdpbkxhcmdlO1xuICB9XG5cbiAgLypXaGVuIHRleHQgaXMgbm90IG92ZXJsYXlpbmcgaW1hZ2UsIGJvcmRlciBzaG91bGQgYmUgdGV4dCBjb2xvciovXG4gIEBuZXN0IC50eXBlLXNhbGVfY29sbGVjdGlvbiAmLFxuICAudHlwZS1wcm9kdWN0ICYsXG4gIC50eXBlLWJhbm5lciAmIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLnZpZGVvLWludGVyYWN0YWJsZS5wcm9tby1ncmlkX19jb250YWluZXItLWZyYW1lZDpub3QoLnByb21vLWdyaWRfX2NvbnRhaW5lci0tYm94ZWQpOmFmdGVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wcm9tby1ncmlkX19jb250YWluZXItLXRpbnQ6YmVmb3JlIHtcbiAgQG1peGluIG92ZXJsYXk7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLXRpbnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ucHJvbW8tZ3JpZF9fc2xpZGUtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLWxpbms7XG5cbiAgJjpob3ZlciB7XG4gICAgJiB+IC5wcm9tby1ncmlkX19jb250ZW50IC5idG46bm90KC5idG4tLXNlY29uZGFyeSk6bm90KC5idG4tLXRlcnRpYXJ5KTpub3QoLmJ0bi0taW52ZXJzZSkge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeUxpZ2h0O1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yNXM7XG5cbiAgICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nc3F1YXJlJ10gJixcbiAgICAgIFtkYXRhLWJ1dHRvbl9zdHlsZV49J3JvdW5kJ10gJiB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGFuaW1hdGlvbjogc2hpbmUgMC43NXMgY3ViaWMtYmV6aWVyKDAuMDEsIDAuNTYsIDEsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wcm9tby1ncmlkX19jb250ZW50IHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHBhZGRpbmc6IDJlbSAyLjVlbTsgLypSZWxhdGl2ZSB0byB0ZXh0LXNpemUqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLWNvbnRlbnQ7XG5cbiAgQG5lc3QgLnByb21vLWdyaWRfX2NvbnRhaW5lci0tZnJhbWVkOm5vdCgucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1ib3hlZCkgJiB7XG4gICAgbWFyZ2luOiAxLjVlbTtcbiAgfVxuXG4gICYgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgQG5lc3QgLnZlcnRpY2FsLXRvcCAmIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgQG5lc3QgLnZlcnRpY2FsLWNlbnRlciAmIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cblxuICBAbmVzdCAudmVydGljYWwtYm90dG9tICYge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICB9XG59XG5cbi52aWRlby1pbnRlcmFjdGFibGUgLnByb21vLWdyaWRfX2NvbnRlbnQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnByb21vLWdyaWRfX2NvbnRlbnQtLWJveGVkIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBtYXJnaW46IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbjogMTBweDtcbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fY29udGVudC0tZnJhbWVkLnByb21vLWdyaWRfX2NvbnRlbnQtLWJveGVkIHtcbiAgYm9yZGVyOiAkdGV4dEZyYW1lTWFyZ2luU21hbGwgc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBib3JkZXItd2lkdGg6ICR0ZXh0RnJhbWVNYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4vKlJhZGlhbCBncmFkaWVudCBvbiBvbmx5IHNvbWUgdHlwZXMqL1xuLnR5cGUtYWR2YW5jZWQsXG4udHlwZS1zaW1wbGUge1xuICAmIC5wcm9tby1ncmlkX19jb250ZW50Om5vdCgucHJvbW8tZ3JpZF9fY29udGVudC0tYm94ZWQpOm5vdCgucHJvbW8tZ3JpZF9fY29udGVudC0tc2FsZSkge1xuICAgIGNvbG9yOiAkY29sb3JIZXJvVGV4dDtcblxuICAgICYgYSB7XG4gICAgICBjb2xvcjogJGNvbG9ySGVyb1RleHQ7XG4gICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JIZXJvVGV4dDtcblxuICAgICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdzcXVhcmUnXSAmLFxuICAgICAgW2RhdGEtYnV0dG9uX3N0eWxlXj0ncm91bmQnXSAmIHtcbiAgICAgICAgJjpub3QoLmJ0bi0taW52ZXJzZSkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5idG4tLWludmVyc2Uge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIEBtaXhpbiBvdmVybGF5O1xuICAgICAgQG1peGluIGhlcm9SYWRpYWw7XG4gICAgICB6LWluZGV4OiAkei1pbmRleC1wcm9tby10aW50O1xuICAgIH1cbiAgfVxufVxuXG4udHlwZS1hZHZhbmNlZCxcbi50eXBlLXByb2R1Y3QsXG4udHlwZS1zYWxlX2NvbGxlY3Rpb24ge1xuICAmIC5ydGUtLXN0cm9uZyB7XG4gICAgQG1peGluIGhlYWRpbmdGb250U3RhY2s7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgfVxuXG4gICYgLnJ0ZS0tZW0ge1xuICAgIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gICAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5cbi50eXBlLWFkdmFuY2VkLFxuLnR5cGUtcHJvZHVjdCB7XG4gICYgLnJ0ZS0tc3Ryb25nIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAudHlwZS1hZHZhbmNlZCxcbiAgLnR5cGUtcHJvZHVjdCB7XG4gICAgJiAucnRlLS1zdHJvbmcge1xuICAgICAgZm9udC1zaXplOiAyLjEyNWVtO1xuICAgIH1cbiAgfVxuXG4gIC50eXBlLXByb2R1Y3Qge1xuICAgICYuZmxleC1ncmlkX19pdGVtLS01MCxcbiAgICAmLmZsZXgtZ3JpZF9faXRlbS0tMzMge1xuICAgICAgJiAucnRlLS1zdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDEuNmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAvKkFkZCBjb2xvciBvdmVybGF5IGlmIG5vdCBib3hlZCB2ZXJzaW9uKi9cbiAgQG5lc3QgLnByb21vLWdyaWRfX2NvbnRhaW5lcjpub3QoLnByb21vLWdyaWRfX2NvbnRhaW5lci0tYm94ZWQpICY6YmVmb3JlIHtcbiAgICBAbWl4aW4gb3ZlcmxheSAkei1pbmRleC1wcm9tby1jb2xvci1vdmVybGF5O1xuICAgIEBtaXhpbiBoZXJvU2NyaW07XG4gIH1cblxuICAmIC5wbGFjZWhvbGRlci1zdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4udmlkZW8taW50ZXJhY3RhYmxlIC5wcm9tby1ncmlkX19iZzpiZWZvcmUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnByb21vLWdyaWRfX2JnLWltYWdlIHtcbiAgei1pbmRleDogJHotaW5kZXgtaGVyby1pbWFnZTtcblxuICBAbmVzdCBbZGF0YS1hb3M9XCJpbWFnZS1mYWRlLWluXCJdLmFvcy1hbmltYXRlICYge1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAxcyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gICAgdHJhbnNpdGlvbjogbm9uZTsgLypmaXhlcyBzYWZhcmkgYW5pbWF0aW9uIGNvbmZsaWN0Ki9cbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tZnJhbWU7XG5cbiAgJiAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09IFR5cGU6IEFkdmFuY2VkID09PT09PT09PT09PT09PT09PT09PSAqL1xuLnR5cGUtYWR2YW5jZWQge1xuICAmIC5wcm9tby1ncmlkX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyZW07XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHBhZGRpbmc6IDEuNWVtO1xuICAgIH1cbiAgfVxuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgIH1cbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PSBUeXBlOiBTYWxlIENvbGxlY3Rpb24gPT09PT09PT09PT09PT09PT09PT09ICovXG4udHlwZS1zYWxlX2NvbGxlY3Rpb24ge1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC1oZWlnaHQ6IDYwMHB4O1xuXG4gICYgLnByb21vLWdyaWRfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yU21hbGxJbWFnZUJnO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmIC5wcm9tby1ncmlkX19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyZW07XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiAxZW07XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgICY6bm90KC5wcm9tby1ncmlkX19jb250ZW50LS1zbWFsbC10ZXh0KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLypDdXN0b20gdHlwb2dyYXBoeSBzdHlsZXMqL1xuICAmIC5ydGUtLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3LjVweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLnJ0ZS0tc3Ryb25nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAzLjM3NWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAvKkN1c3RvbSB0eXBlIGxheW91dCBmb3IgXCJvZmZcIiB3aGVuIGZvbGxvd2luZyBcIiVcIiovXG4gICYgc21hbGwge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmb250LXNpemU6IDAuMjVlbTtcbiAgICBtYXJnaW4tbGVmdDogLTIuOWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICB9XG59XG5cbi50eXBlLXNhbGUtaW1hZ2VzIHtcbiAgZmxleDogMSAxIDUwJTtcblxuICAmIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuXG4udHlwZS1zYWxlLWltYWdlc19fY3JvcCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udHlwZS1zYWxlLWltYWdlc19faW1hZ2Uge1xuICB3aWR0aDogNTAlO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT0gVHlwZTogU2ltcGxlID09PT09PT09PT09PT09PT09PT09PSAqL1xuLnR5cGUtc2ltcGxlIHtcbiAgJiAucHJvbW8tZ3JpZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMSk7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG4gIH1cbn1cblxuLnByb21vLWdyaWRfX3RpdGxlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PSBUeXBlOiBJbWFnZSA9PT09PT09PT09PT09PT09PT09PT0gKi9cbi50eXBlLWltYWdlIHtcbiAgJiAucHJvbW8tZ3JpZF9fY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgJiBpbWcsXG4gICYgYSxcbiAgJiAuaW1hZ2Utd3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09IFR5cGU6IEJhbm5lciA9PT09PT09PT09PT09PT09Ki9cbi50eXBlLWJhbm5lciB7XG4gIGZsZXg6IDEgMCAxMDAlO1xuXG4gICYgLnByb21vLWdyaWRfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxuXG4gICYgLnByb21vLWdyaWRfX2NvbnRhaW5lci0tZnJhbWVkOm5vdCgucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1ib3hlZCkge1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgfVxuXG4gICYgcCB7XG4gICAgbWFyZ2luOiA1cHggMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG59XG5cbi50eXBlLWJhbm5lcl9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbGV4OiAxIDEgMTAwJTtcbn1cblxuLnR5cGUtYmFubmVyX19jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwIDEwcHg7XG59XG5cbi50eXBlLWJhbm5lcl9fdGV4dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMCAxIGF1dG87XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLXRleHQ7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbn1cblxuLnR5cGUtYmFubmVyX19pbWFnZSB7XG4gIGZsZXg6IDAgMCA0NSU7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGZsZXg6IDAgMCAyMDBweDtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT0gVHlwZTogUHJvZHVjdCA9PT09PT09PT09PT09PT09Ki9cbi50eXBlLXByb2R1Y3RfX3dyYXBwZXIge1xuICBmbGV4OiAxIDEgMTAwJTtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDJlbSAwO1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby1jb250ZW50O1xuXG4gICYucHJvbW8tZ3JpZF9fY29udGFpbmVyLS10aW50IHtcbiAgICBwYWRkaW5nOiAyZW07XG4gIH1cblxuICBAbmVzdCAucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1mcmFtZWQgJiB7XG4gICAgcGFkZGluZzogMmVtO1xuICB9XG59XG5cbi50eXBlLXByb2R1Y3RfX2NvbnRlbnQge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4udHlwZS1wcm9kdWN0X19pbWFnZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDEwcHggMCAxMHB4IDEwcHg7XG59XG5cbi50eXBlLXByb2R1Y3RfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG5cbiAgJjpudGgtY2hpbGQoMikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDQwcHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzMCU7XG4gIH1cbn1cblxuLnR5cGUtcHJvZHVjdF9fbGFiZWxzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMHB4O1xuICByaWdodDogLTEwcHg7XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLXRleHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAmIC5mbGV4LWdyaWRfX2l0ZW0tLTUwLFxuICAgICYgLmZsZXgtZ3JpZF9faXRlbS0tMzMge1xuICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB9XG4gIH1cbn1cblxuLnR5cGUtcHJvZHVjdF9fbGFiZWwge1xuICBwYWRkaW5nOiA0cHggMTJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICBmbG9hdDogcmlnaHQ7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udHlwZS1wcm9kdWN0X19sYWJlbC0tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xufVxuIiwiLnN0b3JlLWF2YWlsYWJpbGl0eSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXG4gICYgLmljb24ge1xuICAgIG1hcmdpbjogNnB4IDAgMDtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gIH1cblxuICAmIC5pY29uLWluLXN0b2NrIHtcbiAgICBmaWxsOiAkc3VjY2Vzc0dyZWVuO1xuICB9XG5cbiAgJiAuaWNvbi1vdXQtb2Ytc3RvY2sge1xuICAgIGZpbGw6ICRlcnJvclJlZDtcbiAgfVxuXG4gICYgKyAuc3RvcmUtYXZhaWxhYmlsaXR5IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5cbi5zdG9yZS1hdmFpbGFiaWxpdHlfX2luZm8ge1xuICBmbGV4OiAwIDEgOTAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMTBweDtcblxuICAmID4gZGl2IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5zdG9yZS1hdmFpbGFiaWxpdHlfX3NtYWxsIHtcbiAgZm9udC1zaXplOiAwLjhlbTtcblxuICAmIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbn1cblxuLnN0b3JlLWF2YWlsYWJpbGl0eV9fc21hbGwtLWxpbmsge1xuICBAbmVzdCAubW9kYWwgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLmFnZS12ZXJpZmljYXRpb24tcG9wdXAge1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcblxuICAmLmFnZS12ZXJpZmljYXRpb24tcG9wdXAtLWltYWdlLWZhbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJvZHkpO1xuXG4gICAgJi5tb2RhbDpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5KTtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmIC5tb2RhbF9faW5uZXIge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLm1vZGFsLS1tb2JpbGUtZnJpZW5kbHkubW9kYWwtLXNxdWFyZSAubW9kYWxfX2NlbnRlcmVkLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yRHJhd2Vycyk7XG4gIH1cbn1cbiIsIi8qIENhcnQgcGFnZSBsYXlvdXQgKi9cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmNhcnRfX3BhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gIC5jYXJ0X19wYWdlLWNvbDpmaXJzdC1jaGlsZCB7XG4gICAgZmxleDogMSAxIDYwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgfVxuXG4gIC5jYXJ0X19wYWdlLWNvbDpsYXN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMTAlO1xuICAgIGZsZXg6IDAgMSAzNSU7XG4gICAgcGFkZGluZzogMzBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgQG1peGluIG92ZXJsYXkgLTE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5KTtcbiAgICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgfVxuICB9XG59XG5cbi5jYXJ0X19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cblxuLmNhcnRfX2ltYWdlIHtcbiAgZmxleDogMCAwIDE1MHB4O1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdyaWQtZ3V0dGVyKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qU21hbGxlciBpbWFnZSBpbiBkcmF3ZXIqL1xuICBAbmVzdCAuZHJhd2VyICYge1xuICAgIGZsZXg6IDAgMCAxMDBweDtcbiAgfVxufVxuXG4uY2FydF9faXRlbS1kZXRhaWxzIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNhcnRfX2l0ZW0tdGl0bGUge1xuICBmbGV4OiAxIDEgMTAwJTtcblxuICBAbmVzdCAuZHJhd2VyICYge1xuICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIH1cbn1cblxuLmNhcnRfX2l0ZW0tc3ViIHtcbiAgZmxleDogMSAxIDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgJiA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5jYXJ0X19pdGVtLXJvdyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5jYXJ0X19yZW1vdmUge1xuICAmIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG5cbiAgLypIaWRlIGluIGRyYXdlciovXG4gIEBuZXN0IC5kcmF3ZXIgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2FydF9fY2hlY2tvdXQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNhcnRfX2l0ZW0tbmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDFweCk7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuLmNhcnRfX2l0ZW0tLXZhcmlhbnRzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAmIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbi5jYXJ0X19wcmljZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2FydF9fcHJpY2UtLXN0cmlrZXRocm91Z2gge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLmNhcnRfX2Rpc2NvdW50IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yVGV4dFNhdmluZ3MpO1xufVxuXG4uY2FydF9fdGVybXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAmIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICB9XG59XG5cbi5jYXJ0X19jaGVja291dC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcblxuICAmIC5hZGRpdGlvbmFsLWNoZWNrb3V0LWJ1dHRvbnMge1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gIH1cbn1cblxuLmRyYXdlciAuYWRkaXRpb25hbC1jaGVja291dC1idXR0b25zIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgJiBbZGF0YS1zaG9waWZ5LWJ1dHRvbmNvbnRhaW5lcl0ge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgJiA+ICoge1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qUGF5UGFsIGJ1dHRvbiBoYXMgdW5oZWxwZnVsIHotaW5kZXgqL1xuaWZyYW1lLnpvaWQtY29tcG9uZW50LWZyYW1lIHtcbiAgei1pbmRleDogMSAhaW1wb3J0YW50O1xufVxuXG4uZHJhd2VyX19jYXJ0LWVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyYXdlci5pcy1lbXB0eSB7XG4gICYgLmRyYXdlcl9faW5uZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmIC5kcmF3ZXJfX2NhcnQtZW1wdHkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCJAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5wcm9kdWN0LXNpbmdsZV9fc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMjBweDtcblxuICAgIEBuZXN0IC5zdGlja3ktaGVhZGVyICYge1xuICAgICAgdG9wOiAxNDBweDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtLXF1aWNrLXNob3AgLnByb2R1Y3Qtc2luZ2xlX19zdGlja3kge1xuICAgIHRvcDogMDtcbiAgfVxufVxuXG4ucGFnZS1jb250ZW50LS1wcm9kdWN0IHtcbiAgcGFkZGluZy10b3A6IDU1cHg7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAucGFnZS1jb250ZW50LS1wcm9kdWN0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC5ncmlkLS1wcm9kdWN0LWltYWdlcy1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAmIC5ncmlkX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgIH1cbiAgfVxufVxuXG4vKlByZXZlbnQgcXVpY2sgdmlldyBob3Jpem9udGFsIGphbmsgd2hlbiBpbWFnZSBsb2FkcyovXG4ubW9kYWwgLnBhZ2UtY29udGVudC0tcHJvZHVjdCB7XG4gIHdpZHRoOiAkcGFnZS13aWR0aDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX21ldGEge1xuICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLS1wcm9kdWN0LWltYWdlcy1yaWdodCAmIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogNDVweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAmIC5zb2NpYWwtc2hhcmluZyB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlcjtcbiAgfVxuXG4gICYgLnJ0ZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fdmVuZG9yIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDQpO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX3Jldmlldy1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgJiAuc3ByLWJhZGdlW2RhdGEtcmF0aW5nPVwiMC4wXCJdIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiAuc3ByLWJhZGdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gIH1cblxuICAmIC5zcHItYmFkZ2Utc3RhcnJhdGluZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gIH1cblxuICAmIC5zcHItYmFkZ2UtY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSAxcHgpO1xuICB9XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fc2t1IHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gNik7XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fZGVzY3JpcHRpb24tZnVsbCB7XG4gIG1hcmdpbjogJGd1dHRlciAwO1xuXG4gICYgKyAuY29sbGFwc2libGVzLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAwO1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbjogJGd1dHRlciA5NXB4O1xuXG4gICAgJiArIC5jb2xsYXBzaWJsZXMtd3JhcHBlciB7XG4gICAgICBtYXJnaW46IDAgOTVweDtcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3Qtc2luZ2xlX192YXJpYW50cyB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLm5vLWpzICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cbn1cblxuLnByb2R1Y3QtaW1hZ2UtbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuW2RhdGEtYnV0dG9uX3N0eWxlPVwiYW5nbGVkXCJdIC5wcm9kdWN0LWltYWdlLW1haW4gLmJ0bjpub3QoLnByb2R1Y3RfX3Bob3RvLXpvb20pIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0b3A6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ucHJvZHVjdF9fdmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgLyphcHNlY3QgcmF0aW8gb3ZlcndyaXR0ZW4gaW5saW5lKi9cbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JTbWFsbEltYWdlQmc7XG5cbiAgJiBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbjtcbiAgfVxuXG4gIC8qUHV0IG92ZXJsYXkgb24gbXV0ZWQgdmlkZW9zIGJlY2F1c2UgdGhleSBjYW5ub3QgYmUgaW50ZXJhY3RlZCB3aXRoKi9cbiAgJltkYXRhLXZpZGVvLXN0eWxlPVwibXV0ZWRcIl0ubG9hZGVkOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxO1xuICB9XG5cbiAgLypVbmxlc3MgbG93IHBvd2VyIG1vZGUgcmVxdWlyZXMgdGhlbSB0byBiZSB0b3VjaGVkIHRvIHN0YXJ0Ki9cbiAgJi52aWRlby1pbnRlcmFjdGFibGU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLypNYWtlIHN1cmUgc3RhdGVzIGRvbid0IG92ZXJsYXAqL1xuICAmLmxvYWRlZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYubG9hZGluZyBpZnJhbWUge1xuICAgIG9wYWNpdHk6IDAuMDE7IC8qc25lYWt5IHdheSB0byBhdm9pZCB0YWxraW5nIHRvIGFuIGludmlzaWJsZSBZVCBpZnJhbWUqL1xuICB9XG5cbiAgJi5sb2FkZWQgaWZyYW1lIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5wcm9kdWN0X192aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ucHJvZHVjdC12aWRlby10cmlnZ2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLypJbWFnZXMqL1xuLnByb2R1Y3RfX3Bob3Rvcy0tYmVzaWRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9kdWN0X19waG90b3Mge1xuICBkaXJlY3Rpb246IGx0cjtcblxuICAmIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnByb2R1Y3RfX21haW4tcGhvdG9zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcGFnZS13aWR0aC1ndXR0ZXItc21hbGw7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuXG4gICAgJiAuZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4vKkhpZGUgc2VsZWN0YWJsZSBlbGVtZW50cyB3aGVuIHNsaWRlIGlzIG5vdCBhY3RpdmUqL1xuLnByb2R1Y3QtbWFpbi1zbGlkZTpub3QoLmlzLXNlbGVjdGVkKSB7XG4gICYgYnV0dG9uLFxuICAmIHZpZGVvLFxuICAmIGlmcmFtZSxcbiAgJiBtb2RlbC12aWV3ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByb2R1Y3QtbWFpbi1zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC8qSGlkZSBhbGwgYnV0IGZpcnN0IHNsaWRlIHRvIHByZXZlbnQgcGFnZSByZWZsb3dzIHByaW9yIHRvIGluaXQqL1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBuZXN0IC5mbGlja2l0eS1zbGlkZXIgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAvKnNob3cgYSBiaXQgb2YgdGhlIG5leHQgaW1hZ2UqL1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgQG5lc3QgLmdyaWQtLXByb2R1Y3QtaW1hZ2VzLS1wYXJ0aWFsICYge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1icyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb2R1Y3RfX3RodW1icy0tYmVsb3cge1xuICBtYXJnaW4tdG9wOiBjYWxjKCRncmlkLWd1dHRlci1zbWFsbCAvIDIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWJzLS1iZXNpZGUge1xuICBmbGV4OiAwIDAgNjBweDtcbiAgbWF4LXdpZHRoOiA2MHB4O1xuICBtYXJnaW4tbGVmdDogY2FsYygkZ3JpZC1ndXR0ZXItc21hbGwgLyAyKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZmxleDogMCAwIDgwcHg7XG4gICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCRndXR0ZXIgLyAyKTtcblxuICAgICYucHJvZHVjdF9fdGh1bWJzLXBsYWNlbWVudC0tbGVmdCB7XG4gICAgICBvcmRlcjogLTE7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygkZ3V0dGVyIC8gMik7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0X190aHVtYnMtLXNjcm9sbGVyIHtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIEBuZXN0IC5wcm9kdWN0X190aHVtYnMtLWJlbG93ICYge1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgQG5lc3QgLnByb2R1Y3RfX3RodW1icy0tYmVzaWRlICYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9XG59XG5cbi5wcm9kdWN0X190aHVtYi1pdGVtIHtcbiAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgJiBhOmZvY3VzLFxuICAmIGEuaXMtYWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkY29sb3JUZXh0Qm9keTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG5cbiAgLypEb24ndCBwcmUtZm9jdXMgdGh1bWJuYWlscyovXG4gICYgYTphY3RpdmU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG5cbiAgQG5lc3QgLnByb2R1Y3RfX3RodW1icy0tYmVzaWRlICYge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGdyaWQtZ3V0dGVyLXNtYWxsIC8gMik7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCAucHJvZHVjdF9fdGh1bWJzLS1iZWxvdyAmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGdyaWQtZ3V0dGVyLXNtYWxsIC8gMik7XG4gICAgbWF4LXdpZHRoOiA4MHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdF9fcHJpY2Uge1xuICBjb2xvcjogJGNvbG9yUHJpY2U7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDJweCk7XG5cbiAgJi5vbi1zYWxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuLypVc2VkIGFueXdoZXJlIHVuaXQgcHJpY2UgaXMgdmlzaWJsZSovXG4ucHJvZHVjdF9fdW5pdC1wcmljZSB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLnByb2R1Y3RfX3VuaXQtcHJpY2UtLXNwYWNpbmcge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4ucHJvZHVjdF9fcHJpY2UtLWNvbXBhcmUge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi5wcm9kdWN0X19wcmljZS1zYXZpbmdzIHtcbiAgY29sb3I6ICRjb2xvclRleHRTYXZpbmdzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKlF1YW50aXR5IHNlbGVjdG9yIGFuZCBsYWJlbCovXG4ucHJvZHVjdF9fcXVhbnRpdHkge1xuICAmIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5wcm9kdWN0LWZvcm0taG9sZGVyLS1sb2FkZWQge1xuICBhbmltYXRpb246IGZhZGUtaW4gMXMgZWFzZTtcbn1cblxuLypIaWRlIFNob3BpZnkgUGF5bWVudCBCdXR0b25zIGlmIG5vIHZhcmlhbnQqL1xuLmFkZC10by1jYXJ0W2Rpc2FibGVkXSArIC5zaG9waWZ5LXBheW1lbnQtYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogV2hlbiBpbWFnZSBzZXRzIGFyZSBlbmFibGVkLCBoaWRlIHNsaWRlcyB0aGF0IGFyZW4ndCBpbiB0aGUgc2xpZGVyICovXG4ucHJvZHVjdC1zbGlkZXNob3cuZmxpY2tpdHktZW5hYmxlZCB7XG4gICYgLnByb2R1Y3QtbWFpbi1zbGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXZpZXdwb3J0IC5wcm9kdWN0LW1haW4tc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8qWm9vbSBidXR0b24qL1xuLnByb2R1Y3RfX3Bob3RvLXpvb20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgY3Vyc29yOiB6b29tLWluO1xuXG4gIC8qT25seSBzaG93IGFjdGl2ZSBzbGlkZSdzIHpvb20gYnV0dG9uIChtb2JpbGUpKi9cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogNnB4O1xuXG4gICAgQG5lc3QgLnByb2R1Y3RfX21haW4tcGhvdG9zICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAvKkhpZGUgem9vbSBidXR0b24gb24gYWxsIHNsaWRlcyovXG4gICAgQG5lc3QgLnByb2R1Y3Qtc2xpZGVzaG93ICYge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLW91dDtcbiAgICB9XG5cbiAgICBAbmVzdCAucHJvZHVjdC1zbGlkZXNob3cgLmlzLXNlbGVjdGVkICYge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAvKlZpc3VhbGx5IGhpZGRlbiwgY292ZXJzIGZ1bGwgaW1hZ2Ugb24gZGVza3RvcCovXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJiBzdmcsXG4gICAgJiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qVGh1bWIgc2xpZGVyIGFycm93cyovXG4ucHJvZHVjdF9fdGh1bWItYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiAyO1xuXG4gICYgLmljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNnB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWJzW2RhdGEtcG9zaXRpb249XCJiZWxvd1wiXSAucHJvZHVjdF9fdGh1bWItYXJyb3cge1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDI1cHg7XG5cbiAgJi5wcm9kdWN0X190aHVtYi1hcnJvdy0tcHJldiB7XG4gICAgbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgJi5wcm9kdWN0X190aHVtYi1hcnJvdy0tbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1ic1tkYXRhLXBvc2l0aW9uPVwiYmVzaWRlXCJdIC5wcm9kdWN0X190aHVtYi1hcnJvdyB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYgLmljb24ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgfVxuXG4gICYucHJvZHVjdF9fdGh1bWItYXJyb3ctLXByZXYge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgJi5wcm9kdWN0X190aHVtYi1hcnJvdy0tbmV4dCB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiA+IC5pbWFnZS13cmFwIGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1iLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICByaWdodDogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIHBhZGRpbmc6IDZweDtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gIGZvbnQtc2l6ZTogMDtcblxuICBAbmVzdCAuYW9zLWFuaW1hdGUgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYgLmljb24ge1xuICAgIGZpbGw6ICRjb2xvckJvZHk7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0X19wb2xpY2llcyB7XG4gIGZvbnQtc2l6ZTogMC44NWVtO1xufVxuXG4uc2hvcGlmeS1wYXltZW50LXRlcm1zIHtcbiAgbWFyZ2luOiAxMnB4IDA7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBuZXN0IC5tb2RhbCAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIudGVtcGxhdGUtYmxvZyAuYXJ0aWNsZSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAqIDEuNSk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAqIDMpO1xuICB9XG59XG5cbi50ZW1wbGF0ZS1ibG9nIC5hcnRpY2xlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgKiAxLjUpO1xuICB9XG59XG5cbi5hcnRpY2xlX19ib2R5IHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cbn1cblxuLmFydGljbGVfX2NvbW1lbnQge1xuICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiLnBhc3N3b3JkLXBhZ2VfX2hlYWRlcl9fZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5wYXNzd29yZC1wYWdlX19sb2dvIHtcbiAgJiBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYgLmxvZ28ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ucGFzc3dvcmQtbG9naW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDQpIDE1cHg7XG59XG5cbi5wYXNzd29yZC1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4ucGFzc3dvcmRfX2xvY2sgLmljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTJweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5pY29uLXNob3BpZnktbG9nbyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbiNMb2dpbk1vZGFsIC5tb2RhbF9fY2xvc2Uge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbiNMb2dpbk1vZGFsIC5tb2RhbF9faW5uZXIge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IDQwdmg7XG4gIH1cbn1cblxuLnBhc3N3b3JkLWFkbWluLWxpbmsge1xuICBtYXJnaW46IDA7XG5cbiAgJiBhIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JCb3JkZXIgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLnRlbXBsYXRlLWdpZnRjYXJkLFxuLnRlbXBsYXRlLWdpZnRjYXJkIGJvZHkge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuXG4gICYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi50ZW1wbGF0ZS1naWZ0Y2FyZCAucGFnZS13aWR0aCB7XG4gIG1heC13aWR0aDogNTg4cHg7XG59XG5cbi5naWZ0Y2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAyKSAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLnRlbXBsYXRlLWdpZnRjYXJkIC5zaG9wLXVybCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5naWZ0Y2FyZF9fYm9yZGVyIHtcbiAgcGFkZGluZzogMS41ZW07XG4gIGJveC1zaGFkb3c6IDAgMTBweCAzMHB4IHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuLmdpZnRjYXJkX19jb250ZW50IHtcbiAgQG1peGluIGNsZWFyZml4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG59XG5cbi5naWZ0Y2FyZF9faGVhZGVyIHtcbiAgQG1peGluIGNsZWFyZml4O1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuLmdpZnRjYXJkX190aXRsZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ2lmdGNhcmRfX3RhZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRjb2xvckJvZHk7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDMpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogLjA1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZ2lmdGNhcmRfX3RhZy0tYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xufVxuXG4uZ2lmdGNhcmRfX3dyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMikgY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlcjtcblxuICAmIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG4uZ2lmdGNhcmRfX2NvZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogJGd1dHRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogNTA7XG59XG5cbi5naWZ0Y2FyZF9fY29kZS0tbWVkaXVtIHtcbiAgZm9udC1zaXplOiAuODc1ZW07XG59XG5cbi5naWZ0Y2FyZF9fY29kZS0tc21hbGwge1xuICBmb250LXNpemU6IC43NWVtO1xufVxuXG4uZ2lmdGNhcmRfX2NvZGVfX2lubmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgbWF4LXdpZHRoOiA0NTBweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLDAsMCwwLjEpO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLDAsMCwwLjEpO1xuXG4gIEBuZXN0IC5naWZ0Y2FyZF9fY29kZS0tc21hbGwgJiB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbn1cblxuLmdpZnRjYXJkX19jb2RlX190ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjg3NWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IGRhc2hlZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHBhZGRpbmc6IC40ZW0gLjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgQG5lc3QgLmRpc2FibGVkICYge1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICB9XG59XG5cbi5naWZ0Y2FyZF9fYW1vdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAyLjc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB6LWluZGV4OiA1MDtcblxuICAmIHN0cm9uZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1zaGFkb3c6IDNweCAzcHggMCByZ2JhKDAsMCwwLDAuMSk7XG4gIH1cbn1cblxuLmdpZnRjYXJkX19hbW91bnQtLW1lZGl1bSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4udG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgei1pbmRleDogMztcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTAwJTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgIzMzMztcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgcmdiYSg1MSw1MSw1MSwwLjkpO1xuICB9XG59XG5cbi50b29sdGlwX19sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAtNTAlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgYmFja2dyb3VuZDogcmdiYSg1MSw1MSw1MSwwLjkpO1xuICBtaW4taGVpZ2h0OiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBwYWRkaW5nOiAuNWVtIC43NWVtO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07XG5cbiAgJiBzbWFsbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFlbTtcbiAgICBjb2xvcjogI2IzYjNiMztcbiAgICBmb250LXNpemU6IC44NzVlbTtcbiAgfVxufVxuXG4uZ2lmdGNhcmRfX2luc3RydWN0aW9ucyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGNhbGMoJGd1dHRlciAvIDIpICRndXR0ZXI7XG59XG5cbi5naWZ0Y2FyZF9fYWN0aW9ucyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xufVxuXG4udGVtcGxhdGUtZ2lmdGNhcmQgLmFjdGlvbi1saW5rIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgdG9wOiA1MCU7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogLjJlbTtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi50ZW1wbGF0ZS1naWZ0Y2FyZCAuYWN0aW9uLWxpbmtfX3ByaW50IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIHdpZHRoOiAxN3B4O1xuICBoZWlnaHQ6IDE3cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvL2Nkbi5zaG9waWZ5LmNvbS9zL2Fzc2V0cy9naWZ0LWNhcmQvaWNvbi1wcmludC0xNjRkYWExYWUzMmQxMGQxZjliODNhYzIxYjZmMmM3MC5wbmcnKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xufVxuXG4uZ2lmdGNhcmRfX2Zvb3RlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMikgMDtcbn1cblxuI1FyQ29kZSB7XG4gICYgaW1nIHtcbiAgICBwYWRkaW5nOiAkZ3V0dGVyO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBtYXJnaW46IDAgYXV0byAkZ3V0dGVyO1xuICB9XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuZ2lmdGNhcmQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC5naWZ0Y2FyZC1oZWFkZXIge1xuICAgIHBhZGRpbmc6ICRndXR0ZXIgMDtcbiAgfVxuXG4gIC5oZWFkZXItbG9nbyB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gIH1cblxuICAuZ2lmdGNhcmRfX2JvcmRlciB7XG4gICAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cblxuICAuZ2lmdGNhcmRfX2FjdGlvbnMge1xuICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgLmdpZnRjYXJkX19hY3Rpb25zIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLnRlbXBsYXRlLWdpZnRjYXJkIC5hY3Rpb24tbGluayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT0gU21hbGwgd2lkdGggPT09PT09PT09PT09PT09PSovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MDBweCkge1xuICAuZ2lmdGNhcmRfX2Ftb3VudCBzdHJvbmcge1xuICAgIHRleHQtc2hhZG93OiAycHggMnB4IDAgcmdiYSgwLDAsMCwwLjEpO1xuICB9XG5cbiAgLmdpZnRjYXJkX193cmFwOmJlZm9yZSxcbiAgLmdpZnRjYXJkX193cmFwOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmdpZnRjYXJkX19jb2RlIHtcbiAgICBmb250LXNpemU6IC43NWVtO1xuICB9XG5cbiAgLmdpZnRjYXJkX19jb2RlLS1tZWRpdW0ge1xuICAgIGZvbnQtc2l6ZTogLjY1ZW07XG4gIH1cblxuICAuZ2lmdGNhcmRfX2NvZGUtLXNtYWxsIHtcbiAgICBmb250LXNpemU6IC41NWVtO1xuICB9XG59XG5cblxuLyo9PT09PT09PT09PT09PT09IFNtYWxsIGhlaWdodCA9PT09PT09PT09PT09PT09Ki9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA4MDBweCkge1xuICAuaGVhZGVyLWxvZ28gaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA5MHB4O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtO1xuICB9XG5cbiAgcCwgaDIsIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuXG4gIGgyLCBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cblxuICBodG1sLCBib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG5cbiAgLmdpZnRjYXJkLWhlYWRlciB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICB9XG5cbiAgLmdpZnRjYXJkX19jb250ZW50LFxuICAuZ2lmdGNhcmRfX2JvcmRlciB7XG4gICAgYm9yZGVyOiAwIG5vbmU7XG4gIH1cblxuICAuc2l0ZS1oZWFkZXJfX2xvZ28tbGluayBpbWc6bnRoLWNoaWxkKDIpLFxuICAuZ2lmdGNhcmRfX2FjdGlvbnMsXG4gIC5naWZ0Y2FyZF9fd3JhcDpiZWZvcmUsXG4gIC5naWZ0Y2FyZF9fd3JhcDphZnRlcixcbiAgLnRvb2x0aXAsXG4gIC5hZGQtdG8tYXBwbGUtd2FsbGV0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmdpZnRjYXJkX190aXRsZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmdpZnRjYXJkX19jb2RlX190ZXh0IHtcbiAgICBjb2xvcjogIzU1NTtcbiAgfVxuXG4gIC50ZW1wbGF0ZS1naWZ0Y2FyZCAuc2hvcC11cmwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnRlbXBsYXRlLWdpZnRjYXJkIC5sb2dvIHtcbiAgICBjb2xvcjogIzU4Njg2RjtcbiAgfVxufVxuIl19 */