/** Shopify CDN: Minification failed

Line 13600:480633 Expected "}" to go with "{"

**/
@charset "UTF-8";

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

@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;
  }
}

.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;
  width:100%;
}

.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;
  opacity:0;
  visibility:hidden;
}

.countdown__display--loaded{
  opacity:1;
  transition:opacity 0.3s ease-in;
  visibility:visible;
}

.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;
  }

[dir=rtl] .countdown__display-block:last-child{
      border-right:1px solid;
    }

[dir=rtl] .countdown__display-block:first-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{
  background-color:transparent;
  border:0;
  height:100%;
  left:0;
  position:absolute;
  top:0;
  width:100%;
}

.hotspot__button{
  background-color:#000;
  border-radius:50%;
  color:#fff;
  left:38%;
  line-height:0;
  padding:10px;
  position:absolute;
  top:38%;
  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-image-wrapper{
      display:flex;
    }

      .hotspot-content__block .grid__item-image-wrapper .grid-product__image-mask{
        flex:0 0 30%;
      }

    .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:112px;
}

.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;
}

.countdown__background-image-wrapper image-element,.fading-images__item-wrapper image-element,.grid__image-ratio image-element,.image-wrap:not(.image-wrap__thumbnail) image-element,.social-section__image-wrapper image-element,.svg-mask image-element{
    height:100%;
    left:0;
    position:absolute;
    top:0;
    width:100%;
  }

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

.image-element{
  opacity:0;
}

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

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

[data-animate_images=false] .image-element{
    opacity:1;
}

[data-media-gallery-layout=stacked] .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;
}

[data-media-gallery-layout=stacked] .aos-animate[data-aos=image-fade-in] .image-element{
      animation:none;
}

.aos-animate[data-aos=image-fade-in] .image-element.scheme-image{
      animation:none;
    }

.aos-animate[data-aos=image-fade-in] .image-element.hero__image{
      animation:none;
    }

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

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

.rte div[style*="text-align: center"] img,.rte p[style*="text-align: center"] img{
    margin-left:auto;
    margin-right:auto;
  }

.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:not(.icon),.svg-mask video{
    height:100% !important;
    -o-object-fit:cover !important;
       object-fit:cover !important;
    position:absolute !important;
  }

.svg-mask img,.svg-mask svg:not(.icon),.svg-mask video{
    -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:not(.icon),.svg-mask--rounded-top video{
  border-top-left-radius:50%;
  border-top-right-radius:50%;
}

.svg-mask--rounded img,.svg-mask--rounded svg:not(.icon),.svg-mask--rounded video{
  border-radius:50%;
}

.svg-mask--star img,.svg-mask--star svg:not(.icon),.svg-mask--star video{
  -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:not(.icon),.svg-mask--rounded-wave video{
  -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:not(.icon),.svg-mask--splat-1 video{
  -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:not(.icon),.svg-mask--splat-2 video{
  -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:not(.icon),.svg-mask--splat-3 video{
  -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:not(.icon),.svg-mask--splat-4 video{
  -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%;
}

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

.feature-row-wrapper .feature-row__images{
    padding-top:30px;
}
  }

.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{
  direction:ltr;
  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;
}

.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);
  }
  to{
    transform:translateX(-50%);
  }
}

@keyframes scrolling-text-right{
  0%{
    transform:translateX(-50%);
  }
  to{
    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;
}

.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:var(--colorModalBg);
  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;
  padding-left:16px;
  padding-right:16px;
  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;
}
  }

[dir=rtl] .btn--search{
    left:15px;
    right:auto;
}

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

[dir=rtl] .btn--search{
      left: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 #predictive-search-products{
  margin-bottom:20px;
}

.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;
  }
}

.recipient-form{
  display:block;
  margin:2em auto;
  position:relative;
}

.recipient-form .field{
    position:relative;
  }

.recipient-form .field__label{
    color:inherit;
    left:0;
    margin:0;
    padding:8px 10px;
    pointer-events:none;
    position:absolute;
    top:0;
    transform-origin:0 0;
    transition:opacity .1s ease-in-out,transform .1s ease-in-out;
  }

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

.recipient-form .field__label{
      padding:10px;
  }
    }

.recipient-form .field__label:not(.variant__button-label):not(.text-label),.recipient-form label:not(.variant__button-label):not(.text-label){
    font-weight:400;
  }

.recipient-form .field__input{
    margin-bottom:1.5em;
  }

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

.recipient-form .field__input{
      margin-bottom:0.6em;
  }
    }

.recipient-form .field__input.text-area{
      height:150px;
      margin-bottom:0;
    }

.recipient-form .field__input::-webkit-input-placeholder{
      color:transparent;
    }

.recipient-form .field__input::-moz-placeholder{
      color:transparent;
    }

.recipient-form .field__input:not(:-moz-placeholder-shown)~label{
      font-size:0.8em;
      opacity:0.65;
      transform:scale(0.85) translateY(-0.4em) translateX(0.15em);
    }

.recipient-form .field__input:focus~label,.recipient-form .field__input:not(:placeholder-shown)~label{
      font-size:0.8em;
      opacity:0.65;
      transform:scale(0.85) translateY(-0.4em) translateX(0.15em);
    }

.recipient-form .field__input:not(:-moz-placeholder-shown){
      padding:16px 10px 0;
    }

.recipient-form .field__input:focus,.recipient-form .field__input:not(:placeholder-shown){
      padding:16px 10px 0;
    }

.recipient-form .field__input--error{
    background-color:#fff6f6;
    border-color:#d02e2e;
    color:#d02e2e;
  }

.recipient-form .field__input--error~label{
      color:#d02e2e;
    }

.recipient-form .recipient-form__checkbox-wrapper{
    align-items:center;
    display:flex;
    margin-bottom:2em;
  }

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

.recipient-form .recipient-form__checkbox-wrapper{
      margin-bottom:1.5em;
  }
    }

.recipient-form input[type=checkbox]{
    background-color:inherit;
    border:1px solid;
    border-color:var(--colorBorder);
    border-radius:0;
    height:16px;
    width:16px;
  }

.recipient-form .checkbox-label{
    cursor:pointer;
    display:block;
    margin-bottom:0;
  }

.recipient-form .recipient-form-field-label--space-between>span{
    font-size:0.8em;
  }

.recipient-form .recipient-fields{
    display:none;
  }

*,: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:-22px;
  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;
    }
}

.text-column__grid{
  display:grid;
  gap:22px;
  grid-template-columns:1fr;
}

@media (min-width:769px){
  .text-column__grid{
    display:grid;
    grid-template-columns:repeat(6, 1fr);
  }
  .text-column__grid>*{
    grid-column:span 3;
  }
  .text-column__grid:has(>:nth-child(3):last-child)>*{
    grid-column:span 2;
  }
  .text-column__grid:has(>:nth-child(odd):last-child:not(:nth-child(3)))>:nth-last-child(-n+3){
    grid-column:span 2;
  }
}

.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:left !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=center] .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;
}

@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:700px;
}
  }

.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:var(--typeBodySizeMobile);
  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(--typeBodySize);
}
  }

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:var(--typeAccentSmallSize);
  letter-spacing:var(--typeUppercaseSpacing);
  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:var(--typeH1SizeMobile);
}

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

.h1,h1{
    font-size:var(--typeH1Size);
}
  }

.h2,h2{
  font-size:var(--typeH2SizeMobile);
}

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

.h2,h2{
    font-size:var(--typeH2Size);
}
  }

.h3,h3{
  font-size:var(--typeH3SizeMobile);
}

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

.h3,h3{
    font-size:var(--typeH3Size);
}
  }

.h4,h4{
  font-size:var(--typeAccentSmallSize);
  letter-spacing:var(--typeUppercaseSpacing);
  text-transform:uppercase;
}

.h5,.h6,h5,h6{
  font-size:var(--typeAccentSmallSize);
  letter-spacing:var(--typeUppercaseSpacing);
  margin-bottom:10px;
  text-transform:uppercase;
}

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

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

.subheading{
  letter-spacing:var(--typeUppercaseSpacing);
  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:var(--typeBodySmallSize);
  margin-top:3px;
}

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

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

.ajaxcart__subtotal{
  font-size:var(--typeAccentSmallSize);
  letter-spacing:var(--typeUppercaseSpacing);
  text-transform:uppercase;
}

.rte .enlarge-text{
    font-size:var(--typeEnlargeTextSize);
    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:var(--typeBodySmallSize);
  }
}

.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 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{
  -webkit-appearance:none;
  -moz-appearance:none;
  background:var(--colorBtnPrimary);
  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:var(--typeUppercaseSpacing);
  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{
    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{
    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]{
    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{
      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{
        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{
    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{
      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{
      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{
      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{
        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{
        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^=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){
      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^=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{
        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^=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{
        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^=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{
        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^=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{
        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;
}

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

[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:400;
}

.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=center] .collapsible-trigger-btn{
    text-align:center;
}

.collapsible-trigger-btn{
  display:block;
  font-size:var(--typeAccentSmallSize);
  letter-spacing:var(--typeUppercaseSpacing);
  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:var(--typeBodySizeMobile);
    padding:0 20px 20px;
  }

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

.collapsible-trigger-btn--borders+.collapsible-content .collapsible-content__inner{
      font-size:var(--typeBodySize);
  }
    }

.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:var(--colorTextBody);
}

[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=center] .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:var(--colorBorder);
  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;
}

svg.icon circle,svg.icon ellipse,svg.icon g,svg.icon line,svg.icon path,svg.icon polygon,svg.icon polyline,svg.icon rect,symbol.icon circle,symbol.icon ellipse,symbol.icon g,symbol.icon line,symbol.icon path,symbol.icon polygon,symbol.icon polyline,symbol.icon rect{
      fill:inherit;
      stroke:inherit;
    }

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

svg.icon-cart circle{
  fill:currentColor;
}

.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);
  }

.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.45s;
  }

.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;
  }

@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;
}

.image-wrap{
  background:var(--colorSmallImageBg);
  overflow:hidden;
  position:relative;
}

.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;
}

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=center] product-recommendations[data-intent=complementary] .grid-product__colors{
    justify-content:flex-start;
  }

@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=center] .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:var(--colorFooter);
  color:var(--colorFooterText);
  padding-bottom:30px;
}

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

.site-footer{
    padding-bottom:60px;
    padding-top:60px;
}
  }

.site-footer .footer__collapsible{
    font-size:var(--typeBodySmallSize);
  }

@media only screen and (min-width:769px){
    .site-footer input,.site-footer select,.site-footer textarea{
      font-size:var(--typeBodySmallSize);
    }
  }

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

[data-center-text=center] .site-footer{
    text-align:center;
}

.site-footer{
    padding-bottom:0;
}
      .site-footer .grid__item:after{
        border-bottom:1px solid;
        border-bottom-color:var(--colorFooterText);
        content:"";
        display:block;
        opacity:0.12;
      }

      .site-footer .grid__item:last-child:after{
        display:none;
      }

    .site-footer button.footer__title{
      margin:0;
    }
  }

.site-footer a{
    color:var(--colorFooterText);
  }

.footer__small-text{
  font-size:var(--typeBodyExtraSmallSize);
  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:var(--colorFooterText);
}

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

.footer__title{
    margin-bottom:20px;
}
  }

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

[data-center-text=center] .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:0;
  color:var(--colorFooterText);
  max-width:300px;
  padding:10px 45px 10px 0;
  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);
  padding:0;
  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:var(--typeBodySmallSize);
}

.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=center] .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;
  }

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

.footer__follow-on-shop{
    margin:15px 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),.rte-setting a:not(.rte__image):not(.btn){
    background-image:linear-gradient(currentColor, currentColor);
    background-position:0 100%;
    background-repeat:no-repeat;
    background-size:0% 2px;
    -webkit-text-decoration:underline;
    text-decoration:underline;
    text-decoration-color:var(--colorTextBodyAlpha015);
    text-decoration-thickness:1px;
    text-underline-offset:3px;
    transition:background-size 0.5s ease;
  }

.rte a:not(.rte__image):not(.btn):hover,.rte-setting a:not(.rte__image):not(.btn):hover{
    background-size:100% 2px;
  }

.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;
}

.rte b,.rte strong,.rte-setting b,.rte-setting strong{
  font-weight:700;
}

.header-layout{
  display:flex;
  justify-content:space-between;
}

.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--opening,.site-header--stuck{
    position:static;
    transform:none;
    transition:none;
  }
}

.site-header--opening{
  transform:translateZ(0);
  transition:transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.has-sticky-announcement-bar .site-header--opening{
    transform:translate3d(0, var(--sticky-announcement-bar-height, 0), 0);
}

.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-sticky-wrapper:has(.site-header--stuck):has(details[open]),.header-sticky-wrapper:not(:has(.header-wrapper--sticky)):has(details[open]){
    z-index:30;
  }

.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=center] .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:var(--typeBodySmallSize);
}

.toolbar a{
    color:var(--colorNavText);
  }

.site-header--stuck .toolbar{
    display:none;
}

.toolbar--transparent{
  background-color:transparent;
  border-bottom:none;
  color:#fff;
}

.toolbar--transparent a{
    color:#fff;
  }

.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 a{
    display:block;
    padding:5px;
  }

.toolbar__social .icon{
    height:16px;
    position:relative;
    top:-2px;
    width:16px;
  }

.section-header{
  margin-bottom:30px;
}

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

.section-header{
    margin-bottom:50px;
}
  }

[data-type_headers_align_text=center] .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;
  overflow-wrap:break-word;
}

.section-header--with-link .section-header__title{
    flex:1 1 auto;
    min-width:0;
    overflow-wrap:break-word;
}

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

.section-header--hero .section-header__title{
      font-size:var(--typeH1SizeHero);
}
  }

.section-header__link{
  flex:0 1 auto;
  margin-top:25px;
}

.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.5s;
  }

[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(--colorNavText);
}

.is-light .site-nav--has-dropdown .site-nav__link--underline:after{
    border-bottom-color:#fff;
}

.site-nav__item:hover .site-nav__link--underline:after{
    right:0;
}

.site-nav__details{
  cursor:pointer;
}

.site-nav__details .megamenu,.site-nav__details .site-nav__dropdown{
    cursor:default;
  }

.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(--colorNav);
  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(--colorNav);
  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(--colorNav);
    color:var(--colorNavText);
  }

.site-nav__deep-dropdown{
  background-color:var(--colorNav);
  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 .site-nav__dropdown-link:focus,.site-nav__deep-dropdown .site-nav__dropdown-link:hover{
    background-color:var(--colorNavDim);
  }

.site-nav__deep-dropdown-trigger:hover .site-nav__dropdown-link--has-children{
    background-color:var(--colorNavDim);
}

.site-nav__dropdown-link--second-level:focus,.site-nav__dropdown-link--second-level:hover{
    background-color:var(--colorNavDim);
  }

.site-nav__deep-dropdown-trigger .icon-chevron-down{
  height:10px;
  position:absolute;
  right:10px;
  top:50%;
  transform:rotate(-90deg) translateX(50%);
  width:10px;
}

.site-nav__details[open] .site-nav__dropdown{
  z-index:8;
}

.site-nav--has-dropdown:has(details[open]){
  z-index:8;
}

.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 44px;
  }

.mobile-nav__child-item .collapsible-trigger__icon{
    margin-right:16px;
    padding:0;
  }

[dir=rtl] .mobile-nav__child-item .collapsible-trigger__icon{
      margin-left:16px;
      margin-right: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);
  }

[dir=rtl] .mobile-nav__toggle button{
      border-left:none;
      border-right:1px solid;
      border-right-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;
  }

[dir=rtl] .mobile-nav__grandchildlist:before{
      left:auto;
      right:17px;
    }

.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=center] .breadcrumb{
    text-align:center;
}

.breadcrumb{
  font-size:var(--typeBodySmallSize);
  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{
  color:var(--colorNavText);
  line-height:var(--typeHeaderLineHeight);
  max-height:calc(100vh - var(--header-height, 100px));
  opacity:0;
  overflow-y:auto;
  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:var(--typeBaseLineHeight);
    position:relative;
}

.megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level):after{
      border-bottom:1px solid;
      border-bottom-color:var(--colorNavText);
      bottom:0;
      content:"";
      display:block;
      left:0;
      position:absolute;
      right:100%;
      transition:right 0.5s;
    }

[data-disable-animations=true] .megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level):after{
        transition:none;
    }

.megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level):hover:after{
      right:0;
    }

.megamenu .h5,.megamenu h5{
  font-weight:700;
  margin-bottom:5px;
}

.megamenu__inner{
  align-items:flex-start;
  display:flex;
  gap:30px;
}

.megamenu__inner--center .megamenu__nav{
    grid-template-columns:repeat(auto-fit, minmax(180px, 220px));
    justify-content:center;
  }

.megamenu__nav{
  display:grid;
  flex:1 1 0%;
  gap:30px;
  grid-template-columns:repeat(auto-fill, minmax(180px, 1fr));
  min-width:0;
}

.megamenu__nav a{
    color:inherit;
  }

.megamenu__column{
  max-width:300px;
  min-width:100px;
}

.megamenu__column-image{
  margin-bottom:20px;
}

.megamenu__column-image-placeholder{
  margin-bottom:20px;
  visibility:hidden;
}

.megamenu__promos{
  display:flex;
  flex:0 0 33%;
  flex-direction:row;
  gap:30px;
  min-width:0;
  overflow:hidden;
}

.megamenu__inner:has(.megamenu__promos--before):has(.megamenu__promos--after) .megamenu__promos{
    flex-basis:16.5%;
  }

.megamenu__promo{
  color:inherit;
  display:block;
  flex:1 1 0%;
  min-width:0;
  -webkit-text-decoration:none;
  text-decoration:none;
}

.megamenu__promo:active,.megamenu__promo:hover{
    color:inherit;
    -webkit-text-decoration:none;
    text-decoration:none;
  }

.megamenu__promo-image{
  margin-bottom:15px;
}

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

.megamenu__promo-content{
  min-width:0;
  overflow-wrap:anywhere;
  padding:0 2px;
}

.megamenu__promo-heading{
  font-weight:700;
  margin-bottom:6px;
}

.megamenu__promo-heading.h4{
    font-size:1em;
  }

.megamenu__promo-text{
  font-size:calc(var(--typeBaseSize) - 1px);
  line-height:var(--typeBaseLineHeight);
  margin-bottom:12px;
}

@media only screen and (max-width:768px){
  .megamenu__mobile-promos{
    -webkit-overflow-scrolling:touch;
    display:flex;
    gap:30px;
    overflow-x:auto;
    padding:30px var(--drawer-gutter);
  }

    .megamenu__mobile-promos .megamenu__promo{
      flex-shrink:0;
      max-width:250px;
      min-width:200px;
      width:auto;
    }

    .megamenu__mobile-promos .megamenu__promo:only-child{
      margin:0 auto;
      max-width:280px;
      min-width:0;
      width:75%;
    }

    .megamenu__mobile-promos .btn--secondary{
      background-color:transparent;
      border-color:var(--colorDrawerBorder);
      color:var(--colorDrawerText);
    }
}

.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);
}

@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);
}

.faq-item .collapsible-trigger{
  width:100%;
}

.faq-item .collapsible-trigger__icon{
  transition:background-color 0.2s ease;
}

.faq-item .collapsible-trigger:hover .collapsible-trigger__icon{
  background-color:color-mix(in srgb, currentColor 8%, transparent);
}

.collapsible-trigger--icon-right{
  padding:11px 40px 11px 0;
}

.collapsible-trigger--icon-right .collapsible-trigger__icon{
    left:auto;
    right:0;
  }

.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__button--arrow--left.pswp__element--disabled,.pswp__button--arrow--right.pswp__element--disabled{
  display:none;
  pointer-events:none;
}

.pswp__ui{
  align-items:center;
  bottom:30px;
  display:flex;
  justify-content:center;
  left:0;
  position:absolute;
  right:0;
  transform:translateY(0);
  transition:transform 0.25s 0.6s;
}

.pswp__ui .btn{
    margin:15px;
  }

.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;
  z-index:10;
}

.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:var(--typeBodySmallSize);
  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);
  }

@keyframes kit-pulse{
  0%{
    box-shadow:0 0 0 0 color-mix(in srgb, var(--hotspot-color) 50%, transparent);
  }
  to{
    box-shadow:0 0 0 10px transparent;
  }
}

.kit-shoppable-hero__content,.kit-shoppable-hero__content .btn,.kit-shoppable-hero__content .hero__link,.kit-shoppable-hero__content .kit-text{
  overflow-wrap:break-word;
  word-break:break-word;
}

.shoppable-hero__btn{
  animation:kit-pulse 2s infinite;
  background:var(--hotspot-color);
  border:0;
  border-radius:50%;
  color:var(--hotspot-text-color);
  cursor:pointer;
  height:40px;
  line-height:0;
  padding:10px;
  position:relative;
  transition:background-color 0.2s ease;
  width:40px;
}

.kit-shoppable-hero__hotspot:not(:has(kit-popover)) .shoppable-hero__btn{
  cursor:default;
}

.shoppable-hero__btn .icon-plus path{
  stroke:transparent;
}

.kit-shoppable-hero .kit-popover{
  border:1px solid var(--colorBorder);
  border-radius:2px;
  box-shadow:0 0 40px 0 rgba(0,0,0,.15);
  max-width:61.803%;
  padding:12px 0 0;
}

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

.kit-shoppable-hero .kit-popover{
    max-width:23.6068%;
}
  }

.shoppable-hero__popover-body{
  display:flex;
  flex-direction:column;
  font-size:var(--typeBodySmallSize);
  gap:5px;
  padding:0 12px;
}

.shoppable-hero__popover-title{
  margin:0;
  overflow-wrap:break-word;
  word-break:break-word;
}

.shoppable-hero__popover-body .grid-product__price{
  align-items:baseline;
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:0;
}

.shoppable-hero__popover-footer{
  border-top:1px solid var(--colorBorder);
  display:flex;
  justify-content:center;
  margin-top:5px;
  padding:6px 12px;
}

.shoppable-hero__popover-link{
  align-items:center;
  display:flex;
  font-size:var(--typeBodyExtraSmallSize);
  gap:4px;
  letter-spacing:var(--typeUppercaseSpacing);
  overflow-wrap:break-word;
  -webkit-text-decoration:none;
  text-decoration:none;
  text-transform:uppercase;
  word-break:break-word;
}

.shoppable-hero__popover-link:hover{
    opacity:0.7;
  }

.shoppable-hero__popover-link .icon-chevron-right{
    height:.75em;
    width:.75em;
  }

@media only screen and (max-width:768px){
  .kit-shoppable-hero{
    margin-bottom:40px;
  }

  .shoppable-hero__btn{
    height:30px;
    padding:6px;
    width:30px;
  }

  .shoppable-hero__btn svg{
    height:18px;
    width:18px;
  }
}

::-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=center] .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;
  }

html[dir=rtl] .social-sharing__link{
    margin:0 0 0 18px;
}

html[dir=rtl] .social-sharing__link:last-child{
      margin-left:0;
    }

.social-sharing__title{
  display:inline-block;
  font-size:var(--typeBodySmallSize);
  padding-left:3px;
  padding-right:15px;
  vertical-align:middle;
}

html[dir=rtl] .social-sharing__title{
    padding-left:15px;
    padding-right:3px;
}

.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:75px 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 6%;
}
  }

@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;
  }

.size-chart__standalone .tool-tip-trigger__title{
  font-size:0.8em;
  letter-spacing:var(--typeUppercaseSpacing);
}

.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;
  }

.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:var(--typeHeroSubtitleSize);
  letter-spacing:var(--typeUppercaseSpacing);
  margin-bottom:5px;
  text-transform:uppercase;
}

.hero__title{
  display:block;
  margin-bottom:0;
}

.hero__subtext{
  margin-top:20px;
}

.hero__subtitle{
  display:block;
  font-size:var(--typeHeroTextSize);
  margin-bottom:30px;
  margin-top:15px;
  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;
  }
}

.image-filter__wrapper ul{
  display:grid;
  gap:10px;
  grid-template-columns:repeat(2, 1fr);
}

.image-filter__wrapper ul label{
    align-items:flex-start;
    border:1px solid transparent;
    height:100%;
  }

.image-filter__wrapper ul label:active,.image-filter__wrapper ul label:focus-within,.image-filter__wrapper ul label:hover{
      border-color:var(--colorBorder);
    }

.image-filter__wrapper ul .tag__text{
    margin-bottom:4px;
    margin-left:0;
  }

.image-filter__wrapper .tag--active label{
  border-color:var(--colorTextBody);
}

.image-filter__image-wrapper{
  display:flex;
  flex-direction:column;
  gap:10px;
  text-align:center;
}

.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--small{
  height:200px;
}

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

.collection-hero--small{
    height:300px;
}
  }

.collection-hero--large{
  height:350px;
}

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

.collection-hero--large{
    height:550px;
}
  }

.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=center] .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;
}

.site-nav__dropdown-link.site-nav__dropdown-link--has-children{
    padding-right:30px;
  }

.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,.tag:focus-within label{
  -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:var(--typeBodySizeMobile);
    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(--typeBodySize);
  }
  }

[data-center-text=center] .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;
}
  }

.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:var(--typeUppercaseSpacing);
    text-transform:uppercase;
  }

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

[data-type_product_capitalize=true] .grid-product__title{
      font-size:var(--typeBodySizeMobile);
  }
    }

.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__content: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=center] .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:var(--typeAccentSmallSize);
  letter-spacing:var(--typeUppercaseSpacing);
  margin-top:5px;
  opacity:0.65;
  text-transform:uppercase;
}

.grid-product__price{
  color:var(--colorPrice);
  font-size:var(--typeBodySmallSize);
  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;
}

.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:var(--typeBodySmallSize);
  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.btn--not-ready{
    opacity:0 !important;
  }

@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-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;
  }
}

[data-center-text=center] .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=center] .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:focus-within .color-swatch,.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;
  }

.tag--show-label{
  width:100%;
}

.tag--show-label label{
    align-items:center;
    display:flex;
  }

.tag--show-label .tag__text{
    display:block !important;
  }

.tag--show-label .tag__text{
    margin-left:0.5rem;
  }

.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:var(--typeCollectionTitleMobile);
  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:var(--typeUppercaseSpacing);
      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:100%;
  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:var(--typeBodyExtraSmallSize);
  margin-bottom:3px;
}

.section-header .article__date{
    margin-bottom:15px;
}

.article__author{
  font-size:var(--typeBodyExtraSmallSize);
  margin-top:2px;
}

.article__grid-meta{
  margin-bottom:30px;
}

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

[data-center-text=center] .article__grid-meta{
    text-align:center;
}
  }

.article__excerpt{
  margin-top:10px;
}

.logo-bar{
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  margin-bottom:-30px;
  text-align:center;
}

.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:0 20px 30px;
}
  }

.logo-bar__image{
  display:block;
  height:100%;
  margin:0 auto;
  -o-object-fit:cover;
     object-fit:cover;
  width:100%;
}

.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;
}

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

.background-media-text__video{
    left:-150%;
    width:400%;
}

    html[dir=rtl] .background-media-text__video{
      left:auto;
      right:-150%;
    }
  }

.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:-150%;
      max-width:none;
      width:400%;
  }
    }

@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:var(--typeHeroSubtitleSize);
  padding:30px;
  text-align:left;
  width:380px;
}

.background-media-text--left .background-media-text__text{
    text-align:left;
}

.background-media-text--right .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--left .animation-cropper{
    float:left;
  }

  .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;
}

.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);
    }

.has-sticky-announcement-bar--below .announcement-bar{
  z-index:29;
}

.js-drawer-open .has-sticky-announcement-bar--below .announcement-bar{
  z-index:20;
}

.announcement-bar--sticky{
  left:0;
  position:fixed;
  top:0;
  width:100%;
  z-index:29;
}

.js-drawer-open:not(.js-drawer-open--search) .announcement-bar--sticky{
    z-index:20;
}

.has-sticky-announcement-bar--below .announcement-bar--sticky{
    transition:top 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    z-index:29;
}

.js-drawer-open:not(.js-drawer-open--search) .has-sticky-announcement-bar--below .announcement-bar--sticky{
    z-index:20;
}

.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:var(--typeUppercaseSpacing);
  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 screen and (min-width:700px) and (max-height:550px){
  .announcement-bar--sticky{
    position:absolute;
    top:auto;
  }
}

@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);
  }

.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%;
      -o-object-fit:cover;
         object-fit:cover;
      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;
  }

.image-grid--space-top{
  padding-top:40px;
}

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

.image-grid--space-top{
    padding-top:75px;
}
  }

.image-grid--space-bottom{
  padding-bottom:40px;
}

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

.image-grid--space-bottom{
    padding-bottom:75px;
}
  }

.image-grid__grid{
  display:flex;
  flex-wrap:wrap;
  gap:var(--image-grid-gap, 20px);
  list-style:none;
  margin:0;
  padding:0;
}

.image-grid__item{
  flex:1 1 calc(50% - var(--image-grid-gap, 20px));
  margin-bottom:0;
}

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

.image-grid__item{
    flex:1 1 calc(100%/var(--image-grid-columns, 5) - var(--image-grid-gap, 20px));
}
  }

.image-grid__image-wrap{
  overflow:hidden;
  position:relative;
  width:100%;
}

.image-grid__grid--square .image-grid__image-wrap{
  aspect-ratio:1 / 1;
}

.image-grid__grid--portrait .image-grid__image-wrap{
  aspect-ratio:2 / 3;
}

.image-grid__grid--landscape .image-grid__image-wrap{
  aspect-ratio:4 / 3;
}

.image-grid__grid--arch .image-grid__image-wrap{
  aspect-ratio:1 / 1;
  border-radius:50% 50% 0 0;
}

.image-grid__image{
  display:block;
  height:100%;
  -o-object-fit:cover;
     object-fit:cover;
  transition:transform 0.3s ease;
  width:100%;
}

.image-grid__link{
  display:block;
}

.image-grid__image-wrap:after{
    background-color:var(--image-grid-overlay-color);
    bottom:0;
    content:"";
    left:0;
    opacity:var(--image-grid-overlay-opacity);
    position:absolute;
    right:0;
    top:0;
    transition:opacity 0.8s ease;
    z-index:auto;
  }

.image-grid__item-heading{
  color:var(--image-grid-overlay-text-color);
  left:10px;
  overflow-wrap:break-word;
  position:absolute;
  right:10px;
  text-align:center;
  top:50%;
  transform:translateY(-50%);
  z-index:1;
}

.image-grid__item:has(.image-grid__link):hover .image-grid__image-wrap:after{
  opacity:calc(var(--image-grid-overlay-opacity) + var(--image-grid-overlay-hover-increment, 0.1));
}

.image-grid__item:has(.image-grid__link):hover .image-grid__image{
  transform:scale(1.03);
  transition:transform 0.8s ease;
}

[data-disable-animations=true] .image-grid__item:has(.image-grid__link):hover .image-grid__image{
    transform:none;
    transition:none;
}

@media (prefers-reduced-motion:reduce){

.image-grid__item:has(.image-grid__link):hover .image-grid__image{
    transform:none;
    transition:none;
}
  }

.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:var(--typeUppercaseSpacing);
    line-height:1.2;
    text-transform:uppercase;
  }

.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;
  }

.type-simple .promo-grid__bg .placeholder-svg{
    height:auto;
    max-height:inherit;
    width:100%;
  }

.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{
  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;
}

html[dir=rtl] .store-availability__info{
    margin-left:0;
    margin-right:10px;
    text-align:right;
}

.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;
    height:100px;
    position:relative;
    width:100%;
  }

.cart__image img{
    display:block;
    height:100%;
    -o-object-fit:contain;
       object-fit:contain;
    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:var(--typeBodySmallSize);
}

.cart__item-sub{
  display:flex;
  flex:1 1 100%;
  justify-content:space-between;
  line-height:1;
}

.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;
  }

.cart__item--properties{
  font-size:calc(var(--typeBaseSize) - 2px);
  line-height:1.3;
  margin-bottom:10px;
}

.cart__item--properties span{
    font-weight:700;
  }

@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:var(--typeAccentSmallSize);
  letter-spacing:var(--typeUppercaseSpacing);
  margin-bottom:7.5px;
  text-transform:uppercase;
}

.product-single__title{
  word-wrap:break-word;
  margin-bottom:10px;
}

.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-overlay{
  bottom:40px;
  left:0;
  position:absolute;
  top:32px;
  width:40%;
  z-index:3;
}

.product__video-overlay:before{
    content:"";
    display:block;
    height:35%;
    left:100%;
    position:absolute;
    top:0;
    width:60%;
  }

.product__video-overlay+.product__video-overlay{
    left:auto;
    right:0;
  }

.product__video-overlay+.product__video-overlay:before{
      bottom:0;
      left:auto;
      right:100%;
      top:auto;
    }

.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 .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:var(--colorPrice);
  font-size:calc(var(--typeBaseSize) + 2px);
  margin-right:5px;
}

.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:var(--typeUppercaseSpacing);
    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:var(--typeUppercaseSpacing);
  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;
  }



/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRoZW1lLmNzcyIsImdsb2JhbC92YXJpYWJsZXMtcm9vdC5jc3MubGlxdWlkIiwiZ2xvYmFsL2tleWZyYW1lcy5jc3MiLCJ2ZW5kb3IvZmxpY2tpdHkuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy92ZW5kb3Ivbm91aXNsaWRlci5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdG9vbC10aXAuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Rvb2wtdGlwLXRyaWdnZXIuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtd2l0aC1pY29ucy5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1yZW1pbmRlci5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcGFyYWxsYXguY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2NvdW50ZG93bi5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaG90c3BvdHMuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2ltYWdlLWNvbXBhcmUuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL2FnZS12ZXJpZmljYXRpb24tcG9wdXAuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Byb2R1Y3QtY29tcGxlbWVudGFyeS5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaW1hZ2VzLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zdmctbWFza3MuY3NzIiwiLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3RleHQtYW5kLWltYWdlLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9zY3JvbGxpbmctdGV4dC5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvbmV3c2xldHRlci1zZWN0aW9uLmNzcyIsIi4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MiLCIuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcmVjaXBpZW50LWZvcm0uY3NzIiwicGFydGlhbHMvbm9ybWFsaXplLmNzcyIsInBhcnRpYWxzL2dyaWQuY3NzIiwiPG5vIHNvdXJjZT4iLCJwYXJ0aWFscy9ncmlkLW1peGlucy5jc3MiLCJwYXJ0aWFscy9mbGV4LWdyaWQuY3NzIiwicGFydGlhbHMvaGVscGVycy5jc3MiLCJnbG9iYWwvbWl4aW5zLmNzcyIsInBhcnRpYWxzL2Jhc2UuY3NzIiwicGFydGlhbHMvdHlwb2dyYXBoeS5jc3MiLCJwYXJ0aWFscy9saXN0cy5jc3MiLCJwYXJ0aWFscy90YWJsZXMuY3NzIiwicGFydGlhbHMvbGlua3MuY3NzIiwicGFydGlhbHMvYnV0dG9ucy5jc3MiLCJwYXJ0aWFscy9tZWRpYS5jc3MiLCJwYXJ0aWFscy9mb3Jtcy5jc3MiLCJwYXJ0aWFscy9pbnB1dC1ncm91cC5jc3MiLCJwYXJ0aWFscy9pY29ucy5jc3MiLCJwYXJ0aWFscy9kcmF3ZXJzLmNzcyIsInBhcnRpYWxzL2JsYW5rLXN0YXRlcy5jc3MiLCJwYXJ0aWFscy9hbmltYXRpb25zLmNzcyIsInBhcnRpYWxzL3Rvb2x0aXAuY3NzIiwicGFydGlhbHMvcHJvZHVjdC1jb21wbGVtZW50YXJ5LmNzcyIsInBhcnRpYWxzL3ByZWRpY3RpdmUtc2VhcmNoLmNzcyIsIm1vZHVsZXMvZm9vdGVyLmNzcyIsIm1vZHVsZXMvbm90ZXMuY3NzIiwibW9kdWxlcy9wYWdpbmF0aW9uLmNzcyIsIm1vZHVsZXMvcnRlLmNzcyIsIm1vZHVsZXMvc2l0ZS1oZWFkZXItc3RydWN0dXJlLmNzcyIsIm1vZHVsZXMvc2l0ZS1oZWFkZXIuY3NzIiwibW9kdWxlcy9zaXRlLWhlYWRlci1zZWFyY2guY3NzIiwibW9kdWxlcy9wcmVkaWN0aXZlLXNlYXJjaC5jc3MiLCJtb2R1bGVzL3NlYXJjaC1iYXIuY3NzIiwibW9kdWxlcy90b29sYmFyLmNzcyIsIm1vZHVsZXMvc2VjdGlvbi1oZWFkZXIuY3NzIiwibW9kdWxlcy9zaXRlLW5hdi5jc3MiLCJtb2R1bGVzL21lZ2FtZW51LmNzcyIsIm1vZHVsZXMvbW9kYWxzLmNzcyIsIm1vZHVsZXMvanMtcXR5LmNzcyIsIm1vZHVsZXMvY3VycmVuY3ktcGlja2VyLmNzcyIsIm1vZHVsZXMvY29sbGFwc2libGUuY3NzIiwibW9kdWxlcy9waG90b3N3aXBlLmNzcyIsIm1vZHVsZXMvZGlzY2xvc3VyZS5jc3MiLCJtb2R1bGVzL211bHRpLXNlbGVjdG9ycy5jc3MiLCJtb2R1bGVzL21vZGVsLXZpZXdlci5jc3MiLCJtb2R1bGVzL3ByaWNlLXJhbmdlLmNzcyIsIm1vZHVsZXMvY291bnRkb3duLmNzcyIsIm1vZHVsZXMvc2hvcHBhYmxlLWhlcm8uY3NzIiwicGFydGlhbHMvdGhlbWUtZm9ybXMuY3NzIiwicGFydGlhbHMvc29jaWFsLWJ1dHRvbnMuY3NzIiwicGFydGlhbHMvc2VhcmNoLWdyaWQuY3NzIiwicGFydGlhbHMvc2VjdGlvbnMuY3NzIiwicGFydGlhbHMvcHJvZHVjdC1ibG9ja3MuY3NzIiwibW9kdWxlcy9zbGlkZXNob3cuY3NzIiwibW9kdWxlcy9oZXJvLmNzcyIsIm1vZHVsZXMvY29sbGVjdGlvbi5jc3MiLCJtb2R1bGVzL3RoZW1lLXNpdGUtaGVhZGVyLmNzcyIsIm1vZHVsZXMvdGhlbWUtdGFncy5jc3MiLCJtb2R1bGVzL3Byb2R1Y3Qtc2luZ2xlLXZhcmlhbnRzLmNzcyIsIm1vZHVsZXMvcHJvZHVjdC1ncmlkLWl0ZW0uY3NzIiwibW9kdWxlcy9zYWxlcy1wb2ludC5jc3MiLCJtb2R1bGVzL3Byb2R1Y3QtaW52ZW50b3J5LmNzcyIsIm1vZHVsZXMvY29sb3Itc3dhdGNoLmNzcyIsIm1vZHVsZXMvY29sbGVjdGlvbi1ncmlkLWl0ZW0uY3NzIiwibW9kdWxlcy9zZWN0aW9uLWN1c3RvbS1jb250ZW50LmNzcyIsIm1vZHVsZXMvYmxvZy1wb3N0cy5jc3MiLCJtb2R1bGVzL2xvZ28tbGlzdC5jc3MiLCJtb2R1bGVzL2JhY2tncm91bmQtbWVkaWEtdGV4dC5jc3MiLCJtb2R1bGVzL3Rlc3RpbW9uaWFscy5jc3MiLCJtb2R1bGVzL2Fubm91bmNlbWVudC1iYXIuY3NzIiwibW9kdWxlcy9uZXdzbGV0dGVyLmNzcyIsIm1vZHVsZXMvbWFwLmNzcyIsIm1vZHVsZXMvaW1hZ2Utcm93LmNzcyIsIm1vZHVsZXMvaW1hZ2UtZ3JpZC5jc3MiLCJtb2R1bGVzL3Byb21vLXR5cGVzLmNzcyIsIm1vZHVsZXMvc3RvcmUtYXZhaWxhYmlsaXR5LmNzcyIsIm1vZHVsZXMvYWdlLXZlcmlmaWNhdGlvbi1wb3B1cC5jc3MiLCJ0ZW1wbGF0ZXMvY2FydC5jc3MiLCJ0ZW1wbGF0ZXMvcHJvZHVjdC5jc3MiLCJ0ZW1wbGF0ZXMvYmxvZy5jc3MiLCJ0ZW1wbGF0ZXMvcGFzc3dvcmQuY3NzIiwidGVtcGxhdGVzL2dpZnQtY2FyZC5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCOztBQUVoQjs7O0NBR0M7O0FDTEQ7RUFDRTtJQUNFLGtCQUFtQjtJQUNuQixvQkFBcUI7RUFDdkI7QUFDRjs7QUNMQTtFQUNFO0lBQ0Usc0JBQXVCO0VBQ3pCOztFQUVBO0lBQ0Usd0JBQXlCO0VBQzNCO0FBQ0Y7O0FBRUE7RUFDRSxJQUE4RCxTQUFVLEVBQXZDLG1CQUEyQixJQUFyRCx1QkFBd0IsRUFBMkM7RUFDMUUsS0FBOEQsU0FBVSxFQUF2QyxtQkFBMkIsR0FBckQsdUJBQXdCLEVBQTJDO0VBQzFFLEtBQWdFLFNBQVUsRUFBdkMsbUJBQTJCLEdBQXZELHlCQUEwQixFQUEyQztFQUM1RSxJQUFnRSxTQUFVLEVBQXZDLG1CQUEyQixFQUF2RCx5QkFBMEIsRUFBMkM7QUFDOUU7O0FBRUE7RUFDRSxJQUFPLDJCQUE0QixFQUFFO0VBQ3JDLElBQUssdUJB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QUVBO0lBTUUsWUFBYTtFQUNmOztFQUVBO0lBQ0UsVUFBVztJQUNYLGlCQUFrQjtFQUNwQjs7RUFFQTtJQUNFLFVBQVc7RUFDYjs7RUFFQTtJQUNFLGFBQWM7RUFDaEI7O0VBRUE7SUFDRSxhQUFjO0VBQ2hCO0FBQ0YiLCJmaWxlIjoidGhlbWUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKiFcbiAgSW1wdWxzZSwgYnkgQXJjaGV0eXBlIFRoZW1lc1xuICBodHRwOi8vYXJjaGV0eXBldGhlbWVzLmNvXG4qL1xuXG5AaW1wb3J0IHVybCgnZ2xvYmFsL21peGlucy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdnbG9iYWwvdmFyaWFibGVzLXJvb3QuY3NzLmxpcXVpZCcpO1xuQGltcG9ydCB1cmwoJ2dsb2JhbC92YXJpYWJsZXMuY3NzJyk7XG5AaW1wb3J0IHVybCgnZ2xvYmFsL2tleWZyYW1lcy5jc3MnKTtcblxuQGltcG9ydCB1cmwoJ3ZlbmRvci9mbGlja2l0eS5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL3ZlbmRvci9ub3Vpc2xpZGVyLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy90b29sLXRpcC5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdG9vbC10aXAtdHJpZ2dlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdGV4dC13aXRoLWljb25zLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9uZXdzbGV0dGVyLXJlbWluZGVyLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9wYXJhbGxheC5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvY291bnRkb3duLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9ob3RzcG90cy5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvaW1hZ2UtY29tcGFyZS5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvYWdlLXZlcmlmaWNhdGlvbi1wb3B1cC5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvcHJvZHVjdC1jb21wbGVtZW50YXJ5LmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9pbWFnZXMuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3N2Zy1tYXNrcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCcuLi8uLi8uLi8uLi9zaGFyZWQvc3R5bGVzL21vZHVsZXMvdGV4dC1hbmQtaW1hZ2UuY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3Njcm9sbGluZy10ZXh0LmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9uZXdzbGV0dGVyLXNlY3Rpb24uY3NzJyk7XG5AaW1wb3J0IHVybCgnLi4vLi4vLi4vLi4vc2hhcmVkL3N0eWxlcy9tb2R1bGVzL3ByZWRpY3RpdmUtc2VhcmNoLmNzcycpO1xuQGltcG9ydCB1cmwoJy4uLy4uLy4uLy4uL3NoYXJlZC9zdHlsZXMvbW9kdWxlcy9yZWNpcGllbnQtZm9ybS5jc3MnKTtcblxuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL25vcm1hbGl6ZS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9ncmlkLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2dyaWQtbWl4aW5zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2ZsZXgtZ3JpZC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9oZWxwZXJzLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2Jhc2UuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvdHlwb2dyYXBoeS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9saXN0cy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy90YWJsZXMuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvbGlua3MuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvYnV0dG9ucy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9tZWRpYS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9mb3Jtcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9pbnB1dC1ncm91cC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9pY29ucy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9kcmF3ZXJzLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL2JsYW5rLXN0YXRlcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdwYXJ0aWFscy9hbmltYXRpb25zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3Rvb2x0aXAuY3NzJyk7XG5AaW1wb3J0IHVybCgncGFydGlhbHMvcHJvZHVjdC1jb21wbGVtZW50YXJ5LmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3ByZWRpY3RpdmUtc2VhcmNoLmNzcycpO1xuXG5AaW1wb3J0IHVybCgnbW9kdWxlcy9mb290ZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9ub3Rlcy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3BhZ2luYXRpb24uY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9ydGUuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zaXRlLWhlYWRlci1zdHJ1Y3R1cmUuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zaXRlLWhlYWRlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NpdGUtaGVhZGVyLXNlYXJjaC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3ByZWRpY3RpdmUtc2VhcmNoLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc2VhcmNoLWJhci5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3Rvb2xiYXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zZWN0aW9uLWhlYWRlci5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3NpdGUtbmF2LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbWVnYW1lbnUuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9tb2RhbHMuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9qcy1xdHkuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jdXJyZW5jeS1waWNrZXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb2xsYXBzaWJsZS5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3Bob3Rvc3dpcGUuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9kaXNjbG9zdXJlLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbXVsdGktc2VsZWN0b3JzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbW9kZWwtdmlld2VyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcHJpY2UtcmFuZ2UuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9jb3VudGRvd24uY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zaG9wcGFibGUtaGVyby5jc3MnKTtcblxuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3RoZW1lLWZvcm1zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3NvY2lhbC1idXR0b25zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3NlYXJjaC1ncmlkLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3NlY3Rpb25zLmNzcycpO1xuQGltcG9ydCB1cmwoJ3BhcnRpYWxzL3Byb2R1Y3QtYmxvY2tzLmNzcycpO1xuXG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zbGlkZXNob3cuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9oZXJvLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY29sbGVjdGlvbi5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3RoZW1lLXNpdGUtaGVhZGVyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvdGhlbWUtdGFncy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3Byb2R1Y3Qtc2luZ2xlLXZhcmlhbnRzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvcHJvZHVjdC1ncmlkLWl0ZW0uY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zYWxlcy1wb2ludC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3Byb2R1Y3QtaW52ZW50b3J5LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY29sb3Itc3dhdGNoLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvY29sbGVjdGlvbi1ncmlkLWl0ZW0uY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9zZWN0aW9uLWN1c3RvbS1jb250ZW50LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvYmxvZy1wb3N0cy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL2xvZ28tbGlzdC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL2JhY2tncm91bmQtbWVkaWEtdGV4dC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3Rlc3RpbW9uaWFscy5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL2Fubm91bmNlbWVudC1iYXIuY3NzJyk7XG5AaW1wb3J0IHVybCgnbW9kdWxlcy9uZXdzbGV0dGVyLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvbWFwLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvaW1hZ2Utcm93LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvaW1hZ2UtZ3JpZC5jc3MnKTtcbkBpbXBvcnQgdXJsKCdtb2R1bGVzL3Byb21vLXR5cGVzLmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvc3RvcmUtYXZhaWxhYmlsaXR5LmNzcycpO1xuQGltcG9ydCB1cmwoJ21vZHVsZXMvYWdlLXZlcmlmaWNhdGlvbi1wb3B1cC5jc3MnKTtcblxuQGltcG9ydCB1cmwoJ3RlbXBsYXRlcy9jYXJ0LmNzcycpO1xuQGltcG9ydCB1cmwoJ3RlbXBsYXRlcy9wcm9kdWN0LmNzcycpO1xuQGltcG9ydCB1cmwoJ3RlbXBsYXRlcy9ibG9nLmNzcycpO1xuQGltcG9ydCB1cmwoJ3RlbXBsYXRlcy9wYXNzd29yZC5jc3MnKTtcbkBpbXBvcnQgdXJsKCd0ZW1wbGF0ZXMvZ2lmdC1jYXJkLmNzcycpO1xuIiwiQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICA6cm9vdCB7XG4gICAgLS1ncmlkLWd1dHRlcjogMjJweDtcbiAgICAtLWRyYXdlci1ndXR0ZXI6IDMwcHg7XG4gIH1cbn1cbiIsIkBrZXlmcmFtZXMgc3BpbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBwcmVsb2FkaW5nIHtcbiAgMCUgeyAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDUwJTsgdHJhbnNmb3JtOiBzY2FsZTNkKDAsIDEsIDEpOyBvcGFjaXR5OiAwOyB9XG4gIDQwJSB7ICB0cmFuc2Zvcm0tb3JpZ2luOiAwJSA1MCU7IHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsgb3BhY2l0eTogMTsgfVxuICA0MSUgeyAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7IHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsgb3BhY2l0eTogMTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7IHRyYW5zZm9ybTogc2NhbGUzZCgwLCAxLCAxKTsgb3BhY2l0eTogMTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlc2hvd0JhcnMge1xuICBmcm9tIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxuICB0byB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxufVxuXG4vKkFqYXggbG9hZCBwcm9kdWN0cyovXG5Aa2V5ZnJhbWVzIGdyaWQtcHJvZHVjdF9fbG9hZGluZyB7XG4gIDAlIHsgb3BhY2l0eTogMTsgfVxuICA2MCUgeyBvcGFjaXR5OiAwOyB9XG4gIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cbi8qQnV0dG9uIGFuaW1hdGlvbnMqL1xuQGtleWZyYW1lcyBzaGluZSB7XG4gIDEwMCUge1xuICAgIGxlZnQ6IC0yMDAlO1xuICB9XG59XG5cbi8qT3ZlcmxheSBhbmltYXRpb25zIChtb2RhbHMsIHBhbmVscykqL1xuQGtleWZyYW1lcyBvdmVybGF5LW9uIHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgdG8geyBvcGFjaXR5OiAwLjY7IH1cbn1cblxuQGtleWZyYW1lcyBvdmVybGF5LW9mZiB7XG4gIGZyb20geyBvcGFjaXR5OiAwLjY7IH1cbiAgdG8geyBvcGFjaXR5OiAwOyB9XG59XG5cbkBrZXlmcmFtZXMgZnVsbC1vdmVybGF5LW9uIHtcbiAgZnJvbSB7IG9wYWNpdHk6IDA7IH1cbiAgdG8geyBvcGFjaXR5OiAxOyB9XG59XG5cbkBrZXlmcmFtZXMgZnVsbC1vdmVybGF5LW9mZiB7XG4gIGZyb20geyBvcGFjaXR5OiAxOyB9XG4gIHRvIHsgb3BhY2l0eTogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIG1vZGFsLW9wZW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtb2RhbC1jbG9zaW5nIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxufVxuXG4vKlRleHQgYW5pbWF0aW9ucyovXG5Aa2V5ZnJhbWVzIHJpc2UtdXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMjAlKTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcmlzZS11cC1vdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMjAlKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1vdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qQmFja2dyb3VuZCBpbWFnZSBhbmltYXRpb25zKi9cbkBrZXlmcmFtZXMgem9vbS1mYWRlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMywxLjMpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSwxKTtcbiAgfVxufVxuXG4vKlByb2R1Y3QgZm9ybSBwbGFjZWhvbGRlciovXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLXNoaW1tZXIge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1MCUgMDtcbiAgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNTAlIDA7XG4gIH1cbn1cbiIsIi5mbGlja2l0eS1lbmFibGVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZDpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cblxuLmZsaWNraXR5LXZpZXdwb3J0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4zNXM7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmZsaWNraXR5LXNsaWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5mbGlja2l0eS1lbmFibGVkLmlzLWRyYWdnYWJsZSAuZmxpY2tpdHktdmlld3BvcnQge1xuICBjdXJzb3I6IG1vdmU7XG4gIGN1cnNvcjogZ3JhYjtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZHJhZ2dhYmxlIC5mbGlja2l0eS12aWV3cG9ydC5pcy1wb2ludGVyLWRvd24ge1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4uZmxpY2tpdHktYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIEBuZXN0IC5oZXJvICYge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDVweCByZ2JhKDAsMCwwLDAuMSk7XG4gIH1cbn1cblxuLmZsaWNraXR5LWJ1dHRvbjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZsaWNraXR5LWJ1dHRvbjpkaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAvKlNtYWxsZXIgYXJyb3dzIG9uIG1vYmlsZSovXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHdpZHRoOiAzM3B4O1xuICAgIGhlaWdodDogMzNweDtcbiAgfVxufVxuXG4uZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjEyKTtcbn1cbi5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDVzIGVhc2Utb3V0O1xufVxuXG4uZmxpY2tpdHktcHJldmlvdXMgeyBsZWZ0OiAxMHB4OyB9XG4uZmxpY2tpdHktbmV4dCB7IHJpZ2h0OiAxMHB4OyB9XG4uZmxpY2tpdHktcnRsIC5mbGlja2l0eS1wcmV2aW91cyB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMHB4O1xufVxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktbmV4dCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMHB4O1xufVxuXG4uZmxpY2tpdHktYnV0dG9uLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDM1JTtcbiAgdG9wOiAzNSU7XG4gIHdpZHRoOiAzMCU7XG4gIGhlaWdodDogMzAlO1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbi5mbGlja2l0eS1wYWdlLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBib3R0b206IC0yNXB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG5cbiAgQG5lc3QgLmhlcm8gJiB7XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIGNvbG9yOiAkc2xpZGVzaG93LXRleHQtbGlnaHQ7XG4gIH1cbn1cblxuLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcGFnZS1kb3RzIHsgZGlyZWN0aW9uOiBydGw7IH1cblxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgbWFyZ2luOiAwIDVweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIG9wYWNpdHk6IDAuNDtcblxuICAmOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjY7XG4gIH1cbn1cblxuLmZsaWNraXR5LXBhZ2UtZG90cyAuZG90LmlzLXNlbGVjdGVkIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICB3aWR0aDogOXB4O1xuICBoZWlnaHQ6IDlweDtcbn1cblxuLmZsaWNraXR5LWVuYWJsZWQuaXMtZmFkZSAuZmxpY2tpdHktc2xpZGVyID4gKiB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAwO1xufVxuXG4uZmxpY2tpdHktZW5hYmxlZC5pcy1mYWRlIC5mbGlja2l0eS1zbGlkZXIgPiAuaXMtc2VsZWN0ZWQge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgei1pbmRleDogMTtcbn1cblxuLypcbiAgSGVybyBzcGVjaWZpYyBzdHlsZXMgZm9yIGZsaWNraXR5IGRvdHMvYXJyb3dzXG4gKi9cbi5oZXJvW2RhdGEtYXJyb3dzPVwidHJ1ZVwiXSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB6LWluZGV4OiA1O1xuXG4gICYgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b24ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IC0yMHB4O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXByZXYtbmV4dC1idXR0b246aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xMik7XG4gIH1cbiAgJiAuZmxpY2tpdHktcHJldi1uZXh0LWJ1dHRvbjphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAmIC5mbGlja2l0eS1wcmV2aW91cyB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogOTBweDtcbiAgfVxuICAmIC5mbGlja2l0eS1uZXh0IHtcbiAgICByaWdodDogNDBweDtcbiAgfVxuICAmLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldmlvdXMge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDkwcHg7XG4gIH1cbiAgJi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LW5leHQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDQwcHg7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAmIC5mbGlja2l0eS1wcmV2LW5leHQtYnV0dG9uIHtcbiAgICAgIGJvdHRvbTogLTE2cHg7XG4gICAgfVxuICAgICYgLmZsaWNraXR5LXByZXZpb3VzIHtcbiAgICAgIHJpZ2h0OiA2MHB4O1xuICAgIH1cbiAgICAmIC5mbGlja2l0eS1uZXh0IHtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICAmLmZsaWNraXR5LXJ0bCAuZmxpY2tpdHktcHJldmlvdXMge1xuICAgICAgbGVmdDogNjBweDtcbiAgICB9XG4gICAgJi5mbGlja2l0eS1ydGwgLmZsaWNraXR5LW5leHQge1xuICAgICAgbGVmdDogMjBweDtcbiAgICB9XG4gIH1cbn1cblxuLypDaGFuZ2UgZG90cyB0byBiYXJzKi9cbltkYXRhLWJhcnM9XCJ0cnVlXCJdIHtcbiAgJi5oZXJvIC5mbGlja2l0eS1wYWdlLWRvdHMge1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBsaW5lLWhlaWdodDogNnB4O1xuICAgIHotaW5kZXg6IDY7XG4gIH1cblxuICAmIC5mbGlja2l0eS1wYWdlLWRvdHMgLmRvdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogNDVweDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMC40O1xuICAgIH1cblxuICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgICYuaXMtc2VsZWN0ZWQ6YWZ0ZXIge1xuICAgICAgYW5pbWF0aW9uOiBzbGlkZXNob3dCYXJzIDBzIGxpbmVhciBmb3J3YXJkcztcbiAgICB9XG4gIH1cbn1cbiIsIi8qIEZ1bmN0aW9uYWwgc3R5bGluZztcbiAqIFRoZXNlIHN0eWxlcyBhcmUgcmVxdWlyZWQgZm9yIG5vVWlTbGlkZXIgdG8gZnVuY3Rpb24uXG4gKiBZb3UgZG9uJ3QgbmVlZCB0byBjaGFuZ2UgdGhlc2UgcnVsZXMgdG8gYXBwbHkgeW91ciBkZXNpZ24uXG4gKi9cbiAubm9VaS10YXJnZXQsXG4gLm5vVWktdGFyZ2V0ICoge1xuICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuIH1cblxuIC5ub1VpLXRhcmdldCB7XG4gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gfVxuXG4gLm5vVWktYmFzZSxcbiAubm9VaS1jb25uZWN0cyB7XG4gICB3aWR0aDogMTAwJTtcbiAgIGhlaWdodDogMTAwJTtcbiAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgIHotaW5kZXg6IDE7XG4gfVxuXG4gLyogV3JhcHBlciBmb3IgYWxsIGNvbm5lY3QgZWxlbWVudHMuXG4gICovXG4gLm5vVWktY29ubmVjdHMge1xuICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgIHotaW5kZXg6IDA7XG4gfVxuXG4gLm5vVWktY29ubmVjdCxcbiAubm9VaS1vcmlnaW4ge1xuICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIHotaW5kZXg6IDE7XG4gICB0b3A6IDA7XG4gICByaWdodDogMDtcbiAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgIHRyYW5zZm9ybS1zdHlsZTogZmxhdDtcbiB9XG5cbiAubm9VaS1jb25uZWN0IHtcbiAgIGhlaWdodDogMTAwJTtcbiAgIHdpZHRoOiAxMDAlO1xuIH1cblxuIC5ub1VpLW9yaWdpbiB7XG4gICBoZWlnaHQ6IDEwJTtcbiAgIHdpZHRoOiAxMCU7XG4gfVxuXG4gLyogT2Zmc2V0IGRpcmVjdGlvblxuICAqL1xuIC5ub1VpLXR4dC1kaXItcnRsLm5vVWktaG9yaXpvbnRhbCAubm9VaS1vcmlnaW4ge1xuICAgbGVmdDogMDtcbiAgIHJpZ2h0OiBhdXRvO1xuIH1cblxuIC8qIEdpdmUgb3JpZ2lucyAwIGhlaWdodC93aWR0aCBzbyB0aGV5IGRvbid0IGludGVyZmVyZSB3aXRoIGNsaWNraW5nIHRoZVxuICAqIGNvbm5lY3QgZWxlbWVudHMuXG4gICovXG4gLm5vVWktdmVydGljYWwgLm5vVWktb3JpZ2luIHtcbiAgIHdpZHRoOiAwO1xuIH1cbiAubm9VaS1ob3Jpem9udGFsIC5ub1VpLW9yaWdpbiB7XG4gICBoZWlnaHQ6IDA7XG4gfVxuIC5ub1VpLWhhbmRsZSB7XG4gICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiB9XG4gLm5vVWktdG91Y2gtYXJlYSB7XG4gICBoZWlnaHQ6IDEwMCU7XG4gICB3aWR0aDogMTAwJTtcbiB9XG4gLm5vVWktc3RhdGUtdGFwIC5ub1VpLWNvbm5lY3QsXG4gLm5vVWktc3RhdGUtdGFwIC5ub1VpLW9yaWdpbiB7XG4gICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzO1xuICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3M7XG4gfVxuIC5ub1VpLXN0YXRlLWRyYWcgKiB7XG4gICBjdXJzb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiB9XG5cbiAvKiBTbGlkZXIgc2l6ZSBhbmQgaGFuZGxlIHBsYWNlbWVudDtcbiAgKi9cbiAubm9VaS1ob3Jpem9udGFsIHtcbiAgIGhlaWdodDogMThweDtcbiB9XG4gLm5vVWktaG9yaXpvbnRhbCAubm9VaS1oYW5kbGUge1xuICAgd2lkdGg6IDM0cHg7XG4gICBoZWlnaHQ6IDI4cHg7XG4gICByaWdodDogLTE3cHg7XG4gICB0b3A6IC02cHg7XG4gfVxuIC5ub1VpLXZlcnRpY2FsIHtcbiAgIHdpZHRoOiAxOHB4O1xuIH1cbiAubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGUge1xuICAgd2lkdGg6IDI4cHg7XG4gICBoZWlnaHQ6IDM0cHg7XG4gICByaWdodDogLTZweDtcbiAgIHRvcDogLTE3cHg7XG4gfVxuIC5ub1VpLXR4dC1kaXItcnRsLm5vVWktaG9yaXpvbnRhbCAubm9VaS1oYW5kbGUge1xuICAgbGVmdDogLTE3cHg7XG4gICByaWdodDogYXV0bztcbiB9XG5cbiAvKiBTdHlsaW5nO1xuICAqIEdpdmluZyB0aGUgY29ubmVjdCBlbGVtZW50IGEgYm9yZGVyIHJhZGl1cyBjYXVzZXMgaXNzdWVzIHdpdGggdXNpbmcgdHJhbnNmb3JtOiBzY2FsZVxuICAqL1xuIC5ub1VpLXRhcmdldCB7XG4gICBiYWNrZ3JvdW5kOiAjRkFGQUZBO1xuICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgYm9yZGVyOiAxcHggc29saWQgI0QzRDNEMztcbiAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCAjRjBGMEYwLCAwIDNweCA2cHggLTVweCAjQkJCO1xuIH1cbiAubm9VaS1jb25uZWN0cyB7XG4gICBib3JkZXItcmFkaXVzOiAzcHg7XG4gfVxuIC5ub1VpLWNvbm5lY3Qge1xuICAgYmFja2dyb3VuZDogIzNGQjhBRjtcbiB9XG4gLyogSGFuZGxlcyBhbmQgY3Vyc29ycztcbiAgKi9cbiAubm9VaS1kcmFnZ2FibGUge1xuICAgY3Vyc29yOiBldy1yZXNpemU7XG4gfVxuIC5ub1VpLXZlcnRpY2FsIC5ub1VpLWRyYWdnYWJsZSB7XG4gICBjdXJzb3I6IG5zLXJlc2l6ZTtcbiB9XG4gLm5vVWktaGFuZGxlIHtcbiAgIGJvcmRlcjogMXB4IHNvbGlkICNEOUQ5RDk7XG4gICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICBiYWNrZ3JvdW5kOiAjRkZGO1xuICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDFweCAjRkZGLCBpbnNldCAwIDFweCA3cHggI0VCRUJFQiwgMCAzcHggNnB4IC0zcHggI0JCQjtcbiB9XG4gLm5vVWktYWN0aXZlIHtcbiAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxcHggI0ZGRiwgaW5zZXQgMCAxcHggN3B4ICNEREQsIDAgM3B4IDZweCAtM3B4ICNCQkI7XG4gfVxuIC8qIEhhbmRsZSBzdHJpcGVzO1xuICAqL1xuIC5ub1VpLWhhbmRsZTpiZWZvcmUsXG4gLm5vVWktaGFuZGxlOmFmdGVyIHtcbiAgIGNvbnRlbnQ6IFwiXCI7XG4gICBkaXNwbGF5OiBibG9jaztcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIGhlaWdodDogMTRweDtcbiAgIHdpZHRoOiAxcHg7XG4gICBiYWNrZ3JvdW5kOiAjRThFN0U2O1xuICAgbGVmdDogMTRweDtcbiAgIHRvcDogNnB4O1xuIH1cbiAubm9VaS1oYW5kbGU6YWZ0ZXIge1xuICAgbGVmdDogMTdweDtcbiB9XG4gLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlOmJlZm9yZSxcbiAubm9VaS12ZXJ0aWNhbCAubm9VaS1oYW5kbGU6YWZ0ZXIge1xuICAgd2lkdGg6IDE0cHg7XG4gICBoZWlnaHQ6IDFweDtcbiAgIGxlZnQ6IDZweDtcbiAgIHRvcDogMTRweDtcbiB9XG4gLm5vVWktdmVydGljYWwgLm5vVWktaGFuZGxlOmFmdGVyIHtcbiAgIHRvcDogMTdweDtcbiB9XG4gLyogRGlzYWJsZWQgc3RhdGU7XG4gICovXG4gW2Rpc2FibGVkXSAubm9VaS1jb25uZWN0IHtcbiAgIGJhY2tncm91bmQ6ICNCOEI4Qjg7XG4gfVxuIFtkaXNhYmxlZF0ubm9VaS10YXJnZXQsXG4gW2Rpc2FibGVkXS5ub1VpLWhhbmRsZSxcbiBbZGlzYWJsZWRdIC5ub1VpLWhhbmRsZSB7XG4gICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuIH1cbiAvKiBCYXNlO1xuICAqXG4gICovXG4gLm5vVWktcGlwcyxcbiAubm9VaS1waXBzICoge1xuICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiB9XG4gLm5vVWktcGlwcyB7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICBjb2xvcjogIzk5OTtcbiB9XG4gLyogVmFsdWVzO1xuICAqXG4gICovXG4gLm5vVWktdmFsdWUge1xuICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiB9XG4gLm5vVWktdmFsdWUtc3ViIHtcbiAgIGNvbG9yOiAjY2NjO1xuICAgZm9udC1zaXplOiAxMHB4O1xuIH1cbiAvKiBNYXJraW5ncztcbiAgKlxuICAqL1xuIC5ub1VpLW1hcmtlciB7XG4gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICBiYWNrZ3JvdW5kOiAjQ0NDO1xuIH1cbiAubm9VaS1tYXJrZXItc3ViIHtcbiAgIGJhY2tncm91bmQ6ICNBQUE7XG4gfVxuIC5ub1VpLW1hcmtlci1sYXJnZSB7XG4gICBiYWNrZ3JvdW5kOiAjQUFBO1xuIH1cbiAvKiBIb3Jpem9udGFsIGxheW91dDtcbiAgKlxuICAqL1xuIC5ub1VpLXBpcHMtaG9yaXpvbnRhbCB7XG4gICBwYWRkaW5nOiAxMHB4IDA7XG4gICBoZWlnaHQ6IDgwcHg7XG4gICB0b3A6IDEwMCU7XG4gICBsZWZ0OiAwO1xuICAgd2lkdGg6IDEwMCU7XG4gfVxuIC5ub1VpLXZhbHVlLWhvcml6b250YWwge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCA1MCUpO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgNTAlKTtcbiB9XG4gLm5vVWktcnRsIC5ub1VpLXZhbHVlLWhvcml6b250YWwge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDUwJSk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDUwJSk7XG4gfVxuIC5ub1VpLW1hcmtlci1ob3Jpem9udGFsLm5vVWktbWFya2VyIHtcbiAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgd2lkdGg6IDJweDtcbiAgIGhlaWdodDogNXB4O1xuIH1cbiAubm9VaS1tYXJrZXItaG9yaXpvbnRhbC5ub1VpLW1hcmtlci1zdWIge1xuICAgaGVpZ2h0OiAxMHB4O1xuIH1cbiAubm9VaS1tYXJrZXItaG9yaXpvbnRhbC5ub1VpLW1hcmtlci1sYXJnZSB7XG4gICBoZWlnaHQ6IDE1cHg7XG4gfVxuIC8qIFZlcnRpY2FsIGxheW91dDtcbiAgKlxuICAqL1xuIC5ub1VpLXBpcHMtdmVydGljYWwge1xuICAgcGFkZGluZzogMCAxMHB4O1xuICAgaGVpZ2h0OiAxMDAlO1xuICAgdG9wOiAwO1xuICAgbGVmdDogMTAwJTtcbiB9XG4gLm5vVWktdmFsdWUtdmVydGljYWwge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuIH1cbiAubm9VaS1ydGwgLm5vVWktdmFsdWUtdmVydGljYWwge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCA1MCUpO1xuICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgNTAlKTtcbiB9XG4gLm5vVWktbWFya2VyLXZlcnRpY2FsLm5vVWktbWFya2VyIHtcbiAgIHdpZHRoOiA1cHg7XG4gICBoZWlnaHQ6IDJweDtcbiAgIG1hcmdpbi10b3A6IC0xcHg7XG4gfVxuIC5ub1VpLW1hcmtlci12ZXJ0aWNhbC5ub1VpLW1hcmtlci1zdWIge1xuICAgd2lkdGg6IDEwcHg7XG4gfVxuIC5ub1VpLW1hcmtlci12ZXJ0aWNhbC5ub1VpLW1hcmtlci1sYXJnZSB7XG4gICB3aWR0aDogMTVweDtcbiB9XG4gLm5vVWktdG9vbHRpcCB7XG4gICBkaXNwbGF5OiBibG9jaztcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIGJvcmRlcjogMXB4IHNvbGlkICNEOUQ5RDk7XG4gICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgY29sb3I6ICMwMDA7XG4gICBwYWRkaW5nOiA1cHg7XG4gICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuIH1cbiAubm9VaS1ob3Jpem9udGFsIC5ub1VpLXRvb2x0aXAge1xuICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgbGVmdDogNTAlO1xuICAgYm90dG9tOiAxMjAlO1xuIH1cbiAubm9VaS12ZXJ0aWNhbCAubm9VaS10b29sdGlwIHtcbiAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgIHRvcDogNTAlO1xuICAgcmlnaHQ6IDEyMCU7XG4gfVxuIC5ub1VpLWhvcml6b250YWwgLm5vVWktb3JpZ2luID4gLm5vVWktdG9vbHRpcCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgMCk7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDApO1xuICAgbGVmdDogYXV0bztcbiAgIGJvdHRvbTogMTBweDtcbiB9XG4gLm5vVWktdmVydGljYWwgLm5vVWktb3JpZ2luID4gLm5vVWktdG9vbHRpcCB7XG4gICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xOHB4KTtcbiAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC0xOHB4KTtcbiAgIHRvcDogYXV0bztcbiAgIHJpZ2h0OiAyOHB4O1xuIH1cbiIsInRvb2wtdGlwIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxudG9vbC10aXBbZGF0YS10b29sLXRpcC1vcGVuPVwidHJ1ZVwiXSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB6LWluZGV4OiAxMDAwMTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvck1vZGFsQmcpO1xuICAgIGFuaW1hdGlvbjogb3ZlcmxheS1vbiAwLjNzIGZvcndhcmRzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG4udG9vbC10aXBfX2lubmVyIHtcbiAgYW5pbWF0aW9uOiBtb2RhbC1jbG9zZSAwLjNzIGZvcndhcmRzO1xuICBvcGFjaXR5OiAwO1xuXG4gIEBuZXN0IHRvb2wtdGlwW2RhdGEtdG9vbC10aXAtb3Blbj1cInRydWVcIl0gJiB7XG4gICAgYW5pbWF0aW9uOiBtb2RhbC1vcGVuIDAuM3MgZm9yd2FyZHM7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yQm9keSk7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDIwcHggIzAwMDAwMDE3O1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogOTMlO1xuICAgIH1cbiAgfVxufVxuXG4udG9vbC10aXBfX2NvbnRlbnQge1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LWhlaWdodDogODB2aDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBmb250LXNpemU6IDAuODVlbTtcbiAgfVxufVxuXG4udG9vbC10aXBfX2Nsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4udG9vbC10aXBfX2Nsb3NlIC5pY29uIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbn1cbiIsIi50b29sLXRpcC10cmlnZ2VyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi50b29sLXRpcC10cmlnZ2VyIC5pY29uIHtcbiAgd2lkdGg6IDI4cHg7XG4gIGhlaWdodDogMjhweDtcbn1cblxuLnRvb2wtdGlwLXRyaWdnZXJfX3RpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4udG9vbC10aXAtdHJpZ2dlcl9fdGl0bGU6aG92ZXIsXG4udG9vbC10aXAtdHJpZ2dlcl9fdGl0bGU6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi50b29sLXRpcC10cmlnZ2VyX19jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyAvKiBFbnN1cmUgb3VyIGNvbnRlbnQgaXMgYWx3YXlzIGhpZGRlbiAqL1xufVxuXG4vKiBTaXplIGNoYXJ0IHRyaWdnZXIgKi9cblxuLnNpemUtY2hhcnRfX3N0YW5kYWxvbmUge1xuICBtYXJnaW46IHZhcigtLXNpemVDaGFydE1hcmdpbik7XG5cbiAgJiBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplQ2hhcnRJY29uTWFyZ2luKTtcbiAgfVxufVxuIiwiLnRleHQtd2l0aC1pY29uc19fYmxvY2tzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICBtYXJnaW4tcmlnaHQ6IC0zMHB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5oYXMtMS1wZXItcm93IC50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oYXMtMi1wZXItcm93IC50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmhhcy0zLXBlci1yb3cgLnRleHQtd2l0aC1pY29uc19fYmxvY2sge1xuICB3aWR0aDogMzMuMzMzJTtcbn1cblxuLmhhcy00LXBlci1yb3cgLnRleHQtd2l0aC1pY29uc19fYmxvY2sge1xuICB3aWR0aDogMjUlO1xufVxuXG4uaGFzLTUtcGVyLXJvdyAudGV4dC13aXRoLWljb25zX19ibG9jayB7XG4gIHdpZHRoOiAyMCU7XG59XG5cbi50ZXh0LXdpdGgtaWNvbnNfX2Jsb2NrcyAudGV4dC13aXRoLWljb25zX19ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXg6IG5vbmU7XG4gIHBhZGRpbmc6IDMwcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAwIDYwcHg7XG4gIH1cbn1cblxuLnRleHQtd2l0aC1pY29uc19fYmxvY2staWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNzBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgfVxuICB9XG59XG5cbi50ZXh0LXdpdGgtaWNvbnNfX2J1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuIiwiLyogTmV3c2xldHRlciByZW1pbmRlciAqL1xuXG5uZXdzbGV0dGVyLXJlbWluZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAyMHB4O1xuICBib3R0b206IDIwcHg7XG4gIHRyYW5zaXRpb246IGVhc2UtaW4tb3V0IDAuM3Mgb3BhY2l0eTtcbiAgYm94LXNoYWRvdzogMCAxMnB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgbWF4LXdpZHRoOiAyNDBweDtcbiAgei1pbmRleDogMTA7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XG4gIH1cblxuICAmW2RhdGEtZW5hYmxlZD1cImZhbHNlXCJdIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICZbY2xhc3MqPVwiY29sb3Itc2NoZW1lLVwiXTpub3QoLmNvbG9yLXNjaGVtZS1ub25lKSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG5cbiAgJiAuY29sb3Itc2NoZW1lLW5vbmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvckJ0blByaW1hcnlUZXh0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJ0blByaW1hcnkpO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyLXJlbWluZGVyX19tZXNzYWdlLmgzIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiB2YXIoLS1uZXdzbGV0dGVyUmVtaW5kZXJQYWRkaW5nKTtcbiAgbWFyZ2luOiAwO1xufVxuIiwiLnBhcmFsbGF4LWltYWdlIGltZyB7XG4gIHdpZHRoOiAgMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLnBhcmFsbGF4LWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogIDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDVzIGxpbmVhcjtcbn1cbiIsIi8qIENvdW50ZG93biAqL1xuLmNvdW50ZG93bi13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY291bnRkb3duX19iYWNrZ3JvdW5kLWltYWdlLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5jb3VudGRvd25fX2JhY2tncm91bmQtaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5jb3VudGRvd25fX21vYmlsZS1pbWFnZS13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uY291bnRkb3duX19tb2JpbGUtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmNvdW50ZG93bi1sYXlvdXQtLWJhbm5lciB7XG4gICYgLmNvdW50ZG93bl9fY29udGVudCB7XG4gICAgcGFkZGluZzogMnJlbTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgIGdhcDogMXJlbTtcbiAgICAgIHBhZGRpbmc6IDEuNnJlbSAycmVtO1xuICAgIH1cbiAgfVxuXG4gICYuY291bnRkb3duLWJsb2Nrcy0tMi5wYWdlLXdpZHRoIHtcbiAgICAmIC5jb3VudGRvd25fX2NvbnRlbnQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgfVxuICB9XG5cbiAgJi5jb3VudGRvd24tYmxvY2tzLS0yIHtcbiAgICAmIC5jb3VudGRvd25fX2NvbnRlbnQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgJiAuY291bnRkb3duX19ibG9jayB7XG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDMzJTtcbiAgICB9XG4gIH1cbn1cblxuLmNvdW50ZG93bl9fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDY1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogNXJlbSAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgQG5lc3QgLnBhZ2Utd2lkdGggJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgQG5lc3QgLmNvdW50ZG93bi1sYXlvdXQtLWhlcm8gJiB7XG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB9XG4gIH1cbn1cblxuLmNvdW50ZG93bl9fYmxvY2sge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxcmVtIGF1dG87XG4gIHotaW5kZXg6IDM7XG59XG5cbi5jb3VudGRvd25fX2Jsb2NrLS1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgJiAuY291bnRkb3duX19ibG9jay0tYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IC8qIE5lc3RlZCBidXR0b24gd2lsbCBnZXQgc3BhY2luZyBmcm9tIHRleHQgYWJvdmUgaXQgKi9cbiAgfVxufVxuXG4uY291bnRkb3duX19ibG9jay0tdGltZXIsXG4uY291bnRkb3duX19ibG9jay0tY29udGVudCB7XG4gIEBuZXN0IC5jb3VudGRvd24tYmxvY2tzLS0yLmNvdW50ZG93bi1sYXlvdXQtLWJhbm5lciAmIHtcbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogNTAlXG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX2Jsb2NrLS1idXR0b24uYnV0dG9uLWJsb2NrLWFjdGl2ZSB7XG4gIEBuZXN0IC5jb3VudGRvd24tYmxvY2tzLS0yLmNvdW50ZG93bi1sYXlvdXQtLWJhbm5lciAmIHtcbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogNTAlXG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX3RleHQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIEBuZXN0IC5jb3VudGRvd24tbGF5b3V0LS1oZXJvICYge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX3RleHQtd3JhcHBlci0tY29udGVudC1hbGlnbm1lbnQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5jb3VudGRvd25fX3RleHQtd3JhcHBlci0tY29udGVudC1hbGlnbm1lbnQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNvdW50ZG93bl9fZGlzcGxheSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5jb3VudGRvd25fX2Rpc3BsYXktLWxvYWRlZCB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1pbiAwLjNzO1xufVxuXG4uY291bnRkb3duX19kaXNwbGF5LS12aXNpYmxlICsgLmNvdW50ZG93bl9fdGltZXItbWVzc2FnZS0tdmlzaWJsZSB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cblxuLmNvdW50ZG93bl9fZGlzcGxheS0taGlkZGVuIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgZWFzZS1vdXQgM3M7XG59XG5cbi5jb3VudGRvd25fX2Rpc3BsYXktYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG4gIHBhZGRpbmc6IDAgMXJlbTtcblxuICAmIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIH1cbiAgfVxuXG4gICYgc3BhbiB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuN3B4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG5cbiAgQG5lc3QgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5jb3VudGRvd25fX3RpbWVyLW1lc3NhZ2Uge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgaGVpZ2h0OiAwO1xufVxuXG4uY291bnRkb3duX190aW1lci1tZXNzYWdlLS12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLWluIDFzO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5jb3VudGRvd25fX2Jsb2NrLS1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSBlYXNlLW91dCAxcztcbiAgd2lkdGg6IDAgIWltcG9ydGFudDtcbn1cblxuLmNvdW50ZG93bl9fb3ZlcmxheSB7XG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvdW50ZG93bi1vdmVybGF5LXJnYmEpO1xuICB9XG59XG4iLCIuaG90c3BvdHMtc2VjdGlvbiAuaW5kZXgtc2VjdGlvbiB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLmhvdHNwb3RzLXNlY3Rpb24gLmhvdHNwb3RzLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgJi5pcy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cblxuLmhvdHNwb3RzX190aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xufVxuXG4uaG90c3BvdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA3MCU7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIC5ncmlkX19pbWFnZS1yYXRpbyBpbWcge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcblxuICAgIEBuZXN0IFtkYXRhLWFuaW1hdGVfaW1hZ2VzPVwidHJ1ZVwiXSAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5ob3RzcG90c19fYnV0dG9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uaG90c3BvdF9fYnV0dG9uIHtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDM4JTtcbiAgdG9wOiAzOCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogNnB4O1xuICB9XG5cblxuICAmOmhvdmVyIC5ob3RzcG90X19idXR0b24tY29udGVudCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG59XG5cbi5ob3RzcG90X19idXR0b24tY29udGVudCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDFyZW0pO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICBtaW4td2lkdGg6IDVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogM3B4IDNweCAxMHB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cbiAgJiBwLFxuICAmIHNwYW4ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMFxuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGxlZnQ6IDUwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAgNXB4IDEwcHggNXB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWNvbG9yQm9keSkgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmIC5jb250ZW50X19wcmljZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cblxuLmhvdHNwb3RzX19jb250ZW50IHtcbiAgd2lkdGg6IDMwJTtcbiAgcGFkZGluZzogMjRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBAbmVzdCAucGFnZS13aWR0aCAmIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogNDBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5wYWdlLXdpZHRoLmlzLXJldmVyc2UgJiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMXJlbSAyMHB4IDA7XG4gIH1cbn1cblxuLmhvdHNwb3QtY29udGVudF9fYmxvY2sge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXgtaGVpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYW5pbWF0aW9uOiBmYWRlLWluIC41cyBlYXNlIDBzIGZvcndhcmRzO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG5cbiAgLyogYW5pbWF0aW9uIGFuZCBwb3NpdGlvbjpzdGlja3kgY2F1c2VzIGlzc3VlcyBpbiB0aGVtZXMgd2hlcmUgcXVpY2tzaG9wIG1vZGFsIGlzIG5lc3RlZCAqL1xuICBAbmVzdCAubW9kYWwtb3BlbiAmLFxuICAubW9kYWwtY2xvc2luZyAmIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlLXdyYXAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX3RhZ3Mge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X190YWcge1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLmdyaWQtaXRlbV9fbWV0YSxcbiAgJiAuZ3JpZC1wcm9kdWN0X19tZXRhIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgICAgJiAuZ3JpZC1pdGVtX19tZXRhLW1haW4sXG4gICAgICAmIC5ncmlkLWl0ZW1fX21ldGEtc2Vjb25kYXJ5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG5cbiAgICAmIC5ncmlkLXByb2R1Y3Qge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG5cbiAgICAmIC5xdWljay1hZGQtYnRuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLyogQ2xhc3MgaXMgdW5pcXVlIHRvIEltcHVsc2UgKi9cbiAgICAmIC5ncmlkX19pdGVtLWltYWdlLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS1tYXNrIHtcbiAgICAgICAgZmxleDogMCAwIDMwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmIC5ncmlkLWl0ZW1fX2xpbmssXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19saW5rIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG5cbiAgICAvKiBUT0RPOiBBZGp1c3QgZ2xvYmFsIHN0eWxpbmdzIGluIGdyaWQuY3NzIHNvIHdlIGRvbid0IGhhdmUgdG8gYWRkIGV4Y2VwdGlvbnMgbGlrZSB0aGlzICovXG4gICAgJiAuZ3JpZC1pdGVtX19saW5rIHtcbiAgICAgIEBuZXN0IFtkYXRhLWdyaWQtc3R5bGU9XCJncmV5LXJvdW5kXCJdICYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAxMHB4O1xuICAgICAgfVxuXG4gICAgICBAbmVzdCBbZGF0YS1ncmlkLXN0eWxlPVwid2hpdGUtcm91bmRcIl0gJiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHggMCAwIDEwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS1tYXNrLFxuICAgICYgLmdyaWQtcHJvZHVjdF9faW1hZ2Utd3JhcCxcbiAgICAmIC5wcm9kdWN0LXNsaWRlciB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cblxuICAgICYgLmdyaWQtcHJvZHVjdF9fYWN0aW9ucyB7XG4gICAgICByaWdodDogaW5pdGlhbDtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgfVxuICB9XG5cbn1cblxuLmhvdHNwb3QtY29udGVudF9fYmxvY2sgLm1vZGFsIC5ncmlkX19pdGVtIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4iLCJpbWFnZS1jb21wYXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb21wYXJpc29uX19kcmFnZ2FibGUge1xuICB3aWR0aDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNTAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAyO1xufVxuXG4uY29tcGFyaXNvbl9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIGFuaW1hdGlvbjogbm9uZTtcbn1cblxuLmNvbXBhcmlzb25fX2ltYWdlLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY29tcGFyaXNvbl9fYnV0dG9uIHtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0zMnB4LCAtNTAlKTtcbiAgYm9yZGVyOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAzcHggc29saWQgI2ZmZjtcbiAgcGFkZGluZzogMDtcblxuICBAbmVzdCAuY29tcGFyaXNvbi0tc3R5bGUtbWluaW1hbCAmIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IDExMnB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01NnB4LCAtNTAlKTtcblxuICAgICYgc3ZnIHtcbiAgICAgIG1hcmdpbjogMCAyMHB4O1xuXG4gICAgICBAc3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgJi5pY29uLWNoZXZyb24tbGVmdCB7XG4gICAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLmljb24tY2hldnJvbi1yaWdodCB7XG4gICAgICAgICAgcmlnaHQ6IDJweDtcbiAgICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLmNvbXBhcmlzb24tLXN0eWxlLWNsYXNzaWMgJiB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogNDhweDtcbiAgICAgIGhlaWdodDogNDhweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yNHB4LCAtNTAlKTtcbiAgICB9XG4gIH1cblxuXG4gICYgc3ZnIHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8qIEFnZSB2ZXJpZmljYXRpb24gcG9wdXAgKi9cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwIHtcbiAgJiAucnRlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2J0bnMtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICB9XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19iYWNrZ3JvdW5kLWltYWdlLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19iYWNrZ3JvdW5kLWltYWdlIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19jb250ZW50LS1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDEuNXMgZWFzZS1pbjtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQtLWluYWN0aXZlLFxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2NvbnRlbnQtLWluYWN0aXZlICosXG4uYWdlLXZlcmlmaWNhdGlvbi1wb3B1cF9fY29udGVudC0taW5hY3RpdmUgLmJ0biB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0taW5hY3RpdmUsXG4uYWdlLXZlcmlmaWNhdGlvbi1wb3B1cF9fZGVjbGluZS1jb250ZW50LS1pbmFjdGl2ZSAqLFxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0taW5hY3RpdmUgLmJ0biB7XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLmFnZS12ZXJpZmljYXRpb24tcG9wdXBfX2RlY2xpbmUtY29udGVudC0tYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxLjVzIGVhc2UtaW47XG59XG5cbi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwX19jb250ZW50LXdyYXBwZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogNTIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuIiwicHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNbZGF0YS1pbnRlbnQ9XCJjb21wbGVtZW50YXJ5XCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJiAucHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNzIlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gICYgLmdyaWQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgJiAuZ3JpZF9faXRlbSxcbiAgJiAuZ3JpZC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZS13cmFwIHtcbiAgICBtaW4td2lkdGg6IDkwcHg7XG4gIH1cblxuICAmIC5ncmlkX19pbWFnZS1yYXRpbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAmIGltZy5pbWFnZS1zdHlsZS0tY2lyY2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDg1JTtcbiAgICBoZWlnaHQ6IDg1JTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0taW1hZ2Utd3JhcHBlciAuZ3JpZC1wcm9kdWN0X19saW5rIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLmdyaWRfX2l0ZW0taW1hZ2Utd3JhcHBlcixcbiAgJiAuZ3JpZC1wcm9kdWN0X19saW5rLFxuICAmIC5ncmlkLWl0ZW1fX2xpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICYgLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzayxcbiAgICAmIC5ncmlkLXByb2R1Y3RfX2ltYWdlLXdyYXAsXG4gICAgJiAuaW1hZ2Utd3JhcCB7XG4gICAgICB3aWR0aDogMTEycHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19tZXRhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0OHB4O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDExMnB4KTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19hY3Rpb25zIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cblxuICAmIC5ncmlkLXByb2R1Y3RfX3RhZyB7XG4gICAgdG9wOiBpbml0aWFsO1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktdmlld3BvcnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiAuZmxpY2tpdHktcHJldmlvdXMge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAtMzJweDtcbiAgICByaWdodDogNTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcmlnaHQ6IDQ1cHg7XG4gICAgfVxuICB9XG5cbiAgJiAuZmxpY2tpdHktbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAtMzJweDtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgdG9wOiAtNDFweDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3R0b206IGF1dG87XG4gIH1cblxuICAmIC5mbGlja2l0eS1idXR0b246ZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gIH1cbn1cblxuLnByb2R1Y3QtcmVjb21tZW5kYXRpb25zX19zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgJiAuZ3JpZF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi5wcm9kdWN0LXJlY29tbWVuZGF0aW9ucy0tdGl0bGUtbWlzc2luZyB7XG4gIG1hcmdpbi10b3A6IDgwcHg7XG59XG4iLCIvKlxuICBTaGFyZWQgc3R5bGluZyBmb3IgYWxsIGltYWdlcyBpbiBvdXIgdGhlbWVzXG5cbiAgSXQncyBhIHdvcmsgaW4gcHJvZ3Jlc3MgYW5kIHdlJ3JlIHRyeWluZyB0byBtb3ZlIGF3YXkgZnJvbSBoYXZpbmcgdG8gYWRkIHNwZWNpZmljIHN0eWxpbmcgZm9yIGltYWdlcyBpbiB0aGVtZXNcblxuICBBbGwgaW1hZ2VzIG5vdyBoYXZlIGEgYmFzZSBmYWRlLWluIGFuaW1hdGlvbiB3aGVuIHRoZXkncmUgbG9hZGVkXG5cbiAgTW90aW9uICYgU3RyZWFtbGluZSBoYXZlIHNldHRpbmdzIHRvIGVuYWJsZS9kaXNhYmxlIGFuaW1hdGlvbnMgZm9yIGltYWdlc1xuKi9cblxuaW1hZ2UtZWxlbWVudCB7XG4gIC5zdmctbWFzayAmLFxuICAuaW1hZ2Utd3JhcDpub3QoLmltYWdlLXdyYXBfX3RodW1ibmFpbCkgJixcbiAgLmdyaWRfX2ltYWdlLXJhdGlvICYsXG4gIC5jb3VudGRvd25fX2JhY2tncm91bmQtaW1hZ2Utd3JhcHBlciAmLFxuICAuc29jaWFsLXNlY3Rpb25fX2ltYWdlLXdyYXBwZXIgJixcbiAgLmZhZGluZy1pbWFnZXNfX2l0ZW0td3JhcHBlciAmIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbmltZyB7XG4gIGJvcmRlcjogMCBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWFnZS1lbGVtZW50IHtcbiAgb3BhY2l0eTogMDtcblxuICAmW2xvYWRpbmc9XCJlYWdlclwiXSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBuZXN0IC50ZW1wbGF0ZS1naWZ0Y2FyZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW5pbWF0ZV9pbWFnZXM9XCJmYWxzZVwiXSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtbWVkaWEtZ2FsbGVyeS1sYXlvdXQ9XCJzdGFja2VkXCJdICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJpbWFnZS1mYWRlLWluXCJdLmFvcy1hbmltYXRlICYge1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAwLjVzIGN1YmljLWJlemllcigwLjI5LCAwLjY1LCAwLjU4LCAxKSBmb3J3YXJkcztcblxuICAgICYubG9hZGVyLWxvZ29fX2ltZyB7XG4gICAgICBhbmltYXRpb246IHB1bHNlLWZhZGUgMC40cyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgfVxuXG4gICAgLy8gVGhpcyBzaG91bGQgZW5zdXJlIHRoYXQgaW1hZ2VzIGFyZW4ndCBhbmltYXRlZCBpbiBNb3Rpb24gJiBTdHJlYW1saW5lXG4gICAgLy8gV2hlbiB0aGUgdXNlciBoYXMgZGlzYWJsZWQgYW5pbWF0aW9uc1xuICAgIEBuZXN0IFtkYXRhLWFuaW1hdGVfaW1hZ2VzPVwiZmFsc2VcIl0gJiB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gR2VtJ3MgbmV3IHN0YWNrZWQgaW1hZ2VzIHdpbGwgaGF2ZSB0aGUgZmFkZS1pbiBhbmltYXRpb24gZGlzYWJsZWRcbiAgICBAbmVzdCBbZGF0YS1tZWRpYS1nYWxsZXJ5LWxheW91dD1cInN0YWNrZWRcIl0gJiB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIGFuaW1hdGlvbiBmcm9tIGNvbG9yIHNjaGVtZSBpbWFnZXNcbiAgICAmLnNjaGVtZS1pbWFnZSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJi5oZXJvX19pbWFnZSB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyBzaG91bGQgZW5zdXJlIHRoYXQgaW1hZ2VzIHNob3cgdXAgaWYgSlMgaXMgZGlzYWJsZWRcbiAgQG5lc3QgLm5vLWpzICYge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmltYWdlLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pbWFnZS13cmFwIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ucnRlIHBbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyXCJdLFxuLnJ0ZSBkaXZbc3R5bGUqPVwidGV4dC1hbGlnbjogY2VudGVyXCJdIHtcbiAgJiBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuIiwiLnN2Zy1tYXNrIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDEwMCUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG5cbiAgJiAuZ3JpZF9faW1hZ2UtcmF0aW8ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxuXG4gICYgaW1nLFxuICAmIHN2Zzpub3QoLmljb24pLFxuICAmIHZpZGVvIHtcbiAgICBtYXNrLXNpemU6IDEwMCUgMTAwJTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICBvYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zdmctbWFzay0tbGFuZHNjYXBlIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JSAhaW1wb3J0YW50O1xufVxuXG4uc3ZnLW1hc2stLXBvcnRyYWl0IHtcbiAgcGFkZGluZy1ib3R0b206IDE1MCUgIWltcG9ydGFudDtcbn1cblxuLnN2Zy1tYXNrLS1zcXVhcmUge1xuICBwYWRkaW5nLWJvdHRvbTogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4uc3ZnLW1hc2stLXJvdW5kZWQtdG9wIGltZyxcbi5zdmctbWFzay0tcm91bmRlZC10b3Agc3ZnOm5vdCguaWNvbiksXG4uc3ZnLW1hc2stLXJvdW5kZWQtdG9wIHZpZGVvIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNTAlO1xufVxuXG4uc3ZnLW1hc2stLXJvdW5kZWQgaW1nLFxuLnN2Zy1tYXNrLS1yb3VuZGVkIHN2Zzpub3QoLmljb24pLFxuLnN2Zy1tYXNrLS1yb3VuZGVkIHZpZGVvIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG4uc3ZnLW1hc2stLXN0YXIgaW1nLFxuLnN2Zy1tYXNrLS1zdGFyIHN2Zzpub3QoLmljb24pLFxuLnN2Zy1tYXNrLS1zdGFyIHZpZGVvIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBuTVRJNE5DY2dhR1ZwWjJoMFBTY3hNalV4SnlCMmFXVjNRbTk0UFNjd0lEQWdNVEk0TkNBeE1qVXhKeUJtYVd4c1BTZHViMjVsSnlCNGJXeHVjejBuYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNuUGp4d1lYUm9JR1E5SjAwMk5ESWdNRXc0TVRrdU1EQTNJREk1TUM0ME5ERk1NVEUxTmk0ME5TQXlORGN1TnpRMFRERXdNemt1TnpNZ05UWTNMakl5VERFeU9ETXVOU0E0TURRdU5ERTVURGsyTUM0NU5UWWdPVEV5TGpNMU9VdzVNamN1TkRrMUlERXlOVEF1T0RSTU5qUXlJREV3TmpVdU9UWk1NelUyTGpVd05DQXhNalV3TGpnMFRETXlNeTR3TkRRZ09URXlMak0xT1V3d0xqUTVOelF6TnlBNE1EUXVOREU1VERJME5DNHlOamdnTlRZM0xqSXlUREV5Tnk0MU5UVWdNalEzTGpjME5FdzBOalF1T1RreklESTVNQzQwTkRGTU5qUXlJREJhSnlCbWFXeHNQU2NqUVRRNU5VWkNKeTgrUEM5emRtYytDZz09XCIpO1xufVxuXG4uc3ZnLW1hc2stLXJvdW5kZWQtd2F2ZSBpbWcsXG4uc3ZnLW1hc2stLXJvdW5kZWQtd2F2ZSBzdmc6bm90KC5pY29uKSxcbi5zdmctbWFzay0tcm91bmRlZC13YXZlIHZpZGVvIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBuTVRBMk5pY2dhR1ZwWjJoMFBTY3hNRFkySnlCMmFXVjNRbTk0UFNjd0lEQWdNVEEyTmlBeE1EWTJKeUJtYVd4c1BTZHViMjVsSnlCNGJXeHVjejBuYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNuUGp4d1lYUm9JR1E5SjAwME9USXVOVEE1SURNeExqZ3lPVEpETlRBekxqQTFOQ0F0TVRBdU16RTBPU0ExTmpJdU9UUTJJQzB4TUM0ek1UUTVJRFUzTXk0ME9URWdNekV1T0RJNU1sWXpNUzQ0TWpreVF6VTRNaTQwTWpRZ05qY3VOVE14SURZeU9TNDRNek1nTnpVdU1ETTVPQ0EyTkRrdU16WXhJRFF6TGpnME5UaFdORE11T0RRMU9FTTJOekl1TkRFeklEY3VNREl5T0RrZ056STVMak0zTkNBeU5TNDFNekEzSURjeU5pNHpPQ0EyT0M0NE56QTNWalk0TGpnM01EZEROekl6TGpnME15QXhNRFV1TlRnMklEYzJOaTQyTVRFZ01USTNMak0zTnlBM09UUXVPREl6SURFd015NDNORFJXTVRBekxqYzBORU00TWpndU1USTFJRGMxTGpnME55QTROell1TlRnZ01URXhMakExTVNBNE5qQXVNek01SURFMU1TNHpORFJXTVRVeExqTTBORU00TkRZdU5UZ3hJREU0TlM0ME56Z2dPRGd3TGpVeU1pQXlNVGt1TkRFNUlEa3hOQzQyTlRZZ01qQTFMalkyTVZZeU1EVXVOall4UXprMU5DNDVORGtnTVRnNUxqUXlJRGs1TUM0eE5UTWdNak0zTGpnM05TQTVOakl1TWpVMklESTNNUzR4TnpkV01qY3hMakUzTjBNNU16Z3VOakl6SURJNU9TNHpPRGtnT1RZd0xqUXhOQ0F6TkRJdU1UVTNJRGs1Tnk0eE1qa2dNek01TGpZeVZqTXpPUzQyTWtNeE1EUXdMalEzSURNek5pNDJNallnTVRBMU9DNDVPQ0F6T1RNdU5UZzNJREV3TWpJdU1UVWdOREUyTGpZek9WWTBNVFl1TmpNNVF6azVNQzQ1TmlBME16WXVNVFkzSURrNU9DNDBOamtnTkRnekxqVTNOaUF4TURNMExqRTNJRFE1TWk0MU1EbFdORGt5TGpVd09VTXhNRGMyTGpNeElEVXdNeTR3TlRRZ01UQTNOaTR6TVNBMU5qSXVPVFEySURFd016UXVNVGNnTlRjekxqUTVNVlkxTnpNdU5Ea3hRems1T0M0ME5qa2dOVGd5TGpReU5DQTVPVEF1T1RZZ05qSTVMamd6TXlBeE1ESXlMakUxSURZME9TNHpOakZXTmpRNUxqTTJNVU14TURVNExqazRJRFkzTWk0ME1UTWdNVEEwTUM0ME55QTNNamt1TXpjMElEazVOeTR4TWprZ056STJMak00VmpjeU5pNHpPRU01TmpBdU5ERTBJRGN5TXk0NE5ETWdPVE00TGpZeU15QTNOall1TmpFeElEazJNaTR5TlRZZ056azBMamd5TTFZM09UUXVPREl6UXprNU1DNHhOVE1nT0RJNExqRXlOU0E1TlRRdU9UUTVJRGczTmk0MU9DQTVNVFF1TmpVMklEZzJNQzR6TXpsV09EWXdMak16T1VNNE9EQXVOVEl5SURnME5pNDFPREVnT0RRMkxqVTRNU0E0T0RBdU5USXlJRGcyTUM0ek16a2dPVEUwTGpZMU5sWTVNVFF1TmpVMlF6ZzNOaTQxT0NBNU5UUXVPVFE1SURneU9DNHhNalVnT1Rrd0xqRTFNeUEzT1RRdU9ESXpJRGsyTWk0eU5UWldPVFl5TGpJMU5rTTNOall1TmpFeElEa3pPQzQyTWpNZ056SXpMamcwTXlBNU5qQXVOREUwSURjeU5pNHpPQ0E1T1RjdU1USTVWams1Tnk0eE1qbEROekk1TGpNM05DQXhNRFF3TGpRM0lEWTNNaTQwTVRNZ01UQTFPQzQ1T0NBMk5Ea3VNell4SURFd01qSXVNVFZXTVRBeU1pNHhOVU0yTWprdU9ETXpJRGs1TUM0NU5pQTFPREl1TkRJMElEazVPQzQwTmprZ05UY3pMalE1TVNBeE1ETTBMakUzVmpFd016UXVNVGRETlRZeUxqazBOaUF4TURjMkxqTXhJRFV3TXk0d05UUWdNVEEzTmk0ek1TQTBPVEl1TlRBNUlERXdNelF1TVRkV01UQXpOQzR4TjBNME9ETXVOVGMySURrNU9DNDBOamtnTkRNMkxqRTJOeUE1T1RBdU9UWWdOREUyTGpZek9TQXhNREl5TGpFMVZqRXdNakl1TVRWRE16a3pMalU0TnlBeE1EVTRMams0SURNek5pNDJNallnTVRBME1DNDBOeUF6TXprdU5qSWdPVGszTGpFeU9WWTVPVGN1TVRJNVF6TTBNaTR4TlRjZ09UWXdMalF4TkNBeU9Ua3VNemc1SURrek9DNDJNak1nTWpjeExqRTNOeUE1TmpJdU1qVTJWamsyTWk0eU5UWkRNak0zTGpnM05TQTVPVEF1TVRVeklERTRPUzQwTWlBNU5UUXVPVFE1SURJd05TNDJOakVnT1RFMExqWTFObFk1TVRRdU5qVTJRekl4T1M0ME1Ua2dPRGd3TGpVeU1pQXhPRFV1TkRjNElEZzBOaTQxT0RFZ01UVXhMak0wTkNBNE5qQXVNek01VmpnMk1DNHpNemxETVRFeExqQTFNU0E0TnpZdU5UZ2dOelV1T0RRM0lEZ3lPQzR4TWpVZ01UQXpMamMwTkNBM09UUXVPREl6VmpjNU5DNDRNak5ETVRJM0xqTTNOeUEzTmpZdU5qRXhJREV3TlM0MU9EWWdOekl6TGpnME15QTJPQzQ0TnpBM0lEY3lOaTR6T0ZZM01qWXVNemhETWpVdU5UTXdOeUEzTWprdU16YzBJRGN1TURJeU9EY2dOamN5TGpReE15QTBNeTQ0TkRVNElEWTBPUzR6TmpGV05qUTVMak0yTVVNM05TNHdNems0SURZeU9TNDRNek1nTmpjdU5UTXhJRFU0TWk0ME1qUWdNekV1T0RJNU1pQTFOek11TkRreFZqVTNNeTQwT1RGRExURXdMak14TkRrZ05UWXlMamswTmlBdE1UQXVNekUwT1NBMU1ETXVNRFUwSURNeExqZ3lPVElnTkRreUxqVXdPVlkwT1RJdU5UQTVRelkzTGpVek1TQTBPRE11TlRjMklEYzFMakF6T1RnZ05ETTJMakUyTnlBME15NDRORFU0SURReE5pNDJNemxXTkRFMkxqWXpPVU0zTGpBeU1qZzJJRE01TXk0MU9EY2dNalV1TlRNd055QXpNell1TmpJMklEWTRMamczTURjZ016TTVMall5VmpNek9TNDJNa014TURVdU5UZzJJRE0wTWk0eE5UY2dNVEkzTGpNM055QXlPVGt1TXpnNUlERXdNeTQzTkRRZ01qY3hMakUzTjFZeU56RXVNVGMzUXpjMUxqZzBOeUF5TXpjdU9EYzFJREV4TVM0d05URWdNVGc1TGpReUlERTFNUzR6TkRRZ01qQTFMalkyTVZZeU1EVXVOall4UXpFNE5TNDBOemdnTWpFNUxqUXhPU0F5TVRrdU5ERTVJREU0TlM0ME56Z2dNakExTGpZMk1TQXhOVEV1TXpRMFZqRTFNUzR6TkRSRE1UZzVMalF5SURFeE1TNHdOVEVnTWpNM0xqZzNOU0EzTlM0NE5EY2dNamN4TGpFM055QXhNRE11TnpRMFZqRXdNeTQzTkRSRE1qazVMak00T1NBeE1qY3VNemMzSURNME1pNHhOVGNnTVRBMUxqVTROaUF6TXprdU5qSWdOamd1T0Rjd04xWTJPQzQ0TnpBM1F6TXpOaTQyTWpZZ01qVXVOVE13TnlBek9UTXVOVGczSURjdU1ESXlPRGNnTkRFMkxqWXpPU0EwTXk0NE5EVTRWalF6TGpnME5UaERORE0yTGpFMk55QTNOUzR3TXprNElEUTRNeTQxTnpZZ05qY3VOVE14SURRNU1pNDFNRGtnTXpFdU9ESTVNbFl6TVM0NE1qa3lXaWNnWm1sc2JEMG5JMEUwT1RWR1FpY3ZQand2YzNablBnbz1cIik7XG59XG5cbi5zdmctbWFzay0tc3BsYXQtMSBpbWcsXG4uc3ZnLW1hc2stLXNwbGF0LTEgc3ZnOm5vdCguaWNvbiksXG4uc3ZnLW1hc2stLXNwbGF0LTEgdmlkZW8ge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMG5NVEEwT0NjZ2FHVnBaMmgwUFNjeE1EVXlKeUIyYVdWM1FtOTRQU2N3SURBZ01UQTBPQ0F4TURVeUp5Qm1hV3hzUFNkdWIyNWxKeUI0Yld4dWN6MG5hSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY25Qanh3WVhSb0lHWnBiR3d0Y25Wc1pUMG5aWFpsYm05a1pDY2dZMnhwY0MxeWRXeGxQU2RsZG1WdWIyUmtKeUJrUFNkTk5UY3dMamt3TlNBeE5USXVNelE0UXpZNE9DNDBOREVnTVRRd0xqTXpJRGMzTVM0eE9EY2dMVEkzTGpreE5EZ2dPRGcwTGprME1TQTBMakF5TlRjMVF6azROeTQ1T1RjZ016SXVPVFl5TXlBeE1EQTJMakl6SURFM09DNHhPRGdnTVRBek1pNDJJREk0TVM0NU9EVkRNVEExTlM0M05pQXpOek11TVRVMElERXdOVEl1TWpVZ05EWTRMakV6TkNBeE1ESTFMamMySURVMU9DNHpPRGhETVRBd01TNDNJRFkwTUM0ek16WWdPVFF3TGpJNU9DQTNNREF1TlRNNUlEZzRPUzQxTlRJZ056WTVMakl4T1VNNE16UXVNREl5SURnME5DNHpOelVnTnprMUxqTWdPVE0wTGpRMklEY3hNeTQ1TlNBNU9EQXVNemszUXpZeU1pNHpNVGdnTVRBek1pNHhOQ0ExTVRBdU1UQTRJREV3TnpNdU5TQTBNVEF1TkRNMklERXdNemt1TnpkRE16RXhMakU0TmlBeE1EQTJMakU0SURJM05TNDVNamNnT0RnM0xqUXdOU0F5TURZdU5qYzNJRGd3T0M0M016ZERNVE0yTGpjd015QTNNamt1TWpRNElERTBMalkxTXpZZ05qYzVMamszT0NBeExqSXlOREUwSURVM05DNDVNRGRETFRFeUxqSXhORFlnTkRZNUxqYzJNeUE0T0M0eU9EazJJRE00T0M0ME16TWdNVFF4TGpJeU1TQXlPVFl1TmpFeVF6RTRPQzQyTVRZZ01qRTBMak01TkNBeU1EVXVOalF6SURrMExqUTRNakVnTWprMUxqVTNOU0EyTkM0eU9EaERNemc0TGpnd09TQXpNaTQ1T0RVeElEUTNNeTR3TnpFZ01UWXlMak0xTVNBMU56QXVPVEExSURFMU1pNHpORGhhSnlCbWFXeHNQU2NqUVRRNU5VWkNKeTgrUEM5emRtYytDZz09XCIpO1xufVxuXG4uc3ZnLW1hc2stLXNwbGF0LTIgaW1nLFxuLnN2Zy1tYXNrLS1zcGxhdC0yIHN2Zzpub3QoLmljb24pLFxuLnN2Zy1tYXNrLS1zcGxhdC0yIHZpZGVvIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCbWFXeHNQU2R1YjI1bEp5Qm9aV2xuYUhROUp6ZzVOaWNnZG1sbGQwSnZlRDBuTUNBd0lEazNOeUE0T1RZbklIZHBaSFJvUFNjNU56Y25JSGh0Ykc1elBTZG9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5YytQSEJoZEdnZ1kyeHBjQzF5ZFd4bFBTZGxkbVZ1YjJSa0p5QmtQU2R0T1RjMUxqWTROQ0F6T0RFdU9ETXlZekUzTGpJMk15QTVOUzR3TXpNdE1UUXdMakl4TkNBeE1qa3VNak14TFRFNE55NHhOemNnTWpFekxqWTJOaTAxTWk0eE16Z2dPVE11TnpNM0lEZ3VOVEUxSURJNE9DNHdPVFV0T1RndU1qVXpJREk1T1M0MU1ETXRNVEkzTGpFM05TQXhNeTQxT0RjdE1UTTRMakEwT1MweE1UVXVNell5TFRJMk15MHhOREl1TmpNdE1UQTVMalU0TlMweU15NDVNVFF0TWpJMExqVXpOU0E1TVM0NE9UUXRNekE0TGpjeE5TQXhOeTQ0TmpRdE9EUXVOVFF6TXkwM05DNHpORGdnTVRFNExqWTRPQzB5TURjdU16Y3pJRGt6TGpneU9TMHpNVGN1TURrMExUSXlMakUwT1MwNU55NDNOaTB5TURRdU1UazJOekl0TVRBMExqZzNPQzB5TVRJdU1EY3hOREF4TFRJd05DNDRMVFl1T0RZMU5UYzVMVGczTGpFeE9DQXhNRGN1TURJeE5EQXhMVEV6Tmk0eE56Y2dNVGd4TGpVNU5qUXdNUzB4T0RFdU9UQXhNeUEyTmk0eE5qTXROREF1TlRZMk9DQXhOREl1TlRNeExUYzJMamN3TkRrZ01qRTVMakE0TWkwMk15NDNOams1TmlBM01TNHpPRE1nTVRJdU1EWXhOellnTVRRd0xqUTROaUEyTWk0M056TTFOaUF4TmpndU9EVXlJREV5T1M0ek1qQXlOaUE1TGpreU9TQXlNeTR5T1RNZ01qVXVPRE01SURVMExqVXlPQ0EyT1M0NU1pQTNPQzQxTVRjZ09URXVPRFU1SURRNUxqazVJRE13TkM0NE1UWWdNQ0F6TXpVdU9UTTNJREUzTVM0ek1qVjZKeUJtYVd4c1BTY2pZVFE1TldaaUp5Qm1hV3hzTFhKMWJHVTlKMlYyWlc1dlpHUW5MejQ4TDNOMlp6ND1cIik7XG59XG5cbi5zdmctbWFzay0tc3BsYXQtMyBpbWcsXG4uc3ZnLW1hc2stLXNwbGF0LTMgc3ZnOm5vdCguaWNvbiksXG4uc3ZnLW1hc2stLXNwbGF0LTMgdmlkZW8ge1xuICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUIzYVdSMGFEMG5NVEEzTWljZ2FHVnBaMmgwUFNjeE1EVXhKeUIyYVdWM1FtOTRQU2N3SURBZ01UQTNNaUF4TURVeEp5Qm1hV3hzUFNkdWIyNWxKeUI0Yld4dWN6MG5hSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY25Qanh3WVhSb0lHWnBiR3d0Y25Wc1pUMG5aWFpsYm05a1pDY2dZMnhwY0MxeWRXeGxQU2RsZG1WdWIyUmtKeUJrUFNkTk5qRTRMamt4TXlBeU1UVXVNemd6UXpjME5TNDNOelVnTWpJMUxqWTFOeUE0TkRFdU56VWdNVGd1TURBME9TQTVOakF1TmpjNElEWXpMak15TWpSRE1UQTJPUzQ0TlNBeE1EUXVPVEkwSURFd056QXVORE1nTWpjeExqSTJNaUF4TURjeExqazVJRE00T0M0d01qaERNVEEzTXk0eU5TQTBPREl1TWpnNElEazNNaTR3TWpZZ05UVXdMamcxTlNBNU5qZ3VORFE1SURZME5TNHdOVFZET1RZMExqRTBOeUEzTlRndU16TXhJREV4TURNdU5qa2dPRFk0TGpJNU9DQXhNRFE1TGprMklEazJPQzR4TWpaRE1UQXdNQzR5TkNBeE1EWXdMalVnT0RVMkxqUTJPQ0F4TURNNExqZ3lJRGMxTVM0NE56WWdNVEEwTnk0ME1VTTJOalF1TXpFMklERXdOVFF1TmlBMU56TXVOalkwSURFd05UUXVORFFnTkRrMUxqZzNJREV3TVRNdU5qUkROREkwTGpjek1TQTVOell1TXpNeElEUXdPUzQ0TXpRZ09EYzRMalk0T1NBek5ETXVOVGd5SURnek15NHlOekpETWpReExqTTBPU0EzTmpNdU1Ua2dOall1TXprNU55QTNPVE11TkRFMklERXlMakV4T1RRZ05qZ3lMakF5TTBNdE16Y3VOVGN6T0NBMU9EQXVNRFEwSURjNUxqSTNOVFlnTkRjeUxqVXpPQ0F4TVRVdU5EQXlJRE0yTlM0d01EaERNVFUyTGpZM01pQXlOREl1TVRZMElERXhOUzR6TWlBME1TNDROVFl6SURJek9TNDFPVGdnTkM0NU1qVTNNME16T0RFdU1EZ3hJQzB6Tnk0eE1UYzJJRFEzTVM0M09URWdNakF6TGpRMk9DQTJNVGd1T1RFeklESXhOUzR6T0ROYUp5Qm1hV3hzUFNjalFUUTVOVVpDSnk4K1BDOXpkbWMrQ2c9PVwiKTtcbn1cblxuLnN2Zy1tYXNrLS1zcGxhdC00IGltZyxcbi5zdmctbWFzay0tc3BsYXQtNCBzdmc6bm90KC5pY29uKSxcbi5zdmctbWFzay0tc3BsYXQtNCB2aWRlbyB7XG4gIG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwbk5URTRKeUJvWldsbmFIUTlKelV3TkNjZ2RtbGxkMEp2ZUQwbk1DQXdJRFV4T0NBMU1EUW5JR1pwYkd3OUoyNXZibVVuSUhodGJHNXpQU2RvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeWMrUEhCaGRHZ2dabWxzYkMxeWRXeGxQU2RsZG1WdWIyUmtKeUJqYkdsd0xYSjFiR1U5SjJWMlpXNXZaR1FuSUdROUowMHpNRE11TnpreklEZzBMalkzTTBNek1Ua3VPVFF5SURFd09DNDFNakVnTXpNMUxqVXpJREV5T0M0eU5UTWdNell3TGpJNE9TQXhNek11TXprM1F6UXdNeTQyTkRNZ01UUXlMalF3TkNBME5UUXVOREl4SURrM0xqY3pNaUEwT1RBdU5EYzVJREV5TXk0ME5UZEROVEl3TGpNeE1TQXhORFF1TnpNNUlEVXlNeTQ0SURJeE1DNDJORFlnTlRFd0xqUTNPU0F5TXpVdU9UazVRelE1TkM0NU56a2dNalkxTGpRNU9TQTBOVGd1TWpjNElESTRNQzR3TkNBME5ESXVPVGM1SURNd09TNDVPVGxETkRJMExqWXlPU0F6TkRVdU9UTXhJRFExTXk0M05DQXpPRFF1T1RZM0lEUXhNQzQwTnprZ05ERXpMalE1T1VNek56Y3VOVGM0SURRek5TNHhPVGdnTXpReExqZ3hOaUF6T1RjdU9EY3lJRE13TXk0M09UTWdOREE0TGpFNU9FTXlORE11T0RnMklEUXlOQzQwTmpZZ01qQTVMaklnTlRBMExqVTBNU0F4TkRjdU1UUTRJRFV3TWk0NU9UbERPRGt1TXpReE5DQTFNREV1TlRZeklETXhMalV4TURNZ05EVTBMamd6TmlBeE1DNDBOemt6SURRd01DNDVNRGhETFRFd0xqYzBPREVnTXpRMkxqUTNOeUF5TGpRek5UTTVJREkzTlM0d05UWWdOREV1TWpFMUlESXpNUzR6TmpaRE5qa3VOU0F4T1RrdU5TQXhNRFVnTVRnNUlERXlNaTQwT0NBeE16bERNVE14TGprek5TQXhNVEV1T1RVeklERXhPUzQwT0NBek5pQXhOelF1TXpjM0lEWXVPVFE1T1RoRE1qRTVMall4TnlBdE1UWXVPVGc1T1NBeU5qWXVORFF5SURJMExqQXlNakVnTXpBekxqYzVNeUE0TkM0Mk56TmFKeUJtYVd4c1BTY2pRVFE1TlVaQ0p5OCtQQzl6ZG1jK0NnPT1cIik7XG59XG4iLCIuZmVhdHVyZS1yb3dfX2l0ZW0tLW92ZXJsYXAtaW1hZ2VzIHtcbiAgJiAuZmVhdHVyZS1yb3dfX2ZpcnN0LWltYWdlIHtcbiAgICB3aWR0aDogNTUlO1xuICB9XG5cbiAgJiAuZmVhdHVyZS1yb3dfX3NlY29uZC1pbWFnZSB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxufVxuXG4uZmVhdHVyZS1yb3dfX2l0ZW0tLXBsYWNlaG9sZGVyLWltYWdlcyB7XG4gICYgLnBsYWNlaG9sZGVyLWltYWdlLXdyYXAge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93LXdyYXBwZXIgLmZlYXR1cmUtcm93X19pbWFnZXMge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICB9XG59XG5cbi5mZWF0dXJlLXJvdy13cmFwcGVyIC5mZWF0dXJlLXJvd19fdGV4dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDA7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1pbi13aWR0aDogNDMlO1xuICAgIGZsZXg6IDAgMSA0MyU7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93LS0zMyB7XG4gICYgLmZlYXR1cmUtcm93X19pbWFnZXMge1xuICAgIG1heC13aWR0aDogNTAlO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgZmxleDogMCAxIDMzLjMzMyU7XG4gICAgfVxuICB9XG59XG5cbi5mZWF0dXJlLXJvdy0tNTAge1xuICAmIC5mZWF0dXJlLXJvd19faW1hZ2VzIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBmbGV4OiAwIDEgNTAlO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93LS02NiB7XG4gICYgLmZlYXR1cmUtcm93X19pbWFnZXMge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGZsZXg6IDAgMSA2Ni42NjYlO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuIiwiLnNjcm9sbGluZy10ZXh0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG5cbi5zY3JvbGxpbmctdGV4dF9faW5uZXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luOiAwLjE1ZW0gMDtcbiAgYW5pbWF0aW9uOiBzY3JvbGxpbmctdGV4dCB2YXIoLS1tb3ZlLXNwZWVkKSBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBydW5uaW5nO1xufVxuXG4uc2Nyb2xsaW5nLXRleHRfX2lubmVyLS1yaWdodCB7XG4gIGFuaW1hdGlvbjogc2Nyb2xsaW5nLXRleHQtcmlnaHQgdmFyKC0tbW92ZS1zcGVlZCkgbGluZWFyIGluZmluaXRlO1xufVxuXG4uc2Nyb2xsaW5nLXRleHQgc3BhbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zY3JvbGxpbmctdGV4dDpob3ZlciAuc2Nyb2xsaW5nLXRleHRfX2lubmVyLFxuLnNjcm9sbGluZy10ZXh0OmZvY3VzIC5zY3JvbGxpbmctdGV4dF9faW5uZXIge1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xufVxuXG5Aa2V5ZnJhbWVzIHNjcm9sbGluZy10ZXh0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzY3JvbGxpbmctdGV4dC1yaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG4iLCIubmV3c2xldHRlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDQwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDYwcHggMDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uLS1pbWFnZS1sZWZ0IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uX19jb250ZW50IHtcbiAgZmxleDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgQG5lc3QgLm5ld3NsZXR0ZXItc2VjdGlvbi0tbm8taW1hZ2UgJiB7XG4gICAgZmxleDogMTAwJTtcbiAgfVxuXG4gICYgZm9ybSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIEBuZXN0IC50ZXh0LWxlZnQgJiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQG5lc3QgLnRleHQtcmlnaHQgJiB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXJfX2lucHV0LWdyb3VwIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItc2VjdGlvbl9faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyLXNlY3Rpb25fX2ltYWdlLS0zMyB7XG4gIGZsZXg6IDMzLjMzMyUgMCAwO1xufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uX19pbWFnZS0tNTAge1xuICBmbGV4OiA1MCUgMCAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uX19pbWFnZS0tNjYge1xuICBmbGV4OiA2Ni42NjYlIDAgMDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItZm9ybS1ncm91cCB7XG4gIEBuZXN0IC50ZXh0LWxlZnQgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgQG5lc3QgLnRleHQtcmlnaHQgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIucHJlZGljdGl2ZS1vdmVyZmxvdy1oaWRkZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG59XG5cbnByZWRpY3RpdmUtc2VhcmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA5NjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGZsZXg6IDk5O1xuICB9XG5cbiAgJi5pcy1hY3RpdmUgLnByZWRpY3RpdmVfX3NjcmVlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gICYuaXMtYWN0aXZlIC5idG4tLWNsb3NlLXNlYXJjaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbltkYXRhLWRhcms9XCJ0cnVlXCJdIHtcbiAgJiBpbnB1dCB7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgfVxuXG4gICYgLmJ0bi0tc2VhcmNoIHBhdGgge1xuICAgIHN0cm9rZTogI2ZmZiAhaW1wb3J0YW50O1xuICB9XG59XG5cbltkYXRhLWRhcms9XCJmYWxzZVwiXSB7XG4gICYgaW5wdXQge1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmIC5idG4tLXNlYXJjaCBwYXRoIHtcbiAgICBzdHJva2U6ICMwMDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucHJlZGljdGl2ZV9fc2NyZWVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3JNb2RhbEJnKTtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxucHJlZGljdGl2ZS1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgei1pbmRleDogNDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlYXJjaF9faW5wdXQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogNTtcbiAgdHJhbnNpdGlvbjogZmxleCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uc2VhcmNoX19pbnB1dCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yTmF2U2VhcmNoLCAjZmZmKTtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWJvZHktdGV4dCk7XG4gIGZsZXg6IDE7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLXJvdW5kbmVzcywgMCkgKjIpO1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE2cHg7XG59XG5cbi5idG4tLXNlYXJjaCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcmlnaHQ6IDE1cHg7XG5cbiAgJiAuaWNvbiB7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICB9XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgQG5lc3QgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxNXB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbGVmdDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi0tY2xvc2Utc2VhcmNoIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxleDogMzBweCAwIDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXG4gICYgLmljb24ge1xuICAgIGhlaWdodDogMjVweDtcbiAgICB3aWR0aDogMjVweDtcbiAgfVxuXG4gICYgLmljb24gcGF0aCB7XG4gICAgc3Ryb2tlOiB2YXIoLS1jb2xvck5hdlRleHQpICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNlYXJjaF9fcmVzdWx0cyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJvZHkpO1xuICBjb2xvcjogdmFyKC0tY29sb3ItYm9keS10ZXh0KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG4gIG1heC1oZWlnaHQ6IDgwdmg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIHZhcigtLXBhZ2VXaWR0aFBhZGRpbmcsIDE3cHgpICogMik7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tcGFnZVdpZHRoUGFkZGluZywgMTdweCkgKiAtMSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLXBhZ2VXaWR0aFBhZGRpbmcsIDE3cHgpICogLTEpO1xuICAgIG1heC1oZWlnaHQ6IDc1dmg7XG5cbiAgICBAbmVzdCAudGVtcGxhdGUtc2VhcmNoIC5wYWdlLWNvbnRlbnQgJiB7XG4gICAgICBtYXgtaGVpZ2h0OiA1MHZoO1xuICAgIH1cbiAgfVxufVxuXG4ucmVzdWx0cyB7XG4gIHBhZGRpbmc6IDAgMjBweCAyMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJiB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICYgbGkge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjA1KTtcbiAgICB9XG5cbiAgICAmIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5yZXN1bHRzLS1xdWVyaWVzIHtcbiAgJiBzcGFuIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgJiBtYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5yZXN1bHRzLS1wcm9kdWN0cyBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG59XG5cbi5yZXN1bHRzLS1wcm9kdWN0cyAjcHJlZGljdGl2ZS1zZWFyY2gtcHJvZHVjdHMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucmVzdWx0cy1wcm9kdWN0c19faW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiA4MHB4O1xuICBtYXgtd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbn1cblxuLnJlc3VsdHMtcHJvZHVjdHNfX2luZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucHJlZGljdGl2ZS1zZWFyY2gtcmVzdWx0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogNDBweCAwIDA7XG5cbiAgJiBoMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLnByZWRpY3RpdmUtc2VhcmNoLXJlc3VsdHMtLW5vbmUge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cblxuLnByZWRpY3RpdmUtc2VhcmNoX19uby1yZXN1bHRzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxufVxuXG4ucmVzdWx0c19fZ3JvdXAtMSB7XG4gIGZsZXg6IDEwMCUgMCAwO1xuXG4gICYgPiBkaXY6bm90KC5yZXN1bHRzLS1xdWVyaWVzKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucmVzdWx0c19fZ3JvdXAtMiB7XG4gIGZsZXg6IDEwMCUgMCAwO1xufVxuXG4ucmVzdWx0c19fc2VhcmNoLWJ0biB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4wNSk7XG4gIH1cbn1cblxuLyogQ29udGFpbmVyc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBjb250YWluZXIgKG1pbi13aWR0aDogODAwcHgpIHtcbiAgLnByZWRpY3RpdmUtc2VhcmNoLXJlc3VsdHMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICAucmVzdWx0cyB7XG4gICAgcGFkZGluZzogMCA0MHB4IDIwcHg7XG4gIH1cblxuICAucmVzdWx0c19fZ3JvdXAtMSB7XG4gICAgZmxleDogMSAwIDA7XG5cbiAgICAmIGRpdjpub3QoLnJlc3VsdHMtLXF1ZXJpZXMpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5yZXN1bHRzX19ncm91cC0yIHtcbiAgICBmbGV4OiAyIDAgMDtcblxuICAgICYgPiBkaXY6bm90KC5yZXN1bHRzLS1wcm9kdWN0cykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAucmVzdWx0c19fc2VhcmNoLWJ0biB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiAxMHB4IDAgMTBweCA0MHB4O1xuICB9XG59XG5cbi8qXG4ud29ya2Fyb3VuZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvckJvcmRlcik7XG59XG4qL1xuIiwiLnJlY2lwaWVudC1mb3JtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAyZW0gYXV0bztcblxuICAmIC5maWVsZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgJiAuZmllbGRfX2xhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjFzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gLjFzIGVhc2UtaW4tb3V0O1xuICAgIG1hcmdpbjogMDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG4gIH1cblxuICAmIC5maWVsZF9fbGFiZWw6bm90KC52YXJpYW50X19idXR0b24tbGFiZWwpOm5vdCgudGV4dC1sYWJlbCksXG4gICYgbGFiZWw6bm90KC52YXJpYW50X19idXR0b24tbGFiZWwpOm5vdCgudGV4dC1sYWJlbCkge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICAmIC5maWVsZF9faW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS1kb3duKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjZlbTtcbiAgICB9XG5cbiAgICAmLnRleHQtYXJlYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmb2N1cyB+IGxhYmVsLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikgfiBsYWJlbCB7XG4gICAgICBvcGFjaXR5OiAwLjY1O1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjg1KSB0cmFuc2xhdGVZKC0wLjRlbSkgdHJhbnNsYXRlWCgwLjE1ZW0pO1xuICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgcGFkZGluZzogMTZweCAxMHB4IDA7XG4gICAgfVxuICB9XG5cbiAgJiAuZmllbGRfX2lucHV0LS1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZXJyb3JSZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGVycm9yUmVkQmc7XG4gICAgY29sb3I6ICRlcnJvclJlZDtcblxuICAgICYgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogJGVycm9yUmVkO1xuICAgIH1cbiAgfVxuXG4gIC5yZWNpcGllbnQtZm9ybV9fY2hlY2tib3gtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDJlbTtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gICAgfVxuICB9XG5cbiAgJiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIGhlaWdodDogMTZweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JCb3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIH1cblxuICAmIC5jaGVja2JveC1sYWJlbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmIC5yZWNpcGllbnQtZm9ybS1maWVsZC1sYWJlbC0tc3BhY2UtYmV0d2VlbiA+IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gIH1cblxuICAmIC5yZWNpcGllbnQtZmllbGRzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIqLCBpbnB1dCwgOmJlZm9yZSwgOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCwgYm9keSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uLCBzdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmF1ZGlvLCBjYW52YXMsIHByb2dyZXNzLCB2aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIuZ3JpZCB7XG4gIEBtaXhpbiBjbGVhcmZpeDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlcjtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci1zbWFsbDtcblxuICAgIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXItc21hbGw7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJGdyaWQtZ3V0dGVyO1xuICB9XG59XG5cbi5ncmlkLS1zbWFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTBweDtcblxuICAmIC5ncmlkX19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cbn1cblxuLmdyaWRfX2l0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItc21hbGw7XG5cbiAgICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci1zbWFsbDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlcjtcbiAgfVxufVxuXG4uZ3JpZC0tbm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uZ3JpZC0tZmx1c2gtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogLSRncmlkLWd1dHRlcjtcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgJiA+IC5ncmlkX19pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXI7XG4gIH1cbn1cblxuLmdyaWQtLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmIC5ncmlkX19pdGVtIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIEd1dHRlcmxlc3MgZ3JpZHMgaGF2ZSBhbGwgdGhlIHByb3BlcnRpZXMgb2YgcmVndWxhciBncmlkcywgbWludXMgYW55IHNwYWNpbmcuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmdyaWQtLWZ1bGwge1xuICBtYXJnaW4tbGVmdDogMDtcblxuICAmID4gLmdyaWRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5ncmlkLS10YWJsZS1sYXJnZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcblxuICAgICYgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLnNtYWxsLS1ncmlkLS1mbHVzaCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG5cbiAgICBAbmVzdCAucGFnZS13aWR0aCAmIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0kcGFnZS13aWR0aC1ndXR0ZXItc21hbGwgKyAycHgpO1xuICAgIH1cblxuICAgICYgPiAuZ3JpZF9faXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFRleHQgQ29sdW1ucyBHcmlkIC0tIFNob3dzIDItMyBpdGVtcyBwZXIgcm93LCBmdWxsIHdpZHRoIGp1c3RpZnlcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4gIFxuLnRleHQtY29sdW1uX19ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdhcDogJGdyaWQtZ3V0dGVyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgLnRleHQtY29sdW1uX19ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7IC8qIDYtY29sdW1uIGdyaWQgKi9cbiAgfSBcblxuICAvKiBEZWZhdWx0OiBFYWNoIGl0ZW0gc3BhbnMgMyBjb2x1bW5zIChzbyAyIGl0ZW1zIHBlciByb3cpICovXG4gIC50ZXh0LWNvbHVtbl9fZ3JpZCA+ICoge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cblxuICAvKiBTcGVjaWFsIGNhc2UgZm9yIGV4YWN0bHkgMyBpdGVtczogMyBjb2x1bW5zLCAxIHJvdyAqL1xuICAudGV4dC1jb2x1bW5fX2dyaWQ6aGFzKD4gKjpudGgtY2hpbGQoMyk6bGFzdC1jaGlsZCkgPiAqIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLyogRm9yIGFueSBvZGQgbnVtYmVyIG9mIGl0ZW1zIChleGNsdWRpbmcgZXhhY3RseSAzIGl0ZW1zKSAqL1xuICAudGV4dC1jb2x1bW5fX2dyaWQ6aGFzKD4gKjpudGgtY2hpbGQob2RkKTpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDMpKSkgPiAqOm50aC1sYXN0LWNoaWxkKC1uKzMpIHtcbiAgICAvKiBMYXN0IDMgaXRlbXMgaW4gdGhlIGdyaWQgc3BhbiAyIGNvbHVtbnMgZWFjaCAqL1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cbn1cbiIsbnVsbCwiQGN1c3RvbS1tZWRpYSAtLXNtYWxsIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCk7XG5AY3VzdG9tLW1lZGlhIC0tbWVkaXVtLXVwIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tdXApO1xuQGN1c3RvbS1tZWRpYSAtLW1lZGl1bS1kb3duIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tZG93bik7XG5AY3VzdG9tLW1lZGlhIC0td2lkZXNjcmVlbiBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtd2lkZXNjcmVlbik7XG5cbkBtaXhpbiBncmlkLWNvbHVtbi1nZW5lcmF0b3I7XG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ2VuZXJhdG9yIHNtYWxsO1xuQG1peGluIGdyaWQtY29sdW1uLWdlbmVyYXRvciBtZWRpdW0tdXA7XG5cbkBtaXhpbiByZXNwb25zaXZlLWRpc3BsYXktaGVscGVyO1xuQG1peGluIHJlc3BvbnNpdmUtZGlzcGxheS1oZWxwZXIgc21hbGw7XG5AbWl4aW4gcmVzcG9uc2l2ZS1kaXNwbGF5LWhlbHBlciBtZWRpdW0tZG93bjtcbkBtaXhpbiByZXNwb25zaXZlLWRpc3BsYXktaGVscGVyIG1lZGl1bS11cDtcbiIsIi5mbGV4LWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXg6IDEgMSAxMDAlO1xuXG4gIEBuZXN0IFtkYXRhLWNlbnRlci10ZXh0PVwiY2VudGVyXCJdICYge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5mbGV4LWdyaWQtLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LWdyaWQtLWd1dHRlcnMge1xuICBtYXJnaW4tdG9wOiBjYWxjKC0kZ3V0dGVyIC8gMik7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0kZ3V0dGVyIC8gMik7XG59XG5cbi5mbGV4LWdyaWRfX2l0ZW0ge1xuICBmbGV4OiAwIDEgMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgQG5lc3QgLmZsZXgtZ3JpZC0tZ3V0dGVycyAmIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gICYgPiAqIHtcbiAgICBmbGV4OiAxIDEgMTAwJTtcbiAgfVxufVxuXG4uZmxleC1ncmlkX19pdGVtLS1zdHJldGNoIHtcbiAgZmxleDogMSAxIDEwMCU7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcbiAgfVxufVxuXG4vKkZsZXggZ3JpZCBzaXppbmcgZnJvbSB0aGVtZSBzZXR0aW5ncyovXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5mbGV4LWdyaWRfX2l0ZW0tLTMzIHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMyU7XG4gIH1cblxuICAuZmxleC1ncmlkX19pdGVtLS01MCB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICB9XG59XG5cbi8qUmV2ZXJzZSBvcmRlciBvciBlbGVtZW50cyovXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmZsZXgtZ3JpZF9faXRlbS0tbW9iaWxlLXNlY29uZCB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbn1cbiIsIi5jbGVhcmZpeCB7XG4gIEBtaXhpbiBjbGVhcmZpeDtcbn1cblxuaHRtbDpub3QoLm5vLWpzKTpub3QoLnRhYi1vdXRsaW5lKSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmlzLXRyYW5zaXRpb25pbmcge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5kaXNwbGF5LXRhYmxlIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZGlzcGxheS10YWJsZS1jZWxsIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLm1lZGl1bS11cC0tZGlzcGxheS10YWJsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5tZWRpdW0tdXAtLWRpc3BsYXktdGFibGUtY2VsbCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi52aXN1YWxseS1oaWRkZW4ge1xuICBAbWl4aW4gdmlzdWFsbHlIaWRkZW47XG59XG5cbi8qS2VlcCBkaW1lbnNpb25zIGJ1dCBoaWRlIHZpc3VhbGx5Ki9cbi52aXN1YWxseS1pbnZpc2libGUge1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBTa2lwIHRvIGNvbnRlbnQgYnV0dG9uXG4gICAgLSBPdmVycmlkZXMgLnZpc3VhbGx5LWhpZGRlbiB3aGVuIGZvY3VzZWRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uc2tpcC1saW5rOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6ICR6aW5kZXhTa2lwVG9Db250ZW50O1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuIiwiQGRlZmluZS1taXhpbiB2aXN1YWxseUhpZGRlbiB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuXG5AZGVmaW5lLW1peGluIG92ZXJsYXkgJHppbmRleDogYXV0byB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleDtcbn1cblxuQGRlZmluZS1taXhpbiBiYXNlRm9udFN0YWNrIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXR5cGVCYXNlUHJpbWFyeSksIHZhcigtLXR5cGVCYXNlRmFsbGJhY2spO1xuICBmb250LXNpemU6IHZhcigtLXR5cGVCb2R5U2l6ZU1vYmlsZSk7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10eXBlQmFzZVNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdHlwZUJhc2VMaW5lSGVpZ2h0KTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlQm9keVNpemUpO1xuICB9XG59XG5cbkBkZWZpbmUtbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrIHtcbiAgZm9udC1zaXplOiB2YXIoLS10eXBlQm9keVNtYWxsU2l6ZSk7XG59XG5cbkBkZWZpbmUtbWl4aW4gYmFzZUV4dHJhU21hbGxGb250U3RhY2sge1xuICBmb250LXNpemU6IHZhcigtLXR5cGVCb2R5RXh0cmFTbWFsbFNpemUpO1xufVxuXG5AZGVmaW5lLW1peGluIGhlYWRpbmdUZXh0Q2VudGVyIHtcbiAgQG5lc3QgW2RhdGEtdHlwZV9oZWFkZXJzX2FsaWduX3RleHQ9XCJjZW50ZXJcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbkBkZWZpbmUtbWl4aW4gYmFzZVRleHRDZW50ZXIge1xuICBAbmVzdCBbZGF0YS1jZW50ZXItdGV4dD1cImNlbnRlclwiXSAmIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuQGRlZmluZS1taXhpbiBoZWFkaW5nRm9udFN0YWNrIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXR5cGVIZWFkZXJQcmltYXJ5KSwgdmFyKC0tdHlwZUhlYWRlckZhbGxiYWNrKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLXR5cGVIZWFkZXJXZWlnaHQpO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHlwZUhlYWRlclNwYWNpbmcpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdHlwZUhlYWRlckxpbmVIZWlnaHQpO1xuXG4gIEBuZXN0IFtkYXRhLXR5cGVfaGVhZGVyX2NhcGl0YWxpemU9XCJ0cnVlXCJdICYge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbn1cblxuQGRlZmluZS1taXhpbiBhY2NlbnRGb250U3RhY2sge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHlwZVVwcGVyY2FzZVNwYWNpbmcpO1xufVxuXG5AZGVmaW5lLW1peGluIGFjY2VudEZvbnRTbWFsbFNpemUge1xuICBmb250LXNpemU6IHZhcigtLXR5cGVBY2NlbnRTbWFsbFNpemUpO1xufVxuXG5cbkBkZWZpbmUtbWl4aW4gaGVyb1NjcmltIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9ySW1hZ2VPdmVybGF5O1xuICBvcGFjaXR5OiAkY29sb3JJbWFnZU92ZXJsYXlPcGFjaXR5O1xufVxuXG5AZGVmaW5lLW1peGluIGhlcm9SYWRpYWwge1xuICBiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQocmdiYSgwLCAwLCAwLCAkY29sb3JJbWFnZU92ZXJsYXlUZXh0U2hhZG93KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA2MCUpO1xuICBtYXJnaW46IC0xMDBweCAtMjAwcHggLTEwMHB4IC0yMDBweDtcbn1cbiIsImh0bWwge1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuaHRtbFtkaXI9XCJydGxcIl0ge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cblxuaHRtbCxcbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuc3VwcG9ydHMtdG91Y2gubG9jay1zY3JvbGwge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvKiBpT1Mgc3BlY2lmaWMgZml4ICovXG4gICAgQHN1cHBvcnRzICgtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmUpIHtcbiAgICAgIG92ZXJmbG93OiBpbml0aWFsO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS13aWR0aCB7XG4gIG1heC13aWR0aDogJHBhZ2Utd2lkdGg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZS13aWR0aCxcbi5wYWdlLWZ1bGwge1xuICBwYWRkaW5nOiAwICRwYWdlLXdpZHRoLWd1dHRlci1zbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogMCAkcGFnZS13aWR0aC1ndXR0ZXItbGFyZ2U7XG4gIH1cbn1cblxuLnBhZ2Utd2lkdGgtLW5hcnJvdyB7XG4gIG1heC13aWR0aDogJHBhZ2Utd2lkdGgtbmFycm93O1xufVxuXG4ucGFnZS13aWR0aC0tdGlueSB7XG4gIG1heC13aWR0aDogNDUwcHg7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAucGFnZS13aWR0aC0tZmx1c2gtc21hbGwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLnBhZ2UtY29udGVudCxcbi5zaG9waWZ5LXBvbGljeV9fY29udGFpbmVyLFxuLnNob3BpZnktZW1haWwtbWFya2V0aW5nLWNvbmZpcm1hdGlvbl9fY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbiAgcGFkZGluZy1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlO1xuICB9XG59XG5cbi5zaG9waWZ5LWVtYWlsLW1hcmtldGluZy1jb25maXJtYXRpb25fX2NvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2UtY29udGVudC0tdG9wLFxuLnBhZ2UtY29udGVudC0td2l0aC1ibG9ja3Mge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLnBhZ2UtY29udGVudC0tYm90dG9tIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5tYWluLWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMzAwcHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtaW4taGVpZ2h0OiA3MDBweDtcbiAgfVxuXG4gIEBuZXN0IC50ZW1wbGF0ZS1jaGFsbGFuZ2UgJiB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxufVxuXG5ocixcbi5oci0tc21hbGwsXG4uaHItLW1lZGl1bSxcbi5oci0tbGFyZ2Uge1xuICBoZWlnaHQ6IDFweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLmhyLS1zbWFsbCB7XG4gIG1hcmdpbjogMTVweCBhdXRvO1xufVxuXG4uaHItLW1lZGl1bSB7XG4gIG1hcmdpbjogMjVweCBhdXRvO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDM1cHggYXV0bztcbiAgfVxufVxuXG4uaHItLWxhcmdlIHtcbiAgbWFyZ2luOiAkZ3V0dGVyIGF1dG87XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbjogY2FsYygkZ3V0dGVyICogMS41KSBhdXRvO1xuICB9XG5cbiAgQG5lc3QgLnBhZ2UtYmxvY2tzICsgJixcbiAgLnBhZ2UtYmxvY2tzICsgW2RhdGEtc2VjdGlvbi10eXBlPVwicmVjZW50bHktdmlld2VkXCJdICYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLmhyLS1jbGVhciB7XG4gIGJvcmRlcjogMDtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFJlc3BvbnNpdmUgdGFibGVzLCBkZWZpbmVkIHdpdGggLnRhYmxlLS1yZXNwb25zaXZlIG9uIHRhYmxlIGVsZW1lbnQuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnRhYmxlLS1yZXNwb25zaXZlIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYgdHIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJiB0cixcbiAgICAmIHRkIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIHRoLFxuICAgICYgdGQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgfVxuXG4gICAgJiB0ZDpiZWZvcmUge1xuICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC50YWJsZS0tc21hbGwtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRhYmxlX19zZWN0aW9uICsgLnRhYmxlX19zZWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuZGV0YWlscyBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbiAgZGlzcGxheTpub25lO1xufVxuIiwiYm9keSxcbmlucHV0LFxudGV4dGFyZWEsXG5idXR0b24sXG5zZWxlY3QsXG4uZmF1eC1zZWxlY3Qge1xuICBAbWl4aW4gYmFzZUZvbnRTdGFjaztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG59XG5cbmJvZHkge1xuICBmb250LXdlaWdodDogdmFyKC0tdHlwZUJhc2VXZWlnaHQpO1xufVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgY2FsYygkZ3V0dGVyIC8gMikgMDtcblxuICAmIGltZyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5iLCBzdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuc21hbGwsXG5wW2RhdGEtc3BhbS1kZXRlY3Rpb24tZGlzY2xhaW1lcl0ge1xuICBmb250LXNpemU6IDAuODVlbTtcbn1cblxuc3VwLCBzdWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogNjAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjVlbTtcbn1cblxuYmxvY2txdW90ZSxcbi5ydGUgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlciA0MHB4O1xuXG4gICYgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICYgKyBjaXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICAgIH1cbiAgfVxuXG4gICYgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuY29kZSwgcHJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZjdmNTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBib3JkZXI6IDAgbm9uZTtcbiAgcGFkZGluZzogMCAycHg7XG4gIGNvbG9yOiAjNTFhYjYyO1xufVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIG1hcmdpbjogMCAwICRndXR0ZXI7XG59XG5cbmxhYmVsOm5vdCgudmFyaWFudF9fYnV0dG9uLWxhYmVsKTpub3QoLnRleHQtbGFiZWwpLFxuLmxhYmVsIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgMCAxMHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDAgMCBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gICYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICB9XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyB7XG4gIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xufVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiB2YXIoLS10eXBlSDFTaXplTW9iaWxlKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlSDFTaXplKTtcbiAgfVxufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiB2YXIoLS10eXBlSDJTaXplTW9iaWxlKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlSDJTaXplKTtcbiAgfVxufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiB2YXIoLS10eXBlSDNTaXplTW9iaWxlKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiB2YXIoLS10eXBlSDNTaXplKTtcbiAgfVxufVxuXG5oNCwgLmg0IHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG59XG5cbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbi5zdWJoZWFkaW5nIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbn1cblxuLypTdGFuZGFyZGl6ZSB0ZXh0IHNwYWNpbmcgc29tZXRpbWVzKi9cbi50ZXh0LXNwYWNpbmcsXG4udGV4dC1zcGFjaW5nLnJ0ZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbi5ydGUge1xuICAmIHRhYmxlIHtcbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcblxuICAgICAgJiB0ZCxcbiAgICAgICYgdGgge1xuICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBuZXN0IC5jb2xsYXBzaWJsZS1jb250ZW50ICYge1xuICAgICAgJiB0ZCxcbiAgICAgICYgdGgge1xuICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY29tbWVudC1hdXRob3Ige1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY29tbWVudC1kYXRlIHtcbiAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDNweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4uYWpheGNhcnRfX3N1YnRvdGFsIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG59XG5cbi5ydGUge1xuICAmIC5lbmxhcmdlLXRleHQge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGVFbmxhcmdlVGV4dFNpemUpO1xuICB9XG5cbiAgJiAuZW5sYXJnZS10ZXh0LS1vZmZzZXQge1xuICAgICYgcCB7XG4gICAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1JTtcblxuICAgICAgICBAbmVzdCAudGV4dC1jZW50ZXIgJiB7XG4gICAgICAgICAgcGFkZGluZzogMCA1JTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC50YWJsZS0tc21hbGwtdGV4dCB7XG4gICAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcbiAgfVxufVxuXG4uaW5kZXgtc2VjdGlvbi0tZm9vdGVyIHtcbiAgJiBoMyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT0gUlRMIG92ZXJyaWRlcyA9PT09PT09PT09PT09PT09Ki9cbmh0bWxbZGlyPVwicnRsXCJdIHtcbiAgJiAudGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgJiAudGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qSWNvbiArIHRleHQgZWxlbWVudCB0aGF0IHByZXZlbnRzIGF3a3dhcmQgbGluZSB3cmFwcGluZyovXG4uaWNvbi1hbmQtdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICYgLmljb24ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG59XG4iLCJ1bCwgb2wge1xuICBtYXJnaW46IDAgMCBjYWxjKCRndXR0ZXIgLyAyKSAkZ3V0dGVyO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5vbCBvbCB7XG4gIGxpc3Qtc3R5bGU6IGxvd2VyLWFscGhhO1xufVxuXG5vbCB7IGxpc3Qtc3R5bGU6IGRlY2ltYWw7IH1cbnVsIHVsLCB1bCBvbCxcbm9sIG9sLCBvbCB1bCB7IG1hcmdpbjogNHB4IDAgNXB4IDIwcHg7IH1cbmxpIHsgbWFyZ2luLWJvdHRvbTogMC4yNWVtOyB9XG5cbnVsLnNxdWFyZSB7IGxpc3Qtc3R5bGU6IHNxdWFyZSBvdXRzaWRlOyB9XG51bC5kaXNjIHsgbGlzdC1zdHlsZTogZGlzYyBvdXRzaWRlOyB9XG5vbC5hbHBoYSB7IGxpc3Qtc3R5bGU6IGxvd2VyLWFscGhhIG91dHNpZGU7IH1cblxuLm5vLWJ1bGxldHMge1xuICBsaXN0LXN0eWxlOiBub25lIG91dHNpZGU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uaW5saW5lLWxpc3Qge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG5cbiAgJiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuIiwidGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXNwYWNpbmc6IDFweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDAgbm9uZTtcbiAgYmFja2dyb3VuZDogJGNvbG9yQm9yZGVyO1xufVxuXG4udGFibGUtd3JhcHBlciB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxudGQsXG50aCB7XG4gIGJvcmRlcjogMCBub25lO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG5cbiAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxudGgge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxudGgsXG4udGFibGVfX3RpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4iLCJhLFxuLnRleHQtbGluayB7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLypGb3JjZSBhbiBpbnB1dC9idXR0b24gdG8gbG9vayBsaWtlIGEgdGV4dCBsaW5rKi9cbi50ZXh0LWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGJvcmRlcjogMCBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi8qTGlua3MgaW4gUlRFKi9cbi5ydGUgYSxcbi5zaG9waWZ5LXBvbGljeV9fY29udGFpbmVyIGEsXG4uc2hvcGlmeS1lbWFpbC1tYXJrZXRpbmctY29uZmlybWF0aW9uX19jb250YWluZXIgYSB7XG4gIGNvbG9yOiAkY29sb3JMaW5rO1xufVxuIiwiYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLmJ0bixcbi5ydGUgLmJ0bixcbi5zaG9waWZ5LXBheW1lbnQtYnV0dG9uIC5zaG9waWZ5LXBheW1lbnQtYnV0dG9uX19idXR0b24tLXVuYnJhbmRlZCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDRweCk7XG4gIGZvbnQtc2l6ZTogbWF4KGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDRweCksIDEzcHgpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRidG5QcmltYXJ5UGFkZGluZztcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogYXV0bztcbiAgbWluLXdpZHRoOiA5MHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvblJhZGl1cyk7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAkYnRuUHJpbWFyeVBhZGRpbmdTbWFsbDtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDVweCk7XG4gICAgZm9udC1zaXplOiBtYXgoY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gNXB4KSwgMTFweCk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgY29sb3I6ICRkaXNhYmxlZEdyZXlUZXh0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZEdyZXk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZGlzYWJsZWRHcmV5VGV4dDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZEdyZXk7XG4gICAgfVxuXG4gICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZEdyZXk7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGRpc2FibGVkQm9yZGVyO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRkaXNhYmxlZEJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKkN1c3RvbSBzZXR0aW5nLWJhc2VkIHN0eWxlcyovXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIHRyYW5zZm9ybTpza2V3WCgtJGJ1dHRvblNrZXdEZWcpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtNnB4O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC02cHg7XG4gICAgfVxuXG4gICAgJi5idG4tLXNtYWxsIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogLTVweDtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICByaWdodDogLTVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKkhvdmVyIGVmZmVjdCBvbiBub24tYW5nbGVkIGJ1dHRvbnMuIE11c3Qgb25seSBoYXZlIC5idG4gY2xhc3MqL1xuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J3NxdWFyZSddICYsXG4gIFtkYXRhLWJ1dHRvbl9zdHlsZV49J3JvdW5kJ10gJiB7XG4gICAgJjpub3QoLmJ0bi0tc2Vjb25kYXJ5KTpub3QoLmJ0bi0tdGVydGlhcnkpOm5vdCguYnRuLS1pbnZlcnNlKTpub3QoLmJ0bi0tYm9keSk6bm90KC5idG4tLXN0YXRpYykge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlIDBzO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAxNTAlO1xuICAgICAgICB3aWR0aDogMjAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKC0yMGRlZyk7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCx0cmFuc3BhcmVudCwgcmdiYSgyNTUsMjU1LDI1NSwuMjUpLHRyYW5zcGFyZW50KTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogc2hpbmUgMC43NXMgY3ViaWMtYmV6aWVyKDAuMDEsIDAuNTYsIDEsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeUxpZ2h0O1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjI1cztcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5O1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLypNaW1pYyB0aGUgLmJ0biBob3ZlciBzdHlsZSBmb3IgU2hvcGlmeSBQYXltZW50IEJ1dHRvbiovXG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbiAuc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS11bmJyYW5kZWQ6aG92ZXI6bm90KFtkaXNhYmxlZF0pIHtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xufVxuXG4vKk1vcmUgcGF5bWVudCBvcHRpb25zIGJ1dHRvbiBjb2xvciovXG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fbW9yZS1vcHRpb25zIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5idG4tLXNlY29uZGFyeSxcbi5ydGUgLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBib3R0b206IC0xcHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGJvcmRlciAwLjNzIGVhc2U7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgICAgdHJhbnNpdGlvbjogYm9yZGVyIDAuM3MgZWFzZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXIgMC4zcyBlYXNlO1xuICAgIH1cbiAgfVxufVxuXG4uYnRuLS10ZXJ0aWFyeSxcbi5ydGUgLmJ0bi0tdGVydGlhcnkge1xuICAvKlVuZG8gLmJ0biBzdHlsZXMqL1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IGluaXRpYWw7XG5cbiAgLypOZXcgc3R5bGVzKi9cbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBwYWRkaW5nOiAkZm9ybUVsZW1lbnRQYWRkaW5nO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgY29sb3I6ICRkaXNhYmxlZEdyZXlUZXh0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZEdyZXk7XG4gICAgYm9yZGVyLWNvbG9yOiAkZGlzYWJsZWRCb3JkZXI7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLypGb3JjZSBzYW1lIGNvbG9ycyBhcyAuYnRuKi9cbi5idG4tLXRlcnRpYXJ5LWFjdGl2ZSB7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5O1xuICB9XG59XG5cbi8qQnV0dG9uIHRoYXQgbWF0Y2hlcyBib2R5IGJhY2tncm91bmQqL1xuLmJ0bi0tYm9keSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxufVxuXG4uYnRuLS1jaXJjbGUge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1pbi13aWR0aDogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICB9XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bzsgLypmb3IgcGhvdG9zd2lwZSBjbG9zZSBidXR0b24qL1xuICB9XG5cbiAgJi5idG4tLWxhcmdlIC5pY29uIHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gIH1cblxuICAmLmJ0bi0tbGFyZ2Uge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cblxuICAvKlVuZG8gYW5nbGVkIGJ1dHRvbiBzdHlsZXMgb24gY2lyY2xlcywgYnV0IGtlZXAgYm9yZGVyKi9cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi0tc21hbGwge1xuICBwYWRkaW5nOiA4cHggMTRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTUwJSA0NSU7XG4gIG1pbi13aWR0aDogOTBweDtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA2cHgpO1xuICBmb250LXNpemU6IG1heChjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgLSA2cHgpLCAxMnB4KTtcblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICB9XG59XG5cbi5idG4tLXNlY29uZGFyeS5idG4tLXNtYWxsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmJ0bi0tbGFyZ2Uge1xuICBwYWRkaW5nOiAxNXB4IDIwcHg7XG59XG5cbi5idG4tLWZ1bGwge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGJ0blByaW1hcnlQYWRkaW5nO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICBwYWRkaW5nOiAxM3B4IDIwcHg7XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBtYXgtd2lkdGg6IDk0JTtcbiAgfVxufVxuXG5bZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddIC5zaG9waWZ5LXBheW1lbnQtYnV0dG9uIC5zaG9waWZ5LXBheW1lbnQtYnV0dG9uX19idXR0b24tLXVuYnJhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiA5NCU7XG59XG5cbi5idG4tLWludmVyc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmZmY7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIHRvcDogLTJweDtcbiAgICAgIGJvdHRvbTogLTJweDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQ7XG4gICAgfVxuICB9XG5cbiAgLypTcGVjaWZpYyBjb2xvciB3aGVuIGluIGEgaGVybyovXG4gIEBuZXN0IC5oZXJvX19saW5rICYge1xuICAgIGNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuXG4gICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JIZXJvVGV4dDtcbiAgICAgIH1cblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9ySGVyb1RleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5idG4tLWxvYWRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5RGltO1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeURpbTtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeURpbTtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeURpbTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMjRweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgbWFyZ2luLXRvcDogLTEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogM3B4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYW5pbWF0aW9uOiBzcGluIDFzIGluZmluaXRlIGxpbmVhcjtcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnlEaW07XG4gICAgfVxuXG4gICAgJi5idG4tLXNlY29uZGFyeTphZnRlciB7XG4gICAgICBib3R0b206IDFweDtcbiAgICB9XG4gIH1cbn1cblxuLypBbHQgbG9hZGluZyBzdGF0ZSovXG4uYnRuLS1sb2FkaW5nLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAmOmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4ucmV0dXJuLWxpbmsge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgbWFyZ2luLXRvcDogNTBweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAyMnB4IDE3cHg7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlci1idG4ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE1cHggMTBweCAxNXB4IDA7XG5cbiAgQG5lc3QgLmNvbGxlY3Rpb24tc2lkZWJhcl9fZ3JvdXAgJiB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlci1idG4tLWJvcmRlcnMge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDEycHg7XG5cbiAgJiAuY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbiB7XG4gICAgcmlnaHQ6IDEycHg7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogMTVweDtcblxuICAgICYgLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24ge1xuICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLmNvbGxhcHNpYmxlLWNvbnRlbnQgKyAmIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICB9XG5cbiAgJiArIC5jb2xsYXBzaWJsZS1jb250ZW50IC5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgICBmb250LXNpemU6IHZhcigtLXR5cGVCb2R5U2l6ZU1vYmlsZSk7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXR5cGVCb2R5U2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgJiArIC5jb2xsYXBzaWJsZS1jb250ZW50LS1leHBhbmRlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcjtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIH1cbiAgfVxufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlci1idG4tLWJvcmRlcnMtdG9wIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3JCb3JkZXI7XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICBCdXR0b24gc3R5bGVzIHdoZW4gYWRkaXRpb25hbCBxdWljayBjaGVja291dCBidXR0b25zXG4gIGFyZSBlbmFibGVkIG9uIHByb2R1Y3QgcGFnZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5zaG9waWZ5LXBheW1lbnQtYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnNob3BpZnktcGF5bWVudC1idXR0b24gLnNob3BpZnktcGF5bWVudC1idXR0b25fX2J1dHRvbi0tdW5icmFuZGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ucGF5bWVudC1idXR0b25zIHtcbiAgJiAuYWRkLXRvLWNhcnQsXG4gICYgLnNob3BpZnktcGF5bWVudC1idXR0b24sXG4gICYgLnNob3BpZnktcGF5bWVudC1idXR0b25fX2J1dHRvbi0tdW5icmFuZGVkIHtcbiAgICBtaW4taGVpZ2h0OiAkYnRuTWluSGVpZ2h0V2hlblF1aWNrQ2hlY2tvdXQ7XG4gIH1cbn1cblxuLmFkZC10by1jYXJ0LmJ0bi0tc2Vjb25kYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkQm9yZGVyO1xuXG4gICAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGRpc2FibGVkQm9yZGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2hvcGlmeS1wYXltZW50LWJ1dHRvbl9fYnV0dG9uLS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCJzdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmlmcmFtZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgaGVpZ2h0OiAwO1xuICBoZWlnaHQ6IGF1dG87XG5cbiAgJiBpZnJhbWUsXG4gICYgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLnZpZGVvLXdyYXBwZXItLW1vZGFsIHtcbiAgd2lkdGg6IDEwMDBweDtcbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JTbWFsbEltYWdlQmc7XG5cbiAgJiBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICAmLmdyaWRfX2ltYWdlLWNvbnRhaW4ge1xuICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiAucGxhY2Vob2xkZXItc3ZnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5ncmlkX19pbWFnZS1yYXRpby0tb2JqZWN0IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmdyaWRfX2ltYWdlLXJhdGlvLS13aWRlOmJlZm9yZSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi5ncmlkX19pbWFnZS1yYXRpby0tbGFuZHNjYXBlOmJlZm9yZSB7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG5cbi5ncmlkX19pbWFnZS1yYXRpby0tc3F1YXJlOmJlZm9yZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xufVxuXG4uZ3JpZF9faW1hZ2UtcmF0aW8tLXBvcnRyYWl0OmJlZm9yZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxNTAlO1xufVxuXG4uaW1hZ2UtZml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogY292ZXJcIjtcbiAgei1pbmRleDogMTtcbn1cblxuLnBhcmFsbGF4LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMzAlO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDE2MCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGFyYWxsYXgtaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTUlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMTAlO1xuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbiIsImZvcm0ge1xuICBtYXJnaW46IDA7XG59XG5cbi5mb3JtLXZlcnRpY2FsIHtcbiAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcblxuICAmIGxhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICBpbnB1dCxcbiAgdGV4dGFyZWEsXG4gIHNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuYnV0dG9uLFxuaW5wdXQsXG50ZXh0YXJlYSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xufVxuXG5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXQsXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkZm9ybUVsZW1lbnRQYWRkaW5nO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuXG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRpc2FibGVkR3JleTtcbiAgICBib3JkZXItY29sb3I6ICRkaXNhYmxlZEJvcmRlcjtcbiAgfVxuXG4gICYuaW5wdXQtZnVsbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxudGV4dGFyZWEge1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogYXV0bztcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBjaGVja2JveDtcbiAgLW1vei1hcHBlYXJhbmNlOiBjaGVja2JveDtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiByYWRpbztcbiAgLW1vei1hcHBlYXJhbmNlOiByYWRpbztcbn1cblxuaW5wdXRbdHlwZT1cImltYWdlXCJdIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG5zZWxlY3QsXG4uZmF1eC1zZWxlY3Qge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZy1yaWdodDogMjhweDtcbiAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgdGV4dC1vdmVyZmxvdzogJyc7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbnNlbGVjdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tdXJsSWNvU2VsZWN0KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTFweDtcblxuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tdXJsSWNvU2VsZWN0V2hpdGUpO1xuICB9XG59XG5cbi5mYXV4LXNlbGVjdCAuaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiAxMXB4O1xuICBoZWlnaHQ6IDExcHg7XG59XG5cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qRm9yY2Ugb3B0aW9uIGNvbG9yIChhZmZlY3RzIElFIGFuZCBzb21lIEZpcmVmb3ggdmVyc2lvbnMpKi9cbm9wdGlvbiB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICBjb2xvcjogI2NjYztcbiAgfVxufVxuXG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGlkZGVuLWxhYmVsIHtcbiAgQG1peGluIHZpc3VhbGx5SGlkZGVuO1xufVxuXG5sYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZm9ybS12ZXJ0aWNhbCB7XG4gICYgaW5wdXQsXG4gICYgc2VsZWN0LFxuICAmIHRleHRhcmVhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgJiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gICYgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAmIC5idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gICYgLmJ0bjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbnNtYWxsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmlucHV0LFxudGV4dGFyZWEge1xuICAmLmVycm9yIHtcbiAgICBib3JkZXItY29sb3I6ICRlcnJvclJlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3JSZWRCZztcbiAgICBjb2xvcjogJGVycm9yUmVkO1xuICB9XG59XG5cbmxhYmVsLmVycm9yIHtcbiAgY29sb3I6ICRlcnJvclJlZDtcbn1cblxuLnNlbGVjdG9yLXdyYXBwZXIge1xuICAmIGxhYmVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICAmICsgLnNlbGVjdG9yLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG4iLCIuaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICYgLmlucHV0LWdyb3VwLWZpZWxkOmZpcnN0LWNoaWxkLFxuICAmIC5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgLmJ0bixcbiAgJiBpbnB1dFt0eXBlPVwiaGlkZGVuXCJdOmZpcnN0LWNoaWxkICsgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzO1xuICB9XG5cbiAgJiAuaW5wdXQtZ3JvdXAtZmllbGQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMDtcbiAgfVxuXG4gICYgLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCAuYnRuLFxuICAmIGlucHV0W3R5cGU9XCJoaWRkZW5cIl06Zmlyc3QtY2hpbGQgKyAuaW5wdXQtZ3JvdXAtYnRuIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvblJhZGl1cykgMCAwIHZhcigtLWJ1dHRvblJhZGl1cyk7XG4gIH1cblxuICAmIC5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCAuYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIHZhcigtLWJ1dHRvblJhZGl1cykgdmFyKC0tYnV0dG9uUmFkaXVzKSAwO1xuICB9XG5cbiAgJiBpbnB1dCB7XG4gICAgLypOYXN0eSBGaXJlZm94IGhhY2sgZm9yIGlucHV0cyBodHRwOi8vZGF2aWR3YWxzaC5uYW1lL2ZpcmVmb3gtYnV0dG9ucyovXG4gICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gICAgfVxuICB9XG59XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7IC8qZm9yY2VzIC5idG4gZnVsbCBoZWlnaHQqL1xuXG4gICYgLmljb24ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbml0aWFsO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYnV0dG9uX3N0eWxlPSdhbmdsZWQnXSAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLThweDtcbiAgfVxufVxuIiwiLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcblxuICBAbmVzdCAubm8tc3ZnICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuc3ZnLFxuc3ltYm9sIHtcbiAgJi5pY29uIHtcbiAgICAmIGNpcmNsZSxcbiAgICAmIGVsbGlwc2UsXG4gICAgJiBnLFxuICAgICYgbGluZSxcbiAgICAmIHBhdGgsXG4gICAgJiBwb2x5Z29uLFxuICAgICYgcG9seWxpbmUsXG4gICAgJiByZWN0IHtcbiAgICAgIGZpbGw6IGluaGVyaXQ7XG4gICAgICBzdHJva2U6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG5cbi8qIE92ZXJyaWRlIHRoZSBhYm92ZSBmb3Igb3VyIHN0cm9rZS1vbmx5IGljb25zICovXG5zdmcge1xuICAmLmljb24tY2FydCxcbiAgJi5pY29uLWJhZyxcbiAgJi5pY29uLWJhZy1taW5pbWFsLFxuICAmLmljb24tc2VhcmNoLFxuICAmLmljb24tY2xvc2UsXG4gICYuaWNvbi1jaGV2cm9uLWRvd24sXG4gICYuaWNvbi1lbWFpbCxcbiAgJi5pY29uLXVzZXIsXG4gICYuaWNvbi1oYW1idXJnZXIsXG4gICYuaWNvbi1maWx0ZXIsXG4gICYuaWNvbi1nbG9iZSxcbiAgJi5pY29uLXRydWNrLFxuICAmLmljb24tcGFja2FnZSxcbiAgJi5pY29uLWNpcmNsZS1jaGVja21hcmssXG4gICYuaWNvbi1sZWFmLFxuICAmLmljb24tbG9jayxcbiAgJi5pY29uLWdpZnQsXG4gICYuaWNvbi1yaWJib24sXG4gICYuaWNvbi1waG9uZSxcbiAgJi5pY29uLWhlYXJ0LFxuICAmLmljb24tc2hpZWxkLFxuICAmLmljb24tdGFnLFxuICAmLmljb24tc2l6ZS1jaGFydCxcbiAgJi5pY29uLXRjd2ktYmlsbHMsXG4gICYuaWNvbi10Y3dpLWNhbGVuZGFyLFxuICAmLmljb24tdGN3aS1jYXJ0LFxuICAmLmljb24tdGN3aS1jaGFyaXR5LFxuICAmLmljb24tdGN3aS1nZWFycyxcbiAgJi5pY29uLXRjd2ktZ2lmdCxcbiAgJi5pY29uLXRjd2ktZ2xvYmUsXG4gICYuaWNvbi10Y3dpLW9wZW4tZW52ZWxvcGUsXG4gICYuaWNvbi10Y3dpLXBhY2thZ2UsXG4gICYuaWNvbi10Y3dpLXBsYW50LFxuICAmLmljb24tdGN3aS1yZWN5Y2xlLFxuICAmLmljb24tdGN3aS1yaWJib24sXG4gICYuaWNvbi10Y3dpLXNhbGVzLXRhZyxcbiAgJi5pY29uLXRjd2ktc2hpZWxkLFxuICAmLmljb24tdGN3aS1zdG9wd2F0Y2gsXG4gICYuaWNvbi10Y3dpLXN0b3JlLFxuICAmLmljb24tdGN3aS10aHVtYnMtdXAsXG4gICYuaWNvbi10Y3dpLXRyb3BoeSxcbiAgJi5pY29uLXRjd2ktdHJ1Y2ssXG4gICYuaWNvbi10Y3dpLXdhbGxldCxcbiAgJi5pY29uLXRjd2ktY2hhdCxcbiAgJi5pY29uLXRjd2ktcGhvbmUsXG4gICYuaWNvbi10Y3dpLXNoaXJ0LFxuICAmLmljb24tdGN3aS1zcGFya2xlLFxuICAmLmljb24tdGN3aS1oYW5nZXIsXG4gICYuaWNvbi10Y3dpLXN1bixcbiAgJi5pY29uLXRjd2ktbG9jYXRpb24sXG4gICYuaWNvbi10Y3dpLWxpZ2h0bmluZy1ib2x0LFxuICAmLmljb24tdGN3aS1jcmVkaXQtY2FyZHMsXG4gICYuaWNvbi10Y3dpLWNvdHRvbixcbiAgJi5pY29uLXRjd2ktcmV0dXJuLFxuICAmLmljb24tdGN3aS1oZWFydCB7XG4gICAgJiBjaXJjbGUsXG4gICAgJiBlbGxpcHNlLFxuICAgICYgZyxcbiAgICAmIGxpbmUsXG4gICAgJiBwYXRoLFxuICAgICYgcG9seWdvbixcbiAgICAmIHBvbHlsaW5lLFxuICAgICYgcmVjdCB7XG4gICAgICBmaWxsOiBub25lO1xuICAgICAgc3Ryb2tlLXdpZHRoOiB2YXIoLS1pY29uV2VpZ2h0KTtcbiAgICAgIHN0cm9rZTogY3VycmVudENvbG9yO1xuICAgICAgc3Ryb2tlLWxpbmVjYXA6IHZhcigtLWljb25MaW5lY2Fwcyk7XG4gICAgICBzdHJva2UtbGluZWpvaW46IHZhcigtLWljb25MaW5lY2Fwcyk7XG4gICAgfVxuICB9XG59XG5cbnN2Zy5pY29uLWNhcnQgY2lyY2xlIHtcbiAgZmlsbDogY3VycmVudENvbG9yO1xufVxuXG4uaWNvbl9fZmFsbGJhY2stdGV4dCB7XG4gIEBtaXhpbiB2aXN1YWxseUhpZGRlbjtcbn1cbiIsIi5qcy1kcmF3ZXItb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5kcmF3ZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1heC13aWR0aDogOTUlO1xuICB6LWluZGV4OiAkemluZGV4RHJhd2VyO1xuICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRHJhd2VycztcbiAgYm94LXNoYWRvdzogMCAwIDE1MHB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG5cbiAgLyogQWxsb3cgd2hvbGUgZHJhd2VyIHRvIGJlIHNjcm9sbGFibGUgb24gc2hvcnQgc2NyZWVuc1xuICAgICB0eXBpY2FsbHkgd2hlbiBBbmRyb2lkIGtleWJvYXJkIGlzIG9wZW4qL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogJGZpeGVkSGVpZ2h0TGltaXQpIHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuXG4gICAgJiAuZHJhd2VyX19jb250ZW50cyB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJiBhOm5vdCguYnRuKSB7XG4gICAgY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3JEcmF3ZXJUZXh0O1xuICAgIH1cbiAgfVxuXG4gICYgaW5wdXQsXG4gICYgdGV4dGFyZWEge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICB9XG5cbiAgJiAuYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JEcmF3ZXJCdXR0b247XG4gICAgY29sb3I6ICRjb2xvckRyYXdlckJ1dHRvblRleHQ7XG4gIH1cbn1cblxuLmRyYXdlci0tbGVmdCB7XG4gIHdpZHRoOiAkZHJhd2VyTmF2V2lkdGg7XG4gIGxlZnQ6IC0kZHJhd2VyTmF2V2lkdGg7XG5cbiAgJi5kcmF3ZXItLWlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkZHJhd2VyTmF2V2lkdGgpO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNDVzO1xuICB9XG59XG5cbi5kcmF3ZXItLXJpZ2h0IHtcbiAgd2lkdGg6ICRkcmF3ZXJDYXJ0V2lkdGg7XG4gIHJpZ2h0OiAtJGRyYXdlckNhcnRXaWR0aDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgd2lkdGg6ICRkcmF3ZXJDYXJ0V2lkdGhMYXJnZTtcbiAgICByaWdodDogLSRkcmF3ZXJDYXJ0V2lkdGhMYXJnZTtcbiAgfVxuXG4gICYuZHJhd2VyLS1pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRkcmF3ZXJDYXJ0V2lkdGgpO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuNDVzO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kZHJhd2VyQ2FydFdpZHRoTGFyZ2UpO1xuICAgIH1cbiAgfVxufVxuXG4uanMtZHJhd2VyLW9wZW4gLm1haW4tY29udGVudDphZnRlcixcbi5qcy1kcmF3ZXItY2xvc2luZyAubWFpbi1jb250ZW50OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTW9kYWxCZztcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogJHppbmRleERyYXdlck92ZXJsYXk7XG59XG5cbi5qcy1kcmF3ZXItb3BlbiAubWFpbi1jb250ZW50OmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBvdmVybGF5LW9uIDAuMzVzIGZvcndhcmRzO1xufVxuXG4uanMtZHJhd2VyLWNsb3NpbmcgLm1haW4tY29udGVudDphZnRlciB7XG4gIGFuaW1hdGlvbjogb3ZlcmxheS1vZmYgMC4yNXMgZm9yd2FyZHM7XG59XG5cbi5kcmF3ZXJfX2hlYWRlcixcbi5kcmF3ZXJfX2ZpeGVkLWhlYWRlcixcbi5kcmF3ZXJfX3Njcm9sbGFibGUsXG4uZHJhd2VyX19mb290ZXIge1xuICBwYWRkaW5nLWxlZnQ6IHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbn1cblxuLmRyYXdlcl9faGVhZGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1pbi1oZWlnaHQ6ICRkcmF3ZXJIZWFkZXJIZWlnaHQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyLjYpIDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xufVxuXG4uZHJhd2VyX19maXhlZC1oZWFkZXIge1xuICBtaW4taGVpZ2h0OiAkZHJhd2VySGVhZGVySGVpZ2h0O1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLypmb3IgY2xvc2UgYnV0dG9uIGhpdCBhcmVhKi9cbn1cblxuLmRyYXdlcl9faGVhZGVyLFxuLmRyYXdlcl9fZml4ZWQtaGVhZGVyIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5kcmF3ZXJfX2hlYWRlcixcbiAgLmRyYXdlcl9fZml4ZWQtaGVhZGVyIHtcbiAgICBtaW4taGVpZ2h0OiAkZHJhd2VySGVhZGVySGVpZ2h0TGFyZ2U7XG4gIH1cbn1cblxuLmRyYXdlcl9fdGl0bGUsXG4uZHJhd2VyX19jbG9zZSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5kcmF3ZXJfX3RpdGxlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5kcmF3ZXJfX2Nsb3NlIHtcbiAgd2lkdGg6IDElO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qQnV0dG9uIHNpdHMgb24gcmlnaHQgYnkgZGVmYXVsdCovXG4uZHJhd2VyX19jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IGNhbGModmFyKC0tZHJhd2VyLWd1dHRlcikgKiAtMSk7XG4gIHBhZGRpbmc6IDAgdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JEcmF3ZXJzRGltO1xuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgaGVpZ2h0OiAyOHB4O1xuICAgIHdpZHRoOiAyOHB4O1xuICB9XG59XG5cbi8qUmFyZSB1c2UgY2FzZSBsZWZ0IGNsb3NlIGJ1dHRvbiovXG4uZHJhd2VyX19jbG9zZS0tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgJiAuZHJhd2VyX19jbG9zZS1idXR0b24ge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGNhbGModmFyKC0tZHJhd2VyLWd1dHRlcikgKiAtMSk7XG4gIH1cbn1cblxuLmRyYXdlcl9fY29udGVudHMge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5kcmF3ZXJfX2lubmVyLFxuLmRyYXdlcl9fc2Nyb2xsYWJsZSB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5kcmF3ZXJfX3Njcm9sbGFibGUge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLmRyYXdlcl9fZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3JEcmF3ZXJCb3JkZXI7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWRyYXdlci1ndXR0ZXIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyIC8gMS4zNSk7XG4gIH1cbn1cblxuLmRyYXdlcl9faW5uZXIuaXMtbG9hZGluZyB7XG4gICYgLmRyYXdlcl9fc2Nyb2xsYWJsZSB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UgMC43cztcbiAgICBvcGFjaXR5OiAwLjQ7XG4gIH1cbn1cblxuLmNhcnQtbm90ZXMge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBtaW4taGVpZ2h0OiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICB9XG59XG4iLCIucGxhY2Vob2xkZXItc3ZnIHtcbiAgZmlsbDogIzk5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZTFlMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4ucGxhY2Vob2xkZXItbm9ibG9ja3Mge1xuICBwYWRkaW5nOiA0MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qUGxhY2Vob2xkZXIgYW5pbWF0aW9uIGZvciBsb2FkaW5nIHByb2R1Y3QgZm9ybSovXG4ucGxhY2Vob2xkZXItY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGFuaW1hdGlvbjogcGxhY2Vob2xkZXItc2hpbW1lciAxLjNzIGxpbmVhciBpbmZpbml0ZTtcbiAgYmFja2dyb3VuZC1zaXplOiA0MDAlIDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIkBtaXhpbiBhbmltYXRpb24tZGVsYXkgMjA7XG5AbWl4aW4gYXBwZWFyLWRlbGF5IDIwO1xuXG4uYW5pbWF0aW9uLWNyb3BwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbn1cblxuLmltYWdlLXdyYXAge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JTbWFsbEltYWdlQmc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmltYWdlLXdyYXAge1xuICAmIHN2ZyxcbiAgJiAuYW5pbWF0ZS1tZSB7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBuZXN0IC5uby1qcyAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi5hb3MtYW5pbWF0ZSAuaW1hZ2Utd3JhcCB7XG4gICYgc3ZnLFxuICAmIC5hbmltYXRlLW1lIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB9XG59XG5cbi5pbWFnZS13cmFwIGltZyB7XG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi0zXCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCgzbisyKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDE1MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTNcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDNuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMzAwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNFwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNG4rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxMjBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi00XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg0biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDI0MG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTRcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDRuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMzYwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiA3NW1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rNCkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMjVtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi01XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg1bis1KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDMwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogNTBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDEwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rNSkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bis2KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDI1MG1zO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWltYWdlIHtcbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTNcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDNuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtM1wiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoM24rMykgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi00XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg0bisyKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDEyMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTRcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDRuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMjQwbXM7XG4gIH1cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTRcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDRuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMzYwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rMikgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiA3NW1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTVcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDVuKzMpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNVwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNW4rNCkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMjVtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi01XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg1bis1KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDMwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzIpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogNTBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2biszKSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDEwMG1zO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwicm93LW9mLTZcIl0uYW9zLWFuaW1hdGU6bnRoLWNoaWxkKDZuKzQpICYge1xuICAgIGFuaW1hdGlvbi1kZWxheTogMTUwbXM7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1hb3M9XCJyb3ctb2YtNlwiXS5hb3MtYW5pbWF0ZTpudGgtY2hpbGQoNm4rNSkgJiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAyMDBtcztcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWFvcz1cInJvdy1vZi02XCJdLmFvcy1hbmltYXRlOm50aC1jaGlsZCg2bis2KSAmIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IDI1MG1zO1xuICB9XG59XG5cbi5sb2FkaW5nOmFmdGVyLFxuLmxvYWRpbmc6YmVmb3JlLFxuLnVubG9hZDpiZWZvcmUsXG4udW5sb2FkOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZDogJGNvbG9yQm9keTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luOiAtMXB4IDAgMCAtNTBweDtcbiAgei1pbmRleDogJHotaW5kZXgtbG9hZGVyO1xuICBvcGFjaXR5OiAwO1xuXG4gIEBuZXN0IC5uby1qcyAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5sb2FkaW5nOmJlZm9yZSxcbi51bmxvYWQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogJGNvbG9yVGV4dEJvZHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5sb2FkaW5nOmFmdGVyLFxuLnVubG9hZDphZnRlciB7XG4gIG9wYWNpdHk6IDA7XG4gIGFuaW1hdGlvbjogcHJlbG9hZGluZyAwLjVzIGVhc2UgMC4zcyBpbmZpbml0ZTtcbn1cblxuLmxvYWRpbmctLWRlbGF5ZWQ6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjhzICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXMgIWltcG9ydGFudDtcbn1cblxuLmxvYWRpbmctLWRlbGF5ZWQ6YWZ0ZXIge1xuICBhbmltYXRpb24tZGVsYXk6IDEuM3MgIWltcG9ydGFudDtcbn1cblxuLypEZWxheSBhbmltYXRpb25zLCB1c2VkIGluIGRyYXdlcnMqL1xuLmFwcGVhci1hbmltYXRpb24ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNjBweCk7XG5cbiAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uanMtZHJhd2VyLW9wZW4gLmFwcGVhci1hbmltYXRpb24ge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTtcbn1cblxuLmpzLWRyYXdlci1jbG9zaW5nIC5hcHBlYXItYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XG59XG4iLCJ0b29sLXRpcFtkYXRhLXRvb2wtdGlwLW9wZW49XCJ0cnVlXCJdIC50b29sLXRpcF9faW5uZXIge1xuICBwYWRkaW5nOiA0NXB4O1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDQ1cHggMjBweCAyMHB4O1xuICB9XG59XG5cbi50b29sLXRpcF9fY2xvc2Uge1xuICBwYWRkaW5nOiAxMHB4O1xufVxuIiwiW2RhdGEtY2VudGVyLXRleHQ9XCJjZW50ZXJcIl0gcHJvZHVjdC1yZWNvbW1lbmRhdGlvbnNbZGF0YS1pbnRlbnQ9XCJjb21wbGVtZW50YXJ5XCJdIHtcblxuICAmIC5ncmlkLXByb2R1Y3RfX2NvbG9ycyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG4iLCJwcmVkaWN0aXZlLXNlYXJjaCB7XG4gICYgLnNlYXJjaF9fcmVzdWx0cyB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMzBweCk7XG4gICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgZm9ybSB7XG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW46IDAgMTBweCAwIDIwcHg7XG4gICAgfVxuICB9XG59XG4iLCIuZm9vdGVyLXByb21vdGlvbnMge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiAuZ3JpZF9faXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1mb290ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogJGd1dHRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRm9vdGVyO1xuICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoJGd1dHRlciAqIDIpO1xuICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCRndXR0ZXIgKiAyKTtcbiAgfVxuXG4gICYgLmZvb3Rlcl9fY29sbGFwc2libGUge1xuICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgJiB0ZXh0YXJlYSxcbiAgICAmIHNlbGVjdCxcbiAgICAmIGlucHV0IHtcbiAgICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgJiAuZ3JpZF9faXRlbSB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICAgICAgb3BhY2l0eTogMC4xMjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiBidXR0b24uZm9vdGVyX190aXRsZSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgfVxufVxuXG4uZm9vdGVyX19zbWFsbC10ZXh0IHtcbiAgQG1peGluIGJhc2VFeHRyYVNtYWxsRm9udFN0YWNrO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyA0KSAwO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAbmVzdCB1bCArICYge1xuICAgIHBhZGRpbmctdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4uZm9vdGVyX19jbGVhciB7XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6ICRndXR0ZXI7XG59XG5cbi5mb290ZXJfX3NlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmZvb3Rlcl9faXRlbS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCRndXR0ZXIgKiAyKTtcbiAgfVxufVxuXG4uZm9vdGVyX190aXRsZSB7XG4gIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgQG1peGluIGJhc2VUZXh0Q2VudGVyO1xuICB9XG59XG5cbi5zaXRlLWZvb3Rlcl9fbGlua2xpc3Qge1xuICBtYXJnaW46IDA7XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiA0cHggMDtcbiAgfVxufVxuXG4uZm9vdGVyX19uZXdzbGV0dGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMzAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9vdGVyX19uZXdzbGV0dGVyLWlucHV0IHtcbiAgcGFkZGluZzogMTBweCA0NXB4IDEwcHggMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRm9vdGVyO1xuICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JGb290ZXJUZXh0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlci1pbnB1dC0tYWN0aXZlIHtcbiAgcGFkZGluZy1yaWdodDogODBweDtcbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlci1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogJGNvbG9yRm9vdGVyVGV4dDtcbiAgcGFkZGluZzogMDtcblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gIH1cblxuICBAbmVzdCAuZm9vdGVyX19uZXdzbGV0dGVyLWlucHV0LS1hY3RpdmUgKyAmIHtcbiAgICAmIC5pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgJiAuZm9vdGVyX19uZXdzbGV0dGVyLWJ0bi1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlcl9fbmV3c2xldHRlci1idG4tbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xufVxuXG4uZm9vdGVyX19sb2dvIHtcbiAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgLyAyKSAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDAgMCBjYWxjKCRndXR0ZXIgLyAxLjUpO1xuICB9XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLmZvb3Rlcl9fc29jaWFsIHtcbiAgbWFyZ2luOiAwO1xuXG4gIEBuZXN0IGZvcm0gKyAmIHtcbiAgICBtYXJnaW4tdG9wOiAkZ3V0dGVyO1xuICB9XG5cbiAgJiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxNXB4IDE1cHggMDtcbiAgfVxuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDIycHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICB9XG5cbiAgICAmLmljb24tLXdpZGUge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qQ29sbGFwc2libGUgYnV0dG9ucyovXG4uZm9vdGVyX19jb2xsYXBzaWJsZSB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDAgMCBjYWxjKCRndXR0ZXIgLyAyKSAwO1xuICB9XG59XG5cbi5mb290ZXJfY29sbGFwc2libGUtLWRpc2FibGVkIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lciBwIHtcbiAgJiBhOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckZvb3RlclRleHQ7XG4gICAgdHJhbnNpdGlvbjogd2lkdGggMC41cyBlYXNlO1xuICB9XG5cbiAgJiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yRm9vdGVyVGV4dEFscGhhMDEpO1xuXG4gICAgJjpob3ZlcjphZnRlcixcbiAgICAmOmZvY3VzOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1mb290ZXIge1xuICAmIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tdXJsSWNvU2VsZWN0Rm9vdGVyKTtcbiAgfVxufVxuXG4ucGF5bWVudC1pY29ucyB7XG4gIEBtaXhpbiBiYXNlVGV4dENlbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcblxuICAmIGxpIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgbWFyZ2luOiAwIDRweCAwO1xuICB9XG59XG5cbi5mb290ZXJfX2ZvbGxvdy1vbi1zaG9wIHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG4gIH1cbn1cbiIsIi5ub3RlLFxuLmVycm9ycyB7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgJiB1bCxcbiAgJiBvbCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5ub3RlIHtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG59XG5cbi5lcnJvcnMge1xuICAmIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBkaXNjIG91dHNpZGU7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIH1cbn1cblxuLm5vdGUtLXN1Y2Nlc3Mge1xuICBjb2xvcjogJHN1Y2Nlc3NHcmVlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHN1Y2Nlc3NHcmVlbkJnO1xuICBib3JkZXItY29sb3I6ICRzdWNjZXNzR3JlZW47XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogJHN1Y2Nlc3NHcmVlbjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1lcnJvcixcbi5lcnJvcnMge1xuICBjb2xvcjogJGVycm9yUmVkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZXJyb3JSZWRCZztcbiAgYm9yZGVyLWNvbG9yOiAkZXJyb3JSZWQ7XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogJGVycm9yUmVkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIucGFnaW5hdGlvbiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMikgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxuXG4gICYgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG5cbiAgJiBhLFxuICAmIC5wYWdlLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICB9XG5cbiAgJiAucGFnZS5jdXJyZW50IHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gIH1cblxuICAmIC5uZXh0LFxuICAmIC5wcmV2IHtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yQnRuUHJpbWFyeTtcbiAgICB3aWR0aDogNDNweDtcbiAgICBtYXJnaW46IDAgMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgd2lkdGg6IDM1cHg7XG4gICAgfVxuXG4gICAgJiBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cblxuICAgICYgLmljb24ge1xuICAgICAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG5cbiAgICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnJ0ZSB7XG4gIEBtaXhpbiBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gNCk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiArIC5ydGUge1xuICAgIG1hcmdpbi10b3A6ICRndXR0ZXI7XG4gIH1cblxuICAmIHAsXG4gICYgdWwsXG4gICYgb2wsXG4gICYgdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgdWwge1xuICAgICYgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvKkFkZCBzb21lIHRvcCBtYXJnaW4gdG8gaGVhZGVycyBmcm9tIHRoZSByaWNoIHRleHQgZWRpdG9yKi9cblxuICAmIGgxLCAmIGgyLCAmIGgzLCAmIGg0LCAmIGg1LCAmIGg2IHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIH1cblxuICAmIGgxLCAmIGgyLCAmIGgzLCAmIGg0LCAmIGg1LCAmIGg2IHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgJiBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvKkluIGNhc2UgbWVyY2hhbnRzIHBhc3RlIG1ldGEgdGFncyBpbnRvIHRoZWlyIGNvbnRlbnQgYnkgYWNjaWRlbnQqL1xuXG4gICYgbWV0YTpmaXJzdC1jaGlsZCB7XG4gICAgJiArIGgxLCAmICsgaDIsICYgKyBoMywgJiArIGg0LCAmICsgaDUsICYgKyBoNiB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgPiBkaXYge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYgdGFibGUge1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbn1cblxuLnJ0ZS0tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG59XG5cbi5ydGUtc2V0dGluZyB7XG4gICYgPiBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnJ0ZSxcbi5ydGUtc2V0dGluZyB7XG4gICYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gICYgYTpub3QoLnJ0ZV9faW1hZ2UpOm5vdCguYnRuKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5QWxwaGEwMTUpO1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoY3VycmVudENvbG9yLCBjdXJyZW50Q29sb3IpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiAwJSAycHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1zaXplIDAuNXMgZWFzZTtcbiAgfVxuICBcbiAgJiBhOm5vdCgucnRlX19pbWFnZSk6bm90KC5idG4pOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMnB4O1xuICB9XG5cbiAgJiBhOm5vdCguYnRuKSB7XG4gICAgJjpob3ZlcjphZnRlcixcbiAgICAmOmZvY3VzOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICYgYS5ydGVfX2ltYWdlOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5cbi50ZXh0LWNlbnRlciAucnRlLFxuLnRleHQtY2VudGVyLnJ0ZSB7XG4gICYgdWwsXG4gICYgb2wge1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4ucnRlLS1ub21hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ydGUgYixcbi5ydGUgc3Ryb25nLFxuLnJ0ZS1zZXR0aW5nIGIsXG4ucnRlLXNldHRpbmcgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4iLCIuaGVhZGVyLWxheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmhlYWRlci1sYXlvdXQtLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5oZWFkZXItaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDEgMSBhdXRvO1xufVxuXG4uaGVhZGVyLWl0ZW0tLWxvZ28ge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmhlYWRlci1pdGVtLS1pY29ucyB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGZsZXg6IDAgMSBhdXRvO1xufVxuXG4vKlNhbWUgZGVmYXVsdCBsb2dvIGFuZCBpY29uIGNvbnRhaW5lciBzaXplLCBsb2dvIGJsb2NrIHdpZHRoIG92ZXJyaWRlcyovXG4uaGVhZGVyLWxheW91dC0tbGVmdC1jZW50ZXIge1xuICAmIC5oZWFkZXItaXRlbS0tbG9nbyxcbiAgJiAuaGVhZGVyLWl0ZW0tLWljb25zIHtcbiAgICBmbGV4OiAwIDAgMjAwcHg7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtaW4td2lkdGg6IDEzMHB4OyAvKmFwcHJveCB3aWR0aCBvZiAyIGljb25zKi9cbiAgICB9XG4gIH1cbn1cblxuLmhlYWRlci1sYXlvdXRbZGF0YS1sb2dvLWFsaWduPVwiY2VudGVyXCJdIHtcbiAgJiAuaGVhZGVyLWl0ZW0tLWxvZ28ge1xuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbjogMCAzMHB4O1xuICAgIH1cbiAgfVxuXG4gICYgLmhlYWRlci1pdGVtLS1uYXZpZ2F0aW9uLFxuICAmIC5oZWFkZXItaXRlbS0taWNvbnMge1xuICAgIGZsZXg6IDEgMSAxMzBweDsgLyphcHJveCB3aWR0aCBvZiAyIGljb25zKi9cbiAgfVxufVxuXG4uaGVhZGVyLWxheW91dFtkYXRhLWxvZ28tYWxpZ249XCJsZWZ0XCJdIHtcbiAgJiAuc2l0ZS1oZWFkZXJfX2xvZ28ge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygkZ3V0dGVyIC8gMyk7XG4gIH1cbn1cblxuLmhlYWRlci1pdGVtLS1sb2dvLXNwbGl0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDEgMSAxMDAlO1xuXG4gICYgLmhlYWRlci1pdGVtOm5vdCguaGVhZGVyLWl0ZW0tLWxvZ28pIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxleDogMSAxIDIwJTtcbiAgfVxufVxuXG4uaGVhZGVyLWl0ZW0tLXNwbGl0LWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4vKkljb24gYWxpZ25tZW50Ki9cbi5oZWFkZXItaXRlbS0tbGVmdCB7XG4gICYgLnNpdGUtbmF2IHtcbiAgICBtYXJnaW4tbGVmdDogLSRzaXRlTmF2SWNvblBhZGRpbmc7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0kc2l0ZU5hdkl0ZW1QYWRkaW5nIC8gMik7XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItaXRlbS0taWNvbnMge1xuICAmIC5zaXRlLW5hdiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJHNpdGVOYXZJY29uUGFkZGluZztcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0kc2l0ZU5hdkl0ZW1QYWRkaW5nIC8gMik7XG4gICAgfVxuICB9XG59XG4iLCIuc2l0ZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDdweCAwO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JOYXY7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6IDIwcHggMDtcblxuICAgIEBuZXN0IC50b29sYmFyICsgLmhlYWRlci1zdGlja3ktd3JhcHBlciAmIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWNvbG9ySGVhZGVyVGV4dEFscGhhMDEpO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXItLXN0dWNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgei1pbmRleDogJHotaW5kZXgtc3R1Y2staGVhZGVyO1xuXG4gIC8qUmVhcnJhbmdlbWVudCBmb3Igd2hlbiB0b3Agc2VhcmNoIGRyYXdlciBpcyBvcGVuIHNvIG5hdiBpcyBhYm92ZSBvdmVybGF5Ki9cbiAgQG5lc3QgLmpzLWRyYXdlci1vcGVuLS1zZWFyY2ggJiB7XG4gICAgei1pbmRleDogJHotaW5kZXgtaGVhZGVyLXNlYXJjaDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiAxMHB4IDA7XG4gIH1cbn1cblxuLypEaXNhYmxlIHN0aWNreSBoZWFkZXIgYW5kIGFubm91bmNlbWVudCBiYXIgb24gc2hvcnQgYW5kIHdpZGUgc2NyZWVucyovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtaGVpZ2h0OiA1NTBweCkge1xuICAuc2l0ZS1oZWFkZXItLXN0dWNrLFxuICAuc2l0ZS1oZWFkZXItLW9wZW5pbmcge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyLS1vcGVuaW5nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcblxuICBAbmVzdCAuaGFzLXN0aWNreS1hbm5vdW5jZW1lbnQtYmFyICYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgdmFyKC0tc3RpY2t5LWFubm91bmNlbWVudC1iYXItaGVpZ2h0LCAwKSwgMCk7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyX19sb2dvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IGNhbGMoJGd1dHRlciAvIDMpIDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDMwcHg7IC8qd2hlbiBubyBpbWFnZSovXG4gIHotaW5kZXg6IGNhbGMoJHppbmRleE5hdkRyb3Bkb3ducyArIDEpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBAbmVzdCAudGV4dC1jZW50ZXIgJiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgLyAzKSBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5oZWFkZXItbGF5b3V0W2RhdGEtbG9nby1hbGlnbj1cImNlbnRlclwiXSAmIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJiBhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIGEsXG4gICYgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgQG5lc3QgLnNpdGUtaGVhZGVyICYge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB9XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyX19sb2dvLWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAkY29sb3JOYXZUZXh0O1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3JOYXZUZXh0O1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLypTdGlja3kgaGVhZGVyIG9uIHRvcCBvZiBpbWFnZS9zbGlkZXNob3cqL1xuLmhlYWRlci1zdGlja3ktd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogJHotaW5kZXgtaGVhZGVyLXNlYXJjaDtcblxuICAvKiBVcGRhdGUgd2hlbiBkcmF3ZXIgaXMgb3BlbiAqL1xuICBAbmVzdCAuanMtZHJhd2VyLW9wZW46bm90KC5qcy1kcmF3ZXItb3Blbi0tc2VhcmNoKSAmIHtcbiAgICB6LWluZGV4OiAkei1pbmRleC1zdGlja3ktaGVhZGVyO1xuICB9XG5cbiAgLyogV2hlbiBhIGRyb3Bkb3duL21lZ2FtZW51IGlzIG9wZW4sIHJhaXNlIHotaW5kZXggYWJvdmUgdGhlIHN0aWNreSBhbm5vdW5jZW1lbnQgYmFyLlxuICAgICBFeGNlcHRpb246IG92ZXJsYXkgaGVhZGVyIGF0IHRvcCBvZiBwYWdlIChub3QgeWV0IHNjcm9sbGVkL3N0dWNrKSDigJQgaW4gdGhhdCBjYXNlXG4gICAgIHRoZSBhbm5vdW5jZW1lbnQgYmFyIHNob3VsZCByZW1haW4gdmlzaWJsZSBvbiB0b3Agb2YgdGhlIG1lZ2FtZW51LiAqL1xuICAmOmhhcyguc2l0ZS1oZWFkZXItLXN0dWNrKTpoYXMoZGV0YWlsc1tvcGVuXSksXG4gICY6bm90KDpoYXMoLmhlYWRlci13cmFwcGVyLS1zdGlja3kpKTpoYXMoZGV0YWlsc1tvcGVuXSkge1xuICAgIHotaW5kZXg6IGNhbGMoJHotaW5kZXgtaGVhZGVyLXNlYXJjaCArIDIpO1xuICB9XG59XG5cbi5oZWFkZXItd3JhcHBlci0tc3RpY2t5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAkei1pbmRleC1zdGlja3ktaGVhZGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsMCwwLDAuMykgMCUscmdiYSgwLDAsMCwwKSAxMDAlKTtcblxuICAmIC5zaXRlLWhlYWRlcjpub3QoLnNpdGUtaGVhZGVyLS1zdHVjaykge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICAvKlJlYXJyYW5nZW1lbnQgZm9yIHdoZW4gdG9wIHNlYXJjaCBkcmF3ZXIgaXMgb3BlbiBzbyBuYXYgaXMgYWJvdmUgb3ZlcmxheSovXG4gIEBuZXN0IC5qcy1kcmF3ZXItb3Blbi0tc2VhcmNoICYge1xuICAgIHotaW5kZXg6ICR6LWluZGV4LWhlYWRlci1zZWFyY2g7XG4gIH1cbn1cbiIsIi5zaXRlLWhlYWRlcl9fc2VhcmNoLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMjAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkei1pbmRleC1oZWFkZXItc2VhcmNoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyX19zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogJHotaW5kZXgtaGVhZGVyLXNlYXJjaDtcbiAgZGlzcGxheTogZmxleDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTEwJSwgMCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDQ1cHggcmdiKDAsIDAsIDAsIDAuMSk7XG5cbiAgJiAucGFnZS13aWR0aCB7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCAuaXMtYWN0aXZlICYge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyX19zZWFyY2gtaW5wdXQge1xuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxMDBweDsgLypmbGV4Ym94IG92ZXJyaWRlcywgYnV0IGZpeGVzIGJyb3dzZXIgaXNzdWVzKi9cbiAgZmxleDogMSAxIGF1dG87XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG91dGxpbmU6IDA7IC8qb25seSBhY3RpdmUgZWxlbWVudCBvbiB0aGUgcGFnZSwgc28gdGhpcyBpcyBhY2NlcHRhYmxlKi9cbiAgfVxufVxuXG4vKlN1Ym1pdCBhbmQgY2FuY2VsIGJ1dHRvbnMqL1xuLnNpdGUtaGVhZGVyX19zZWFyY2gtYnRuIHtcbiAgcGFkZGluZzogMCBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuc2l0ZS1oZWFkZXJfX3NlYXJjaC1idG4tLXN1Ym1pdCB7XG4gICAgcGFkZGluZzogMCBjYWxjKCRndXR0ZXIgLyAyKSAwIDA7XG5cbiAgICAmIC5pY29uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLnByZWRpY3RpdmUtcmVzdWx0cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBtYXgtaGVpZ2h0OiA3MHZoO1xuICBtYXgtaGVpZ2h0OiBjYWxjKDkwdmggLSAxMDAlKTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDAlIC0gMzNweCk7IC8qc2VhcmNoIGJhciArIHRvb2xiYXIqL1xuICB9XG59XG5cbi5wcmVkaWN0aXZlX19sYWJlbCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4vKkxheW91dCBmb3IgYXJ0aWNsZS9pbWFnZXMqL1xuJHByZWRpY3RpdmVHYXA6IDEwcHg7XG4ucHJlZGljdGl2ZS1yZXN1bHRfX2xheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJHByZWRpY3RpdmVHYXA7XG4gIG1hcmdpbi1sZWZ0OiAtJHByZWRpY3RpdmVHYXA7XG4gIG1hcmdpbi1yaWdodDogLSRwcmVkaWN0aXZlR2FwO1xuXG4gICYgPiBkaXYge1xuICAgIG1hcmdpbjogMCAkcHJlZGljdGl2ZUdhcCAkZ3V0dGVyO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiBbZGF0YS10eXBlLXByb2R1Y3RzXSB7XG4gICAgZmxleDogMSAxIDYwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci1zbWFsbDtcblxuICAgICAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXItc21hbGw7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19pbWFnZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYgW2RhdGEtdHlwZS1jb2xsZWN0aW9uc10sXG4gICYgW2RhdGEtdHlwZS1wYWdlc10ge1xuICAgIGZsZXg6IDEgMSAyMDBweDtcbiAgfVxuXG4gICYgW2RhdGEtdHlwZS1hcnRpY2xlc10ge1xuICAgIGZsZXg6IDEgMSA2MCU7XG5cbiAgICAmIC5ncmlkLXByb2R1Y3RfX2xpbmstLWlubGluZSB7XG4gICAgICBnYXA6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi5wcmVkaWN0aXZlX19pbWFnZS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG5cbiAgJiBpbWcge1xuICAgIG9iamVjdC1wb3NpdGlvbjogNTAlIDA7XG4gIH1cbn1cblxuLnByZWRpY3RpdmUtcmVzdWx0c19fZm9vdGVyIHtcbiAgcGFkZGluZzogMCAwIDMwcHg7XG59XG4iLCIuc2VhcmNoLWJhciB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnNlYXJjaC1iYXItLXBhZ2Uge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBtYXJnaW4tdG9wOiBjYWxjKC0kZ3V0dGVyIC8gMik7XG5cbiAgQG5lc3QgW2RhdGEtdHlwZV9oZWFkZXJzX2FsaWduX3RleHQ9XCJjZW50ZXJcIl0gJiB7XG4gICAgbWFyZ2luOiBjYWxjKC0kZ3V0dGVyIC8gMikgYXV0byAwO1xuICB9XG59XG5cbi5zZWFyY2gtYmFyLS1kcmF3ZXIge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcblxuICAmIGlucHV0IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLnNlYXJjaC1iYXIgLmljb24ge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuIiwiLnRvb2xiYXIge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JOYXY7XG4gIGNvbG9yOiAkY29sb3JOYXZUZXh0O1xuICBAbWl4aW4gYmFzZVNtYWxsRm9udFN0YWNrO1xuXG4gICYgYSB7XG4gICAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG4gIH1cblxuICAvKkRvIG5vdCBzaG93IGluIHN0aWNreSBoZWFkZXIqL1xuICBAbmVzdCAuc2l0ZS1oZWFkZXItLXN0dWNrICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRvb2xiYXItLXRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkY29sb3JTdGlja3lOYXZMaW5rcztcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuICAmIGEge1xuICAgIGNvbG9yOiAkY29sb3JTdGlja3lOYXZMaW5rcztcbiAgfVxuXG4gICYgLnRvb2xiYXJfX2NvbnRlbnQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gIH1cbn1cblxuLnRvb2xiYXJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udG9vbGJhcl9faXRlbSB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAwIDVweDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAmIHNlbGVjdCxcbiAgJiAuZmF1eC1zZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuLnRvb2xiYXJfX2l0ZW0tLW1lbnUge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLnRvb2xiYXJfX21lbnUge1xuICBtYXJnaW4tbGVmdDogY2FsYygtJGd1dHRlciAvIDMpOyAvKmVxdWl2YWxlbnQgb2YgYSBwYWRkaW5nKi9cblxuICAmIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCBjYWxjKCRndXR0ZXIgLyAzKTtcbiAgfVxufVxuXG4udG9vbGJhcl9fc29jaWFsIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMnB4O1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgfVxufVxuIiwiLnNlY3Rpb24taGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogJHNlY3Rpb25IZWFkZXJCb3R0b21TbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNlY3Rpb25IZWFkZXJCb3R0b207XG4gIH1cblxuICBAbmVzdCBbZGF0YS10eXBlX2hlYWRlcnNfYWxpZ25fdGV4dD1cImNlbnRlclwiXSAmIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmIHNlbGVjdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuLnNlY3Rpb24taGVhZGVyLS1mbHVzaCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zZWN0aW9uLWhlYWRlci0td2l0aC1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAmIHNlbGVjdCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbn1cblxuLnNlY3Rpb24taGVhZGVyLS1oZXJvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgMTAwJTtcbiAgY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICYgYSB7XG4gICAgY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlcl9fc2hhZG93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJjpiZWZvcmUge1xuICAgIEBtaXhpbiBvdmVybGF5O1xuICAgIEBtaXhpbiBoZXJvUmFkaWFsO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG5cbiAgJiAuYnJlYWRjcnVtYixcbiAgJiAuc2VjdGlvbi1oZWFkZXJfX3RpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLnNlY3Rpb24taGVhZGVyX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgQG5lc3QgLnNlY3Rpb24taGVhZGVyLS13aXRoLWxpbmsgJiB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgQG5lc3QgLnNlY3Rpb24taGVhZGVyLS1oZXJvICYge1xuICAgICAgZm9udC1zaXplOiB2YXIoLS10eXBlSDFTaXplSGVybyk7XG4gICAgfVxuICB9XG59XG5cbi5zZWN0aW9uLWhlYWRlcl9fbGluayB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuXG4gIEBuZXN0IC5zZWN0aW9uLWhlYWRlci0td2l0aC1saW5rICYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLnNlY3Rpb24taGVhZGVyLS00MDQge1xuICBwYWRkaW5nLXRvcDogODBweDtcbn1cblxuLnNlY3Rpb24taGVhZGVyIHNlbGVjdCB7XG4gIG1hcmdpbjogMTBweCAwO1xufVxuXG4uc2VjdGlvbi1oZWFkZXIgcCB7XG4gIG1hcmdpbjogMTBweCAwO1xufVxuIiwiLnNpdGUtbmF2IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgQG5lc3QgLmhlYWRlci1sYXlvdXQtLWxlZnQgJiB7XG4gICAgcGFkZGluZy1sZWZ0OiBjYWxjKCRndXR0ZXIgLyAzKTtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2ljb25zIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnNpdGUtbmF2X19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICAmIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLmljb24tY2hldnJvbi1kb3duIHtcbiAgICB3aWR0aDogJGRlc2t0b3BNZW51Q2hldnJvblNpemU7XG4gICAgaGVpZ2h0OiAkZGVza3RvcE1lbnVDaGV2cm9uU2l6ZTtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcGFkZGluZzogY2FsYygkc2l0ZU5hdkl0ZW1QYWRkaW5nIC8gMikgJHNpdGVOYXZJdGVtUGFkZGluZztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG5cbiAgQG5lc3QgLnNpdGUtaGVhZGVyLS1oZWFkaW5nLXN0eWxlICYge1xuICAgIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvck5hdlRleHQ7XG4gIH1cblxuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLnNpdGUtbmF2LS1oYXMtZHJvcGRvd24gPiAmIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMSk7XG4gIH1cblxuICAmIC5pY29uLWNoZXZyb24tZG93biB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tZG93bikge1xuICAgIHBhZGRpbmc6IGNhbGMoJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuXG4gICAgQG5lc3QgLmhlYWRlci1sYXlvdXQtLWNlbnRlciAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMnB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2xpbmstLXVuZGVybGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwICRzaXRlTmF2SXRlbVBhZGRpbmc7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvck5hdlRleHQ7XG4gICAgdHJhbnNpdGlvbjogcmlnaHQgMC41cztcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8qV2hpdGUgdW5kZXJsaW5lIHdoZW4gbm8gZHJvcGRvd24qL1xuICBAbmVzdCAuaXMtbGlnaHQgLnNpdGUtbmF2X19pdGVtOm5vdCguc2l0ZS1uYXYtLWhhcy1kcm9wZG93bikgJjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC8qRHJvcGRvd24gdGV4dCBjb2xvciB1bmRlcmxpbmUgd2hlbiBpbiBkcm9wZG93biBsaW5rKi9cbiAgQG5lc3QgLnNpdGUtbmF2LS1oYXMtZHJvcGRvd24gJjphZnRlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yTmF2VGV4dDtcbiAgfVxuXG4gIC8qV2hpdGUgRHJvcGRvd24gdGV4dCBjb2xvciB1bmRlcmxpbmUgd2hlbiBpbiBkcm9wZG93biBsaW5rKi9cbiAgQG5lc3QgLmlzLWxpZ2h0IC5zaXRlLW5hdi0taGFzLWRyb3Bkb3duICY6YWZ0ZXIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XG4gIH1cblxuICBAbmVzdCAuc2l0ZS1uYXZfX2l0ZW06aG92ZXIgJjphZnRlciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuLnNpdGUtbmF2X19kZXRhaWxzIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICYgLnNpdGUtbmF2X19kcm9wZG93bixcbiAgJiAubWVnYW1lbnUge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxufVxuXG4vKktlZXAgYWN0aXZlIHN0YXRlIG9uIHBhcmVudCBkcm9wZG93biBsaW5rKi9cbi5zaXRlLW5hdi0taGFzLWRyb3Bkb3duIHtcbiAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMSk7XG5cbiAgJi5pcy1mb2N1c2VkLFxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiBjYWxjKCR6aW5kZXhOYXZEcm9wZG93bnMgKyAyKTtcbiAgfVxufVxuXG4uc2l0ZS1uYXYtLWhhcy1kcm9wZG93bi5pcy1mb2N1c2VkID4gYSxcbi5zaXRlLW5hdi0taGFzLWRyb3Bkb3duOmhvdmVyID4gYSB7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JOYXY7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5zaXRlLW5hdl9fbGluay0taWNvbiB7XG4gIHBhZGRpbmctbGVmdDogJHNpdGVOYXZJY29uUGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHNpdGVOYXZJY29uUGFkZGluZztcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoJHNpdGVOYXZJdGVtUGFkZGluZyAvIDIpO1xuXG4gICAgJiArIC5zaXRlLW5hdl9fbGluay0taWNvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTRweDsgLyp+YW1vdW50IG9mIGlubGluZS1ibG9jayBzcGFjZSovXG4gICAgfVxuICB9XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6ICRkZXNrdG9wTWVudUljb25TaXplO1xuICAgIGhlaWdodDogJGRlc2t0b3BNZW51SWNvblNpemU7XG4gIH1cbn1cblxuLnNpdGUtbmF2X19kcm9wZG93biB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICB6LWluZGV4OiAkemluZGV4TmF2RHJvcGRvd25zO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JOYXY7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMykgMCA1cHg7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEycHgsIDApO1xuXG4gIEBuZXN0IGRldGFpbHNbb3Blbl0gPiAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGN1YmljLWJlemllcigwLjIsIDAuMDYsIDAuMDUsIDAuOTUpO1xuICB9XG5cbiAgJiBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJiA+IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiBjYWxjKCR6aW5kZXhOYXZEcm9wZG93bnMgKyAxKTtcbiAgICB9XG4gIH1cblxuICAmIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvck5hdjtcbiAgICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcbiAgfVxufVxuXG4uc2l0ZS1uYXZfX2RlZXAtZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JOYXY7XG4gIGJveC1zaGFkb3c6IDAgMTBweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogJHppbmRleE5hdkRyb3Bkb3ducztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTJweCwgMCwgMCk7XG5cbiAgQG5lc3QgLnNpdGUtbmF2X19kZWVwLWRyb3Bkb3duLXRyaWdnZXI6aG92ZXIgJixcbiAgLmlzLWZvY3VzZWQgKyAmIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMiwgMC4wNiwgMC4wNSwgMC45NSk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMC4wOSksIHRyYW5zcGFyZW50KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYgLnNpdGUtbmF2X19kcm9wZG93bi1saW5rOmhvdmVyLFxuICAmIC5zaXRlLW5hdl9fZHJvcGRvd24tbGluazpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTmF2RGltO1xuICB9XG59XG5cbi5zaXRlLW5hdl9fZHJvcGRvd24tbGluay0taGFzLWNoaWxkcmVuIHtcbiAgQG5lc3QgLnNpdGUtbmF2X19kZWVwLWRyb3Bkb3duLXRyaWdnZXI6aG92ZXIgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTmF2RGltO1xuICB9XG59XG5cbi5zaXRlLW5hdl9fZHJvcGRvd24tbGluay0tc2Vjb25kLWxldmVsIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTmF2RGltO1xuICB9XG59XG5cbi8qUm90YXRlIHRvIGZhY2UgcmlnaHQqL1xuLnNpdGUtbmF2X19kZWVwLWRyb3Bkb3duLXRyaWdnZXIgLmljb24tY2hldnJvbi1kb3duIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAkZGVza3RvcE1lbnVDaGV2cm9uU2l6ZTtcbiAgaGVpZ2h0OiAkZGVza3RvcE1lbnVDaGV2cm9uU2l6ZTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVYKDUwJSk7XG59XG5cbi8qIEluY3JlYXNlIHotaW5kZXggb24gYW4gb3BlbiBkcm9wZG93biB0byBhdm9pZCBvdmVybGFwcGluZyBtdWx0aS1saW5lIG5hdnMgKi9cbi5zaXRlLW5hdl9fZGV0YWlsc1tvcGVuXSAuc2l0ZS1uYXZfX2Ryb3Bkb3duIHtcbiAgei1pbmRleDogY2FsYygkemluZGV4TmF2RHJvcGRvd25zICsgMyk7XG59XG5cbi8qIFJhaXNlIHRoZSBwYXJlbnQgbmF2IGl0ZW0ncyBzdGFja2luZyBjb250ZXh0IHdoZW4gaXRzIGRyb3Bkb3duIGlzIG9wZW4sXG4gICBzbyBpdCBzaXRzIGFib3ZlIG90aGVyIG5hdiBpdGVtcyB0aGF0IG1heSBiZSBob3ZlcmVkICgrMikgKi9cbi5zaXRlLW5hdi0taGFzLWRyb3Bkb3duOmhhcyhkZXRhaWxzW29wZW5dKSB7XG4gIHotaW5kZXg6IGNhbGMoJHppbmRleE5hdkRyb3Bkb3ducyArIDMpO1xufVxuXG4ubW9iaWxlLW5hdiB7XG4gIG1hcmdpbjogY2FsYyh2YXIoLS1kcmF3ZXItZ3V0dGVyKSAqIC0xKSBjYWxjKHZhcigtLWRyYXdlci1ndXR0ZXIpICogLTEpIDA7XG5cbiAgJiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19zZWFyY2gge1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuLm1vYmlsZS1uYXZfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIC8qQmFja2dyb3VuZCBjb2xvciBvbiB0b3AgbGV2ZWwgaXRlbXMgc28gdGhlcmUgaXMgbm9cbiAgZWxlbWVudCBvdmVybGFwIG9uIHN1Ym5hdidzIENTUyB0b2dnbGUgYW5pbWF0aW9uKi9cbiAgQG5lc3QgLm1vYmlsZS1uYXYgPiAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JEcmF3ZXJzO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbiAgICByaWdodDogdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgfVxufVxuXG4vKkxvZ2luL2xvZ291dCBsaW5rcyBjYW4ndCBoYXZlIGEgY2xhc3Mgb24gdGhlbSwgc28gc3R5bGUgPGE+IGVsZW1lbnQqL1xuLm1vYmlsZS1uYXZfX2xpbmssXG4ubW9iaWxlLW5hdl9fZmF1eC1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tb2JpbGUtbmF2X19saW5rLS10b3AtbGV2ZWwge1xuICBmb250LXNpemU6IDEuNGVtO1xuXG4gIEBuZXN0IC5tb2JpbGUtbmF2LS1oZWFkaW5nLXN0eWxlICYge1xuICAgIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2X19saW5rLFxuLm1vYmlsZS1uYXZfX2ZhdXgtbGluayxcbi5tb2JpbGUtbmF2X190b2dnbGUgYnV0dG9uLFxuLm1vYmlsZS1uYXZfX3RvZ2dsZSAuZmF1eC1idXR0b24ge1xuICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMikgdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRjb2xvckRyYXdlclRleHREYXJrO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckRyYXdlcnNEaW07XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX2NoaWxkLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICYgYSxcbiAgJiAubW9iaWxlLW5hdl9fbGluayB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyOm5vdCgubW9iaWxlLW5hdl9fbGluay0tYnV0dG9uKSB7XG4gICAgZmxleDogMCAwIGNhbGMoJGNvbGxhcHNpYmxlLXRyaWdnZXItY2lyY2xlLXdpZHRoICsgMTZweCk7XG4gIH1cblxuICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgfVxuXG4gIEBuZXN0IFtkaXI9XCJydGxcIl0gJiB7XG4gICAgJiAuY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICB9XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX2l0ZW0tLXNlY29uZGFyeSB7XG4gICYgYSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IC8qbm8gdHJhaWxpbmcgYm9yZGVyKi9cbiAgfVxufVxuXG4vKlNwYWNpbmcgYWJvdmUgc2Vjb25kYXJ5IGxpbmtzKi9cbi5tb2JpbGUtbmF2X19pdGVtOm5vdCgubW9iaWxlLW5hdl9faXRlbS0tc2Vjb25kYXJ5KSArIC5tb2JpbGUtbmF2X19pdGVtLS1zZWNvbmRhcnkge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4ubW9iaWxlLW5hdl9faGFzLXN1Ymxpc3QsXG4ubW9iaWxlLW5hdl9fbGluay0tYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcblxuICAmID4gKiB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDsgLypCcmVha3MgbG9uZyBwcm9ibGVtYXRpYyB3b3JkcyovXG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX2xpbmstLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubW9iaWxlLW5hdl9fdG9nZ2xlIHtcbiAgZmxleDogMCAxIGF1dG87XG5cbiAgJiAuaWNvbiB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICB9XG5cbiAgJiBidXR0b24sXG4gICYgLmZhdXgtYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDYwJTtcbiAgICBwYWRkaW5nOiAwIDMwcHg7XG4gICAgbWFyZ2luOiAyMCUgMDtcbiAgfVxuXG4gICYgYnV0dG9uIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3JEcmF3ZXJCb3JkZXI7XG4gIH1cblxuICBAbmVzdCBbZGlyPVwicnRsXCJdICYge1xuICAgICYgYnV0dG9uIHtcbiAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuLm1vYmlsZS1uYXZfX3N1Ymxpc3Qge1xuICBtYXJnaW46IDA7XG5cbiAgJiAubW9iaWxlLW5hdl9faXRlbTphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgJiAubW9iaWxlLW5hdl9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cblxuICAmIC5tb2JpbGUtbmF2X19saW5rLFxuICAmIC5tb2JpbGUtbmF2X19mYXV4LWxpbmsge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gNCkgMjVweCBjYWxjKCRndXR0ZXIgLyA0KSB2YXIoLS1kcmF3ZXItZ3V0dGVyKTtcbiAgfVxufVxuXG4ubW9iaWxlLW5hdl9fZ3JhbmRjaGlsZGxpc3Qge1xuICBtYXJnaW46IDA7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgbGVmdDogMTdweDtcbiAgICB0b3A6IDEwcHg7XG4gICAgYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgQG5lc3QgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDE3cHg7XG4gICAgfVxuICB9XG5cbiAgJiAubW9iaWxlLW5hdl9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gICYgLm1vYmlsZS1uYXZfX2xpbmsge1xuICAgIHBhZGRpbmctbGVmdDogMzVweDtcbiAgfVxufVxuXG4ubW9iaWxlLW5hdl9fc29jaWFsIHtcbiAgbGlzdC1zdHlsZTogbm9uZSBvdXRzaWRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcbiAgbWFyZ2luOiAxNXB4IDAgMjBweCAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1kcmF3ZXItZ3V0dGVyKSAqIC0xKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tZHJhd2VyLWd1dHRlcikgKiAtMSk7XG4gIH1cblxuICAmIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEycHggMzBweDtcblxuICAgICYgLmljb24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAtMXB4O1xuICAgIH1cbiAgfVxufVxuXG4ubW9iaWxlLW5hdl9fc29jaWFsLWl0ZW0ge1xuICBmbGV4OiAwIDEgMzMuMzMlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgbWFyZ2luOiAwIDAgLTFweDtcblxuICAmOm50aC1jaGlsZCgzbi0xKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLnNpdGUtbmF2X19saW5rLS1pY29uIC5pY29uIHtcbiAgICB3aWR0aDogMjhweDtcbiAgICBoZWlnaHQ6IDI4cHg7XG5cbiAgICAmLmljb24tdXNlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDFweDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcnQtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJ0LWxpbmtfX2J1YmJsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jYXJ0LWxpbmtfX2J1YmJsZS0tdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQ2FydERvdDtcbiAgYm9yZGVyOiAycHggc29saWQgJGNvbG9yQm9keTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIC8qU2xpZ2h0IHBvc2l0aW9uIGNoYW5nZSB3aXRoIGNhcnQgaWNvbiovXG4gIEBuZXN0IFtkYXRhLWljb249XCJjYXJ0XCJdICYge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogLTRweDtcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLWljb249XCJiYWctbWluaW1hbFwiXSAmIHtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4uYnJlYWRjcnVtYiB7XG4gIEBtaXhpbiBoZWFkaW5nVGV4dENlbnRlcjtcbiAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcbiAgbWFyZ2luOiAtMjVweCAwIDEwcHg7XG5cbiAgQG5lc3QgLnRlbXBsYXRlLXByb2R1Y3QgJiB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuLmJyZWFkY3J1bWJfX2RpdmlkZXIge1xuICBjb2xvcjogY3VycmVudENvbG9yO1xufVxuIiwiLm1lZ2FtZW51IHtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMS4zKSAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdHlwZUhlYWRlckxpbmVIZWlnaHQpO1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIGNvbG9yOiAkY29sb3JOYXZUZXh0O1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMiwgMC4wNiwgMC4wNSwgMC45NSk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuM3M7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1oZWFkZXItaGVpZ2h0LCAxMDBweCkpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gIEBuZXN0IGRldGFpbHNbb3Blbl0gPiAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuXG4gICAgJiAuYXBwZWFyLWFuaW1hdGlvbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uc2l0ZS1uYXYtLWlzLW1lZ2FtZW51LnNpdGUtbmF2X19pdGVtIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLm1lZ2FtZW51X19jb2xsZWN0aW9uLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAxLjUpO1xufVxuXG4vKkNlbnRlciBncmlkIGl0ZW1zIGluIG1lZ2FtZW51IHdoZW4gbG9nbyBjZW50ZXJlZCovXG4udGV4dC1jZW50ZXIgLm1lZ2FtZW51IC5ncmlkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYgLmdyaWRfX2l0ZW0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLm1lZ2FtZW51IC5zaXRlLW5hdl9fZHJvcGRvd24tbGluazpub3QoLnNpdGUtbmF2X19kcm9wZG93bi1saW5rLS10b3AtbGV2ZWwpIHtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDFweCk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLXR5cGVCYXNlTGluZUhlaWdodCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yTmF2VGV4dDtcbiAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuNXM7XG5cbiAgICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlcjphZnRlciB7XG4gICAgICByaWdodDogMDtcbiAgICB9XG59XG5cbi5tZWdhbWVudSBoNSxcbi5tZWdhbWVudSAuaDUge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKiBNZWdhbWVudSBsYXlvdXQgKi9cbi5tZWdhbWVudV9faW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgZ2FwOiAkZ3V0dGVyO1xufVxuXG4ubWVnYW1lbnVfX2lubmVyLS1jZW50ZXIge1xuICAmIC5tZWdhbWVudV9fbmF2IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE4MHB4LCAyMjBweCkpO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5tZWdhbWVudV9fbmF2IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTgwcHgsIDFmcikpO1xuICBnYXA6ICRndXR0ZXI7XG4gIGZsZXg6IDEgMSAwJTtcbiAgbWluLXdpZHRoOiAwO1xuXG4gICYgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLm1lZ2FtZW51X19jb2x1bW4ge1xuICBtaW4td2lkdGg6IDEwMHB4O1xuICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuXG4ubWVnYW1lbnVfX2NvbHVtbi1pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDEuNSk7XG59XG5cbi5tZWdhbWVudV9fY29sdW1uLWltYWdlLXBsYWNlaG9sZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMS41KTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBQcm9tbyB0aWxlcyAqL1xuLm1lZ2FtZW51X19wcm9tb3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBnYXA6ICRndXR0ZXI7XG4gIGZsZXg6IDAgMCAzMyU7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm1lZ2FtZW51X19pbm5lcjpoYXMoLm1lZ2FtZW51X19wcm9tb3MtLWJlZm9yZSk6aGFzKC5tZWdhbWVudV9fcHJvbW9zLS1hZnRlcikge1xuICAmIC5tZWdhbWVudV9fcHJvbW9zIHtcbiAgICBmbGV4LWJhc2lzOiBjYWxjKDMzJSAvIDIpO1xuICB9XG59XG5cbi5tZWdhbWVudV9fcHJvbW8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIDAlO1xuICBtaW4td2lkdGg6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4ubWVnYW1lbnVfX3Byb21vLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbi5tZWdhbWVudV9fcHJvbW8taW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4ubWVnYW1lbnVfX3Byb21vLWNvbnRlbnQge1xuICBwYWRkaW5nOiAwIDJweDtcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbn1cblxuLm1lZ2FtZW51X19wcm9tby1oZWFkaW5nIHtcbiAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICBmb250LXdlaWdodDogYm9sZDtcblxuICAmLmg0IHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuXG4ubWVnYW1lbnVfX3Byb21vLXRleHQge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDFweCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS10eXBlQmFzZUxpbmVIZWlnaHQpO1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xufVxuXG4vKiBNb2JpbGUgcHJvbW9zICovXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLm1lZ2FtZW51X19tb2JpbGUtcHJvbW9zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMzBweDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIHBhZGRpbmc6ICRndXR0ZXIgdmFyKC0tZHJhd2VyLWd1dHRlcik7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgJiAubWVnYW1lbnVfX3Byb21vIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgIG1heC13aWR0aDogMjUwcHg7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAmIC5tZWdhbWVudV9fcHJvbW86b25seS1jaGlsZCB7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICB3aWR0aDogNzUlO1xuICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgICYgLmJ0bi0tc2Vjb25kYXJ5IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi5tb2RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAkemluZGV4TW9kYWw7XG4gIGNvbG9yOiAkY29sb3JNb2RhbFRleHQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICYubW9kYWwtLXF1aWNrLXNob3Age1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgJiBhLFxuICAmIGE6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgJiAuYnRuOm5vdChbZGlzYWJsZWRdKTpub3QoLmJ0bi0tc2Vjb25kYXJ5KTpub3QoLmJ0bi0tYm9keSksXG4gICYgLmJ0bjpub3QoW2Rpc2FibGVkXSk6bm90KC5idG4tLXNlY29uZGFyeSk6bm90KC5idG4tLWJvZHkpOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIH1cblxuICBAbmVzdCAubW9kYWwtb3BlbiAmIHtcbiAgICAmIC5tb2RhbF9faW5uZXIge1xuICAgICAgYW5pbWF0aW9uOiBtb2RhbC1vcGVuIDAuNXMgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JNb2RhbEJnO1xuICAgICAgYW5pbWF0aW9uOiBvdmVybGF5LW9uIDAuNXMgZm9yd2FyZHM7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgQG5lc3QgLm1vZGFsLWNsb3NpbmcgJiB7XG4gICAgJiAubW9kYWxfX2lubmVyIHtcbiAgICAgIGFuaW1hdGlvbjogbW9kYWwtY2xvc2luZyAwLjVzIGZvcndhcmRzO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yTW9kYWxCZztcbiAgICAgIGFuaW1hdGlvbjogb3ZlcmxheS1vZmYgMC41cyBmb3J3YXJkcztcbiAgICB9XG4gIH1cblxuICBAbmVzdCAubW9kYWwtb3Blbi0tc29saWQgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvck1vZGFsQmc7XG4gIH1cbn1cblxuLm1vZGFsLS1zb2xpZCB7XG4gIEBuZXN0IC5tb2RhbC1vcGVuICYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBhbmltYXRpb246IGZ1bGwtb3ZlcmxheS1vbiAwLjVzIGZvcndhcmRzO1xuICAgIH1cbiAgfVxuXG4gIEBuZXN0IC5tb2RhbC1jbG9zaW5nICYge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBhbmltYXRpb246IGZ1bGwtb3ZlcmxheS1vZmYgMC41cyBmb3J3YXJkcztcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsLS1pcy1jbG9zaW5nIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvKm92ZXJyaWRlIC5pcy10cmFuc2l0aW9uaW5nIHN0eWxlcyovXG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tb2RhbC0taXMtYWN0aXZlIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvKm92ZXJyaWRlIC5pcy10cmFuc2l0aW9uaW5nIHN0eWxlcyovXG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qQ2xhc3Mgb24gYm9keSBlbGVtZW50IHdoZW4gbW9kYWwgb3Blbi5cbk9ubHkgbWVkaXVtLXVwIGJlY2F1c2UgaU9TIGp1bXBzIHRvIHRvcCBvdGhlcndpc2UqL1xuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAubW9kYWwtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubW9kYWxfX2lubmVyIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMik7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gY2FsYygkZ3V0dGVyIC8gMikpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDQwcHg7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgfVxuXG4gIEBuZXN0IC5tb2RhbC0tc3F1YXJlICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIGJveC1zaGFkb3c6IDAgMTVweCA0NXB4IHJnYigwLCAwLCAwLCAwLjEpO1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gIH1cbn1cblxuLypObyBtYXggaGVpZ2h0IG9uIHByb2R1Y3QgaW1hZ2VzKi9cbi5tb2RhbF9faW5uZXIge1xuICAmIC5pbWFnZS13cmFwIGltZyB7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgfVxufVxuXG4ubW9kYWxfX2NlbnRlcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAwIDEgYXV0bztcbiAgbWluLXdpZHRoOiAxcHg7IC8qaWUxMCB0aGluZyovXG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm1vZGFsX19jZW50ZXJlZC1jb250ZW50IHtcbiAgQG5lc3QgLm1vZGFsLS1zcXVhcmUgJiB7XG4gICAgbWF4LWhlaWdodDogODB2aDtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAuNzUpO1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMS41KTtcbiAgICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICB9XG4gIH1cbn1cblxuLm1vZGFsX19jbG9zZSB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY29sb3I6ICRjb2xvck1vZGFsVGV4dDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogJGd1dHRlcjtcbiAgfVxuXG4gICYgLmljb24ge1xuICAgIHdpZHRoOiAyOHB4O1xuICAgIGhlaWdodDogMjhweDtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3JNb2RhbFRleHQ7XG4gIH1cblxuICBAbmVzdCAubW9kYWwtLXNxdWFyZSAmIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDMpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICB9XG4gIH1cbn1cblxuLypBamF4IHBhZ2UgYWRqdXN0bWVudHMqL1xuLm1vZGFsIHtcbiAgJiAucGFnZS1jb250ZW50LFxuICAmIC5wYWdlLXdpZHRoIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8qR29vZ2xlLWZyaWVuZGx5IG5vbiBpbnRydXNpdmUgbW9iaWxlIG1vZGFsKi9cbi5wb3B1cC1jdGEge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5tb2RhbC0tbW9iaWxlLWZyaWVuZGx5IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuXG4gICAgJi5tb2RhbC0tc3F1YXJlIC5tb2RhbF9fY2VudGVyZWQtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgfVxuXG4gICAgJi5tb2RhbC0taXMtYWN0aXZlIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cblxuICAgIEBuZXN0IC5tb2RhbC1vcGVuICYge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLm1vZGFsX19pbm5lciB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgJiAuaDEge1xuICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICB9XG5cbiAgICAmIGlucHV0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYgLnRleHQtY2xvc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5qcy1xdHlfX3dyYXBwZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiA4MHB4O1xuICBtaW4td2lkdGg6IDYwcHg7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG5cbiAgJi5pcy1sb2FkaW5nIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuLmpzLXF0eV9fbnVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDVweCAyMHB4O1xuICBtYXJnaW46IDA7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5qcy1xdHlfX2FkanVzdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGJvcmRlcjogMCBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLW91dDtcbiAgei1pbmRleDogMjtcbiAgZmlsbDogJGNvbG9yVGV4dEJvZHk7XG5cbiAgJiAuaWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgZmlsbDogaW5oZXJpdDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHlEaW07XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgQG5lc3QgLmpzLXF0eV9fbnVtOmFjdGl2ZSB+ICYsXG4gIC5qcy1xdHlfX251bTpmb2N1cyB+ICYge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cbn1cblxuLmpzLXF0eV9fYWRqdXN0LS1wbHVzIHtcbiAgcmlnaHQ6IDA7XG59XG5cbi5qcy1xdHlfX2FkanVzdC0tbWludXMge1xuICBsZWZ0OiAwO1xufVxuXG4uZHJhd2VyIHtcbiAgJiAuanMtcXR5X193cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckRyYXdlckJvcmRlcjtcbiAgfVxuXG4gICYgLmpzLXF0eV9fbnVtIHtcbiAgICBjb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAycHg7XG4gIH1cblxuICAmIC5qcy1xdHlfX2FkanVzdCB7XG4gICAgY29sb3I6ICRjb2xvckRyYXdlclRleHQ7XG4gICAgZmlsbDogJGNvbG9yRHJhd2VyVGV4dDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yRHJhd2VyVGV4dDtcbiAgICAgIGNvbG9yOiAkY29sb3JEcmF3ZXJzO1xuICAgICAgZmlsbDogJGNvbG9yRHJhd2VycztcbiAgICB9XG4gIH1cbn1cbiIsIi5jdXJyZW5jeS1mbGFnIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjU1KTtcbiAgbWFyZ2luOiAtMC41NXJlbTtcbn1cblxuLypcbiAgQ2VudGVyIHBvcHVwIG9uIG1vYmlsZSBzbyBsb25nIGNvdW50cnkvY3VycmVuY3kgbmFtZXNcbiAgZG8gbm90IGNhdXNlIGhvcml6b250YWwgc2Nyb2xsXG4gKi9cbkBtZWRpYSAoLS1zbWFsbCkge1xuICBbZGF0YS1kaXNjbG9zdXJlLWN1cnJlbmN5XSAuZGlzY2xvc3VyZS1saXN0IHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIG1heC13aWR0aDogOTV2dztcbiAgfVxufVxuIiwiLypjb2xsYXBzaWJsZXMtd3JhcHBlciBpcyBhbiBvcHRpb25hbCB3cmFwcGVyKi9cbi5jb2xsYXBzaWJsZXMtd3JhcHBlci0tYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yQm9yZGVyO1xufVxuXG4uY29sbGFwc2libGVzLXdyYXBwZXItLWJvcmRlci1ib3R0b20gKyAuY29sbGFwc2libGVzLXdyYXBwZXItLWJvcmRlci1ib3R0b20gLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuLS1ib3JkZXJzIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLnByb2R1Y3QtYmxvY2stLXRhYiArIC5wcm9kdWN0LWJsb2NrLS10YWIgLmNvbGxhcHNpYmxlLXRyaWdnZXItYnRuLS1ib3JkZXJzIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGgtc21hbGw7XG4gIGhlaWdodDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aC1zbWFsbDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICB3aWR0aDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGg7XG4gIH1cblxuICBAbmVzdCAubW9iaWxlLW5hdl9faGFzLXN1Ymxpc3QgJiB7XG4gICAgcmlnaHQ6IDI1cHg7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJGNvbGxhcHNpYmxlLXRyaWdnZXItaWNvbi13aWR0aC1zbWFsbDtcbiAgICBoZWlnaHQ6ICRjb2xsYXBzaWJsZS10cmlnZ2VyLWljb24td2lkdGgtc21hbGw7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbjtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIHdpZHRoOiAkY29sbGFwc2libGUtdHJpZ2dlci1pY29uLXdpZHRoO1xuICAgICAgaGVpZ2h0OiAkY29sbGFwc2libGUtdHJpZ2dlci1pY29uLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4uY29sbGFwc2libGUtdHJpZ2dlci0taW5saW5lIHtcbiAgcGFkZGluZzogMTFweCAwIDExcHggNDBweDtcblxuICAmIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uLS1jaXJjbGUge1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHdpZHRoOiAkY29sbGFwc2libGUtdHJpZ2dlci1jaXJjbGUtd2lkdGg7XG4gIGhlaWdodDogJGNvbGxhcHNpYmxlLXRyaWdnZXItY2lyY2xlLXdpZHRoO1xuICBib3JkZXItcmFkaXVzOiAkY29sbGFwc2libGUtdHJpZ2dlci1jaXJjbGUtd2lkdGg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAmIC5pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG59XG5cbi5jb2xsYXBzaWJsZS10cmlnZ2VyLmlzLW9wZW4gLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24gPiAuaWNvbi1jaGV2cm9uLWRvd24ge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG59XG5cbi8qU2xpZ2h0bHkgZGlmZmVyZW50IGZvciBjaXJjbGUgYnV0dG9ucyovXG4uY29sbGFwc2libGUtdHJpZ2dlci5pcy1vcGVuIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uLS1jaXJjbGUgPiAuaWNvbi1jaGV2cm9uLWRvd24ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZVkoLTEpO1xufVxuXG4uY29sbGFwc2libGUtY29udGVudCB7XG4gIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1jbG9zZS10cmFuc2l0aW9uO1xuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1vcGVuLXRyYW5zaXRpb247XG4gIH1cbn1cblxuLmNvbGxhcHNpYmxlLWNvbnRlbnQtLWFsbCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgJiAuY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0MHB4KTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmNvbGxhcHNpYmxlLWNvbnRlbnQtLXNtYWxsIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBoZWlnaHQ6IDA7XG5cbiAgICAmIC5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNDBweCk7XG4gICAgfVxuICB9XG59XG5cbi5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lciB7XG4gIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1jb250ZW50LWNsb3NlLXRyYW5zaXRpb247XG5cbiAgQG5lc3QgLmlzLW9wZW4gJiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246ICRjb2xsYXBzaWJsZS1jb250ZW50LW9wZW4tdHJhbnNpdGlvbjtcbiAgfVxufVxuXG4uZmFxLWl0ZW0gLmNvbGxhcHNpYmxlLXRyaWdnZXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmZhcS1pdGVtIC5jb2xsYXBzaWJsZS10cmlnZ2VyX19pY29uIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi5mYXEtaXRlbSAuY29sbGFwc2libGUtdHJpZ2dlcjpob3ZlciAuY29sbGFwc2libGUtdHJpZ2dlcl9faWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCBjdXJyZW50Q29sb3IgOCUsIHRyYW5zcGFyZW50KTtcbn1cblxuLmNvbGxhcHNpYmxlLXRyaWdnZXItLWljb24tcmlnaHQge1xuICBwYWRkaW5nOiAxMXB4IDQwcHggMTFweCAwO1xuXG4gICYgLmNvbGxhcHNpYmxlLXRyaWdnZXJfX2ljb24ge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuLnJ0ZS5jb2xsYXBzaWJsZS1jb250ZW50X19pbm5lci0tZmFxIHtcbiAgcGFkZGluZy1ib3R0b206ICRndXR0ZXI7XG59XG5cbi5jb2xsYXBzaWJsZS1sYWJlbF9fY2xvc2VkIHtcbiAgQG5lc3QgLmNvbGxhcHNpYmxlLXRyaWdnZXJbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2libGUtbGFiZWxfX29wZW4ge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBuZXN0IC5jb2xsYXBzaWJsZS10cmlnZ2VyW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdICYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vKkN1c3RvbSBmdW5jdGlvbmFsaXR5IGZvciBjb2xsZWN0aW9uIHNpZGViYXIqL1xuLmNvbGxhcHNpYmxlLWNvbnRlbnQtLXNpZGViYXIge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAmLmlzLW9wZW4ge1xuICAgICAgb3ZlcmZsb3c6IGluaXRpYWw7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi5wc3dwIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgei1pbmRleDogMTUwMDtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnBzd3AgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4vKiBzdHlsZSBpcyBhZGRlZCB3aGVuIEpTIG9wdGlvbiBzaG93SGlkZU9wYWNpdHkgaXMgc2V0IHRvIHRydWUgKi9cbi5wc3dwLS1hbmltYXRlX29wYWNpdHkge1xuICAvKiAwLjAwMSwgYmVjYXVzZSBvcGFjaXR5OjAgZG9lc24ndCB0cmlnZ2VyIFBhaW50IGFjdGlvbiwgd2hpY2ggY2F1c2VzIGxhZyBhdCBzdGFydCBvZiB0cmFuc2l0aW9uICovXG4gIG9wYWNpdHk6IDAuMDAxO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTsgfVxuXG4ucHN3cC0tb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5wc3dwLS16b29tLWFsbG93ZWQgLnBzd3BfX2ltZyB7XG4gIGN1cnNvcjogem9vbS1pbjsgfVxuXG4ucHN3cC0tem9vbWVkLWluIC5wc3dwX19pbWcge1xuICBjdXJzb3I6IGdyYWI7IH1cblxuLnBzd3AtLWRyYWdnaW5nIC5wc3dwX19pbWcge1xuICBjdXJzb3I6IGdyYWJiaW5nOyB9XG5cbi8qXG4gIEJhY2tncm91bmQgaXMgYWRkZWQgYXMgYSBzZXBhcmF0ZSBlbGVtZW50LlxuICBBcyBhbmltYXRpbmcgb3BhY2l0eSBpcyBtdWNoIGZhc3RlciB0aGFuIGFuaW1hdGluZyByZ2JhKCkgYmFja2dyb3VuZC1jb2xvci5cbiovXG4ucHN3cF9fYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogJGNvbG9yQm9keTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7IH1cblxuLnBzd3BfX3Njcm9sbC13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX196b29tLXdyYXAge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwOyB9XG5cbi8qIFByZXZlbnQgc2VsZWN0aW9uIGFuZCB0YXAgaGlnaGxpZ2h0cyAqL1xuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX19pbWcge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyB9XG5cbi5wc3dwX196b29tLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLnBzd3BfX2JnIHtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTsgfVxuXG4ucHN3cC0tYW5pbWF0ZWQtaW4gLnBzd3BfX2JnLFxuLnBzd3AtLWFuaW1hdGVkLWluIC5wc3dwX196b29tLXdyYXAge1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnBzd3BfX2l0ZW0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ucHN3cF9faW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7IH1cblxuLypcbiAgc3RyZXRjaGVkIHRodW1ibmFpbCBvciBkaXYgcGxhY2Vob2xkZXIgZWxlbWVudCAoc2VlIGJlbG93KVxuICBzdHlsZSBpcyBhZGRlZCB0byBhdm9pZCBmbGlja2VyaW5nIGluIHdlYmtpdC9ibGluayB3aGVuIGxheWVycyBvdmVybGFwXG4qL1xuLnBzd3BfX2ltZy0tcGxhY2Vob2xkZXIge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ucHN3cC0taWUgLnBzd3BfX2ltZyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLypcbiAgRXJyb3IgbWVzc2FnZSBhcHBlYXJzIHdoZW4gaW1hZ2UgaXMgbm90IGxvYWRlZFxuICAoSlMgb3B0aW9uIGVycm9yTXNnIGNvbnRyb2xzIG1hcmt1cClcbiovXG4ucHN3cF9fZXJyb3ItbXNnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi10b3A6IC04cHg7XG4gIGNvbG9yOiAjQ0NDOyB9XG5cbi5wc3dwX19lcnJvci1tc2cgYSB7XG4gIGNvbG9yOiAjQ0NDO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ucHN3cF9fYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC8qQmVjYXVzZSBKUyBsaXN0ZW5zIHRvIGNsaWNrIG9uIGJ1dHRvbiBlbGVtZW50IGl0c2VsZiovXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cblxuICAvKklnbm9yZSBjbGlja3Mgb24gc3ZncyBpbnNpZGUgYnV0dG9uKi9cbiAgJiBzdmcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0IC5pY29uLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IC5pY29uIHtcbiAgd2lkdGg6IDEzcHg7XG4gIGhlaWdodDogMTNweDtcbiAgbWFyZ2luOiA4cHg7XG59XG5cbi5wc3dwX19idXR0b25bZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qIEhpZGUgYXJyb3cgYnV0dG9ucyB3aGVuIGdhbGxlcnkgaGFzIG9ubHkgb25lIGl0ZW0gKi9cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LnBzd3BfX2VsZW1lbnQtLWRpc2FibGVkLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0LnBzd3BfX2VsZW1lbnQtLWRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wc3dwX191aSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvdHRvbTogJGd1dHRlcjtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIDAuNnM7XG5cbiAgJiAuYnRuIHtcbiAgICBtYXJnaW46IDE1cHg7XG4gIH1cbn1cblxuLnBzd3BfX3VpLS1oaWRkZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTUwJSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcbn1cblxuLyogRml4ZXMgZm9yIGlPUzE1ICovXG4vKiBTZWUgaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vZGltc2VtZW5vdi8wYjhjMjU1YzBkODdmMjk4OWU4YWI4NzYwNzM1MzRlYSAqL1xuXG5odG1sLnBzd3Atb3Blbi1pbi1pb3MsXG5odG1sLnBzd3Atb3Blbi1pbi1pb3MgYm9keSB7XG4gIGJhY2tncm91bmQ6ICM0NDQ7XG4gIGhlaWdodDogdmFyKC0td2luZG93LWlubmVyLWhlaWdodCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIEhpZGUgcGFnZSBjb250ZW50IHZpYSBDU1Mgd2hlbiBQaG90b1N3aXBlIG9wZW5zICovXG4ucHN3cC1vcGVuLWluLWlvcyBib2R5ID4gKiB7XG4gIGRpc3BsYXk6IG5vbmU7IFxufVxuLnBzd3Atb3Blbi1pbi1pb3MgYm9keSAucHN3cC5wc3dwLS1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7IFxufSBcbiIsIiRtYXgtaGVpZ2h0LWRpc2Nsb3N1cmU6IDYwdmg7XG4kbWluLWhlaWdodC1kaXNjbG9zdXJlOiA5MnB4O1xuXG4uZGlzY2xvc3VyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRpc2Nsb3N1cmVfX3RvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kaXNjbG9zdXJlLWxpc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIGJvdHRvbTogMTAwJTtcbiAgcGFkZGluZzogMTBweCAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6ICRtaW4taGVpZ2h0LWRpc2Nsb3N1cmU7XG4gIG1heC1oZWlnaHQ6ICRtYXgtaGVpZ2h0LWRpc2Nsb3N1cmU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4wOSk7XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xuICB9XG59XG5cbi5kaXNjbG9zdXJlLWxpc3QtLWRvd24ge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgei1pbmRleDogJHotaW5kZXgtZGlzY2xvc3VyZS1oZWFkZXI7XG59XG5cbi5kaXNjbG9zdXJlLWxpc3QtLWxlZnQge1xuICByaWdodDogMDtcbn1cblxuLmRpc2Nsb3N1cmUtbGlzdC0tdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZGlzY2xvc3VyZS1saXN0X19pdGVtIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgcGFkZGluZzogNXB4IDE1cHggNHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZGlzY2xvc3VyZS1saXN0X19vcHRpb24ge1xuICAmOmZvY3VzLFxuICAmOmhvdmVyIHtcbiAgICAmIC5kaXNjbG9zdXJlLWxpc3RfX2xhYmVsIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4uZGlzY2xvc3VyZS1saXN0X19pdGVtLS1jdXJyZW50IHtcbiAgJiAuZGlzY2xvc3VyZS1saXN0X19sYWJlbCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuLmRpc2Nsb3N1cmUtbGlzdF9fbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMC4ycmVtO1xuXG4gIEBuZXN0IFtkYXRhLWRpc2Nsb3N1cmUtY3VycmVuY3ldICYge1xuICAgIHBhZGRpbmctbGVmdDogMTBweFxuICB9XG5cbiAgJiBzcGFuIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgICBAbmVzdCAuaXMtYWN0aXZlICYge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi5tdWx0aS1zZWxlY3RvcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4ubXVsdGktc2VsZWN0b3JzX19pdGVtIHtcbiAgbWFyZ2luOiAwIDIwcHggMTBweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW46IDEwcHggMjBweDtcbiAgfVxuXG4gIEBuZXN0IC50b29sYmFyICYge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4iLCJAaW1wb3J0ICcuLi9nbG9iYWwvdmFyaWFibGVzLXJvb3QuY3NzLmxpcXVpZCc7XG5cbi8qTW9kZWwgdmlld2VyIGNvbnRyb2xzKi9cbi5zaG9waWZ5LW1vZGVsLXZpZXdlci11aSB7XG4gICYgLnNob3BpZnktbW9kZWwtdmlld2VyLXVpX19jb250cm9scy1hcmVhIHtcbiAgICBvcGFjaXR5OiAxOyAvKmFsd2F5cyBzaG93IGNvbnRyb2xzKi9cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keUFscGhhMDA1KTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICB9XG5cbiAgJiAuc2hvcGlmeS1tb2RlbC12aWV3ZXItdWlfX2J1dHRvbiB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgJiAuc2hvcGlmeS1tb2RlbC12aWV3ZXItdWlfX2J1dHRvbi0tY29udHJvbCB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJi5mb2N1cy12aXNpYmxlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgfVxuXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keUFscGhhMDA1KTtcbiAgICB9XG4gIH1cblxuICAmIC5zaG9waWZ5LW1vZGVsLXZpZXdlci11aV9fYnV0dG9uLS1wb3N0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIGNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvckJvZHlBbHBoYTA1KTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yQm9keTtcbiAgICB9XG4gIH1cbn1cblxuLypWaWV3IGluIHNwYWNlIGJ1dHRvbiovXG4ucHJvZHVjdC1zaW5nbGVfX3ZpZXctaW4tc3BhY2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvclRleHRCb2R5QWxwaGEwMDgpO1xuICB3aWR0aDogODAlO1xuICB3aWR0aDogY2FsYyg4MCUgLSA0cHgpOyAvKjRweCA9IHJpZ2h0IG1hcmdpbiBvbiBwcm9kdWN0LWltYWdlLW1haW4qL1xuICBtYXJnaW46IDQwcHggMTAlIDEwcHg7XG4gIHBhZGRpbmc6IDVweCAxMHB4IDEwcHg7XG5cbiAgJltkYXRhLXNob3BpZnkteHItaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucHJvZHVjdC1zaW5nbGVfX3ZpZXctaW4tc3BhY2UtdGV4dCB7XG4gIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cblxuLypNb2RlbCB2aWV3ZXIgY29udGFpbmVyKi9cbi5zaG9waWZ5LW1vZGVsLXZpZXdlci11aSxcbi5zaG9waWZ5LW1vZGVsLXZpZXdlci11aSBtb2RlbC12aWV3ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5zaG9waWZ5LW1vZGVsLXZpZXdlci11aV9fYnV0dG9uW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX2Nsb3NlLW1lZGlhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICB6LWluZGV4OiAyO1xufVxuIiwiLnByaWNlLXJhbmdlX19zbGlkZXItd3JhcHBlciB7XG4gIHBhZGRpbmc6IDAgOHB4IDhweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAwIDEwcHggOHB4O1xuICB9XG59XG5cbi5wcmljZS1yYW5nZV9faW5wdXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHJpY2UtcmFuZ2VfX2Rpc3BsYXktd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLm5vVWktaG9yaXpvbnRhbCAubm9VaS1oYW5kbGUge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3JUZXh0Qm9keSk7XG4gIGJveC1zaGFkb3c6IDAgMCAxcHggMnB4IHJnYigyNTUgMjU1IDI1NSk7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcmlnaHQ6IC02cHg7XG4gIHRvcDogLTNweDtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICB3aWR0aDogMTRweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgcmlnaHQ6IC03cHg7XG4gICAgdG9wOiAtNHB4O1xuICB9XG5cbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cblxuLm5vVWktdGFyZ2V0IHtcbiAgYmFja2dyb3VuZDogI2Y0ZjRmNDtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubm9VaS1jb25uZWN0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3JUZXh0Qm9keSk7XG59XG5cbi5ub1VpLWhvcml6b250YWwge1xuICBoZWlnaHQ6IDZweDtcbn1cbiIsIi5jb3VudGRvd25fX2NvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3VudGRvd24tYmFja2dyb3VuZC1jb2xvcik7XG4gIGNvbG9yOiB2YXIoLS1jb3VudGRvd24tdGV4dC1jb2xvcik7XG59XG5cbi5jb3VudGRvd25fX2Jsb2NrLS1idXR0b24ge1xuICAmIC5idG4uYnRuLS1zZWNvbmRhcnkge1xuICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xuICAgIC8qXG4gICAgICBJbXB1bHNlIHNlY29uZGFyeSBidG4gaXMgY29ubmVjdGVkIHRvXG4gICAgICB0aGUgdGhlbWUgc2V0dGluZyBmb3IgYm9yZGVyIGNvbG9yXG4gICAgKi9cbiAgfVxufVxuIiwiQGtleWZyYW1lcyBraXQtcHVsc2Uge1xuICAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0taG90c3BvdC1jb2xvcikgNTAlLCB0cmFuc3BhcmVudCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMTBweCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4ua2l0LXNob3BwYWJsZS1oZXJvX19jb250ZW50LFxuLmtpdC1zaG9wcGFibGUtaGVyb19fY29udGVudCAua2l0LXRleHQsXG4ua2l0LXNob3BwYWJsZS1oZXJvX19jb250ZW50IC5oZXJvX19saW5rLFxuLmtpdC1zaG9wcGFibGUtaGVyb19fY29udGVudCAuYnRuIHtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cblxuLnNob3BwYWJsZS1oZXJvX19idG4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1ob3RzcG90LWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWhvdHNwb3QtdGV4dC1jb2xvcik7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBhbmltYXRpb246IGtpdC1wdWxzZSAycyBpbmZpbml0ZTtcbn1cblxuLmtpdC1zaG9wcGFibGUtaGVyb19faG90c3BvdDpub3QoOmhhcyhraXQtcG9wb3ZlcikpIC5zaG9wcGFibGUtaGVyb19fYnRuIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uc2hvcHBhYmxlLWhlcm9fX2J0biAuaWNvbi1wbHVzIHBhdGgge1xuICBzdHJva2U6IHRyYW5zcGFyZW50O1xufVxuXG4ua2l0LXNob3BwYWJsZS1oZXJvIC5raXQtcG9wb3ZlciB7XG4gIHBhZGRpbmc6IDEycHggMCAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvckJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm94LXNoYWRvdzogMCAwIDQwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBtYXgtd2lkdGg6IDYxLjgwMyU7IC8qIDEwMCUgLSAxL8+GICovXG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1heC13aWR0aDogMjMuNjA2OCU7IC8qIDEwMCUgLyDPhsKzICovXG4gIH1cbn1cblxuLnNob3BwYWJsZS1oZXJvX19wb3BvdmVyLWJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDVweDtcbiAgcGFkZGluZzogMCAxMnB4O1xuICBmb250LXNpemU6IHZhcigtLXR5cGVCb2R5U21hbGxTaXplKTtcbn1cblxuLnNob3BwYWJsZS1oZXJvX19wb3BvdmVyLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuXG4uc2hvcHBhYmxlLWhlcm9fX3BvcG92ZXItYm9keSAuZ3JpZC1wcm9kdWN0X19wcmljZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBnYXA6IDVweDtcbn1cblxuLnNob3BwYWJsZS1oZXJvX19wb3BvdmVyLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jb2xvckJvcmRlcik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiA2cHggMTJweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4uc2hvcHBhYmxlLWhlcm9fX3BvcG92ZXItbGluayB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUJvZHlFeHRyYVNtYWxsU2l6ZSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG5cbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xuICB9XG5cbiAgJiAuaWNvbi1jaGV2cm9uLXJpZ2h0IHtcbiAgICB3aWR0aDogLjc1ZW07XG4gICAgaGVpZ2h0OiAuNzVlbTtcbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmtpdC1zaG9wcGFibGUtaGVybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsO1xuICB9XG5cbiAgLnNob3BwYWJsZS1oZXJvX19idG4ge1xuICAgIHBhZGRpbmc6IDZweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgd2lkdGg6IDMwcHg7XG4gIH1cblxuICAuc2hvcHBhYmxlLWhlcm9fX2J0biBzdmcge1xuICAgIGhlaWdodDogMThweDtcbiAgICB3aWR0aDogMThweDtcbiAgfVxufVxuIiwiOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgIGNvbG9yOiBpbmhlcml0O1xuICAgb3BhY2l0eTogMC41O1xufVxuXG46LW1vei1wbGFjZWhvbGRlciB7XG4gICBjb2xvcjogaW5oZXJpdDtcbiAgIG9wYWNpdHk6IDAuNTtcbn1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICBjb2xvcjogaW5oZXJpdDtcbiAgIG9wYWNpdHk6IDAuNTtcbn1cblxuOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgY29sb3I6IGluaGVyaXQ7XG4gICBvcGFjaXR5OiAxO1xufVxuXG5pbnB1dCxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkaXNhYmxlZEdyZXk7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJpbWFnZVwiXSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuIiwiJHNoYXJlQnV0dG9uSGVpZ2h0OiAxOHB4O1xuXG4uc29jaWFsLXNoYXJpbmcge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG5cbiAgJiAuaWNvbiB7XG4gICAgaGVpZ2h0OiAkc2hhcmVCdXR0b25IZWlnaHQ7XG4gICAgd2lkdGg6ICRzaGFyZUJ1dHRvbkhlaWdodDtcbiAgfVxufVxuXG4uc29jaWFsLXNoYXJpbmdfX2xpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW46IDAgMThweCAwIDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgIG1hcmdpbjogMCAwIDAgMThweDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLnNvY2lhbC1zaGFyaW5nX190aXRsZSB7XG4gIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAzcHg7XG5cbiAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgcGFkZGluZy1yaWdodDogM3B4O1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxufVxuIiwiLmdyaWQtc2VhcmNoIHtcbiAgbWFyZ2luLWJvdHRvbTogJGd1dHRlcjtcbn1cblxuLmdyaWQtc2VhcmNoX19wcm9kdWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ncmlkLXNlYXJjaF9fcGFnZS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yQm9keUxpZ2h0RGltKTtcbiAgcGFkZGluZzogMjBweDtcbiAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckJvZHlNZWRpdW1EaW0pO1xuICB9XG59XG5cbi5ncmlkLXNlYXJjaF9fcGFnZS1jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmdyaWQtc2VhcmNoX19wYWdlLWNvbnRlbnQgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi5ncmlkLXNlYXJjaF9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxufVxuIiwiLmluZGV4LXNlY3Rpb24ge1xuICBtYXJnaW46ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbCAwO1xufVxuXG4uaW5kZXgtc2VjdGlvbi0tc21hbGwge1xuICBtYXJnaW46IGNhbGMoJGd1dHRlciAqIDAuNikgMDtcbn1cblxuLmluZGV4LXNlY3Rpb24gKyAuaW5kZXgtc2VjdGlvbixcbi5pbmRleC1zZWN0aW9uICsgLmluZGV4LXNlY3Rpb24tLWhpZGRlbixcbi5tYWluLWNvbnRlbnQgKyAuaW5kZXgtc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5pbmRleC1zZWN0aW9uLS1mbHVzaCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNlY3Rpb24tLWRpdmlkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbn1cblxuLmluZGV4LXNlY3Rpb24tLWZhcSB7XG4gIG1hcmdpbi1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbn1cblxuLmluZGV4LXNlY3Rpb24tLWZhcSB7XG4gIG1hcmdpbi1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcbn1cblxuLm5ld3NsZXR0ZXItc2VjdGlvbiB7XG4gIHBhZGRpbmc6ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbCAwO1xufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uLS13aXRoLWRpdmlkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLypIaWRlIGZvb3RlciBzZWN0aW9ucyBvbiAvY2hhbGxlbmdlIHBhZ2UqL1xuLnRlbXBsYXRlLWNoYWxsYW5nZSAuaW5kZXgtc2VjdGlvbi0tZm9vdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnRlc3RpbW9uaWFscy1zZWN0aW9uIHtcbiAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMC44NSkgMDtcbn1cblxuLnRlc3RpbW9uaWFscy1zZWN0aW9uLS13aXRoLWRpdmlkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICRjb2xvckJvcmRlcjtcbn1cblxuLypMYXJnZSBzY3JlZW4gc2VjdGlvbiBzcGFjaW5nKi9cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmluZGV4LXNlY3Rpb24ge1xuICAgIG1hcmdpbjogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlIDA7XG4gIH1cblxuICAuaW5kZXgtc2VjdGlvbi0tc21hbGwge1xuICAgIG1hcmdpbjogJGd1dHRlciAwO1xuICB9XG5cbiAgLnNlY3Rpb24tLWRpdmlkZXIge1xuICAgIHBhZGRpbmctdG9wOiAkaW5kZXhTZWN0aW9uTWFyZ2luTGFyZ2U7XG4gIH1cblxuICAuaW5kZXgtc2VjdGlvbi0tZmFxIHtcbiAgICBtYXJnaW46ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZSAwIGNhbGMoJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlIC8gMik7XG4gIH1cblxuICAubmV3c2xldHRlci1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAkaW5kZXhTZWN0aW9uTWFyZ2luTGFyZ2UgMDtcbiAgfVxuXG4gIC50ZXN0aW1vbmlhbHMtc2VjdGlvbiB7XG4gICAgcGFkZGluZzogY2FsYygkZ3V0dGVyICogMi41KSAwO1xuICB9XG59XG5cbi5wYWdlLWJsb2Nrcy0tZmx1c2ggLnBhZ2Utd2lkdGgge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucGFnZS1ibG9ja3MgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAmIC5pbmRleC1zZWN0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PSBGZWF0dXJlZCByb3cgc2VjdGlvbiA9PT09PT09PT09PT09PT09Ki9cbi5mZWF0dXJlLXJvdy13cmFwcGVyIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5mZWF0dXJlLXJvdyB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgQG1lZGlhICgtLXdpZGVzY3JlZW4pIHtcbiAgICBtYXJnaW46IDAgNiU7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG5AbWVkaWEgKC0tbWVkaXVtLWRvd24pIHtcbiAgLmZlYXR1cmUtcm93LS1zbWFsbC1ub25lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZmVhdHVyZS1yb3dfX2l0ZW0ge1xuICBmbGV4OiAwIDEgNTclO1xuICBtYXJnaW46IDAgYXV0bztcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5mZWF0dXJlLXJvd19faXRlbS0tb3ZlcmxhcC1pbWFnZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMCAxNXB4O1xuICBtYXJnaW46IDAgMCAwIC0zMHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAmID4gKiB7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDMwcHgsIDMwcHgpO1xuXG4gICAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwcHgsIDUwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYgc3ZnIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJvZHk7XG4gIH1cbn1cblxuLmZlYXR1cmUtcm93X19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3JkZXI6IDE7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG9yZGVyOiAyO1xuICB9XG59XG5cbi5mZWF0dXJlLXJvd19fdGV4dCB7XG4gIG1pbi13aWR0aDogNDMlO1xuICBmbGV4OiAwIDEgNDMlO1xuICBwYWRkaW5nOiAwO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZzogMzBweCAyMHB4IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IC8qYWx3YXlzIGxhc3QgZWxlbWVudCBvbiBtb2JpbGUqL1xuICB9XG5cbiAgJiAucnRlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAmIC5idG4ge1xuICAgIG1hcmdpbi10b3A6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmZlYXR1cmUtcm93X190ZXh0LS1sZWZ0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoJGd1dHRlciAqIDIpO1xuICB9XG5cbiAgLmZlYXR1cmUtcm93X190ZXh0LS1yaWdodCB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygkZ3V0dGVyICogMik7XG4gIH1cbn1cbiIsIi5wcm9kdWN0LWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAmIGhyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLnByb2R1Y3QtYmxvY2stLXRhYiArIC5wcm9kdWN0LWJsb2NrLS10YWIge1xuICBtYXJnaW4tdG9wOiAtMjVweDtcbn1cblxuLnByb2R1Y3QtYmxvY2stLXNhbGVzLXBvaW50ICsgLnByb2R1Y3QtYmxvY2stLXNhbGVzLXBvaW50IHtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG59XG5cbi5wcm9kdWN0LWJsb2NrLS1oZWFkZXIgKyAucHJvZHVjdC1ibG9jay0tcHJpY2Uge1xuICBtYXJnaW4tdG9wOiAtMjBweDtcbn1cblxuLnRoZW1lLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnNpemUtY2hhcnRfX3N0YW5kYWxvbmUgLnRvb2wtdGlwLXRyaWdnZXJfX3RpdGxlIHtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXR5cGVVcHBlcmNhc2VTcGFjaW5nKTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cbiIsIi5zbGlkZXNob3ctd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLypQYXVzZSBidXR0b24gKGZvY3VzYWJsZSBieSBrZXlib2FyZCBvbmx5KSovXG4uc2xpZGVzaG93X19wYXVzZTpmb2N1cyB7XG4gIGNsaXA6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xuICBwYWRkaW5nOiAxMHB4O1xuICB6LWluZGV4OiAkemluZGV4U2tpcFRvQ29udGVudDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICBAbmVzdCAudmlkZW8taXMtcGxheWluZyAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zbGlkZXNob3dfX3BhdXNlLXN0b3Age1xuICBkaXNwbGF5OiBibG9jaztcblxuICBAbmVzdCAuaXMtcGF1c2VkICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNsaWRlc2hvd19fcGF1c2UtcGxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLmlzLXBhdXNlZCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc2xpZGVzaG93X19zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBuZXN0IC5mbGlja2l0eS1zbGlkZXIgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIiR6LWluZGV4LWhlcm8taW1hZ2U6IDE7XG4kei1pbmRleC1oZXJvLXZpZGVvOiAyO1xuJHotaW5kZXgtaGVyby1pbWFnZS1vdmVybGF5OiAzO1xuJHotaW5kZXgtaGVyby10ZXh0OiA0O1xuJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uQW1vdW50OiAyMDBweDtcbiRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkOiAwLjVzO1xuXG4uaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogJGNvbG9yTGFyZ2VJbWFnZUJnO1xufVxuXG4uaGVyb19fbWVkaWEtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZXJvX19pbWFnZS13cmFwcGVyLFxuLmhlcm9fX21lZGlhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpiZWZvcmUge1xuICAgIEBtaXhpbiBvdmVybGF5ICR6LWluZGV4LWhlcm8taW1hZ2Utb3ZlcmxheTtcbiAgICBAbWl4aW4gaGVyb1NjcmltO1xuXG4gICAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uaGVyb19faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6ICR6LWluZGV4LWhlcm8taW1hZ2U7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uaGVyb19fbWVkaWEge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xuICB6LWluZGV4OiAkei1pbmRleC1oZXJvLWltYWdlO1xufVxuXG4uaGVyb19faW1hZ2Utd3JhcHBlci0tbm8tb3ZlcmxheTpiZWZvcmUge1xuICBjb250ZW50OiBub25lO1xufVxuXG4uaGVyb19fbWVkaWEgaWZyYW1lLFxuLmhlcm9fX21lZGlhIHZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuXG4gIEBuZXN0IC52aWRlby1wYXJlbnQtc2VjdGlvbi5sb2FkaW5nICYge1xuICAgIG9wYWNpdHk6IDAuMDE7IC8qc25lYWt5IHdheSB0byBhdm9pZCB0YWxraW5nIHRvIGFuIGludmlzaWJsZSBZVCBpZnJhbWUqL1xuICB9XG5cbiAgQG5lc3QgLnZpZGVvLXBhcmVudC1zZWN0aW9uLmxvYWRlZCAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IC8qZml4ZXMgc2FmYXJpIGFuaW1hdGlvbiBjb25mbGljdCovXG4gIH1cbn1cblxuLypNUDQgc2l6aW5nKi9cbi5oZXJvX19tZWRpYSB2aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGNvdmVyXCI7XG59XG5cbi8qWW91VHViZSBpZnJhbWVzIG5lZWQgbW9yZSBzcGVjaWZpYyBzaXppbmcqL1xuLmhlcm9fX21lZGlhIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMzAwJTtcbiAgbGVmdDogLTEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcblxuICAvKlRoaXMgbWluLXdpZHRoIG1heSBuZWVkIHRvIGNoYW5nZSBzbGlnaHRseSBkZXBlbmRpbmcgb25cbiAgZW1iZWRkZWQgdmlkZW8gZGltZW5zaW9ucy4gQ2FuIGRvIG9uIGEgcGVyLXNob3AgYmFzaXMqL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTQwcHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IC0xMDAlO1xuICB9XG59XG5cbi8qTW9iaWxlIG9ubHkgdmltZW8gcGxheSBidXR0b24qL1xuLnZpbWVvLW1vYmlsZS10cmlnZ2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi10b3A6IDkwcHg7XG5cbiAgQG5lc3QgLmhlcm9fX3RleHQtY29udGVudCAmIHtcbiAgICBib3R0b206IDEyMCU7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG4uaGVyb19fc2xpZGUtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IGNhbGMoJHotaW5kZXgtaGVyby10ZXh0ICsgMSk7XG5cbiAgJjpob3ZlciB7XG4gICAgJiB+IC5oZXJvX190ZXh0LXdyYXAgLmJ0bjpub3QoLmJ0bi0tc2Vjb25kYXJ5KTpub3QoLmJ0bi0tdGVydGlhcnkpOm5vdCguYnRuLS1pbnZlcnNlKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3JCdG5QcmltYXJ5TGlnaHQ7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjI1cztcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGFuaW1hdGlvbjogc2hpbmUgMC43NXMgY3ViaWMtYmV6aWVyKDAuMDEsIDAuNTYsIDEsIDEpO1xuICAgICAgfVxuXG4gICAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmhlcm9fX3RleHQtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjb2xvcjogJGNvbG9ySGVyb1RleHQ7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICYgLnBhZ2Utd2lkdGgge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uaGVyb19fdGV4dC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKSAwO1xuICB6LWluZGV4OiAkei1pbmRleC1oZXJvLXRleHQ7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAxLjUpIDA7XG4gIH1cblxuICBAbmVzdCBbZGF0YS1kb3RzPVwidHJ1ZVwiXSAmIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuXG4uaGVyb19fdGV4dC1zaGFkb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAmOmJlZm9yZSB7XG4gICAgQG1peGluIG92ZXJsYXk7XG4gICAgQG1peGluIGhlcm9SYWRpYWw7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cblxuLmhlcm9fX3RvcC1zdWJ0aXRsZSB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUhlcm9TdWJ0aXRsZVNpemUpO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5oZXJvX190aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uaGVyb19fc3VidGV4dCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi5oZXJvX19zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUhlcm9UZXh0U2l6ZSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uaGVyb19fbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgLypJRSBjbGlja2FiaWxpdHkgZml4Ki9cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG5lc3QgLnZpZGVvLWludGVyYWN0YWJsZSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luOiA0cHggM3B4IDJweCAwO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICBtYXJnaW4tbGVmdDogJGJ1dHRvblNrZXc7XG4gICAgfVxuICB9XG5cbiAgJiAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcblxuICAgIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nYW5nbGVkJ10gJiB7XG4gICAgICBtYXJnaW4tbGVmdDogJGJ1dHRvblNrZXc7XG4gICAgfVxuICB9XG5cbiAgLypQbGF5IGljb24gaW4gYnV0dG9uKi9cbiAgJiAuYnRuIC5pY29uLXBsYXkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0ycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAvKkV4dHJhIHBhZGRpbmcgaW4gY2FzZSBpbnNpZGUgYW5pbWF0aW9uIGNyb3BwZXIqL1xuICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J2FuZ2xlZCddICYge1xuICAgICYgLmFuaW1hdGlvbi1jcm9wcGVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi8qVGV4dCBhbGlnbm1lbnQqL1xuLmhlcm9fX3RleHQtY29udGVudCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cbiAgJiAuaGVyb19fbGluayB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygkZ3V0dGVyIC8gNCk7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG4gIH1cblxuICAmLmhvcml6b250YWwtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gICYuaG9yaXpvbnRhbC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICYuaG9yaXpvbnRhbC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICAmLnZlcnRpY2FsLWNlbnRlciB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gICYudmVydGljYWwtYm90dG9tIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG59XG5cbi8qVG9wIHBhZGRpbmcgYWRqdXN0bWVudCB0byBhY2NvdW50IGZvciBvdmVybGFpZCBoZWFkZXIqL1xuLm92ZXJsYWlkLWhlYWRlciAuaW5kZXgtc2VjdGlvbi0taGVybzpmaXJzdC1jaGlsZCAuaGVyb19fdGV4dC1jb250ZW50LnZlcnRpY2FsLWNlbnRlciB7XG4gIHBhZGRpbmctdG9wOiA1MHB4O1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IDkwcHg7XG4gIH1cbn1cblxuLmhlcm8tLTQ1MHB4IHtcbiAgaGVpZ2h0OiBjYWxjKDQ1MHB4ICogMC42NSk7XG59XG4uaGVyby0tNTUwcHgge1xuICBoZWlnaHQ6IGNhbGMoNTUwcHggKiAwLjY1KTtcbn1cbi5oZXJvLS02NTBweCB7XG4gIGhlaWdodDogY2FsYyg2NTBweCAqIDAuNjUpO1xufVxuLmhlcm8tLTc1MHB4IHtcbiAgaGVpZ2h0OiBjYWxjKDc1MHB4ICogMC42NSk7XG59XG4uaGVyby0tMTAwdmgge1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5oZXJvLS1uYXR1cmFsW2RhdGEtbmF0dXJhbF0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgLmhlcm8tLTQ1MHB4IHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICB9XG4gIC5oZXJvLS01NTBweCB7XG4gICAgaGVpZ2h0OiA1NTBweDtcbiAgfVxuICAuaGVyby0tNjUwcHgge1xuICAgIGhlaWdodDogNjUwcHg7XG4gIH1cbiAgLmhlcm8tLTc1MHB4IHtcbiAgICBoZWlnaHQ6IDc1MHB4O1xuICB9XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAuaGVyby0tbW9iaWxlLS1hdXRvW2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJ0cnVlXCJdIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuaGVyby0tbmF0dXJhbFtkYXRhLW1vYmlsZS1uYXR1cmFsPVwiZmFsc2VcIl0ge1xuICAgIGhlaWdodDogNTAwcHg7IC8qZm9yY2UgaXQganVzdCBpbiB0aGlzIGNhc2UqL1xuICB9XG4gIC5oZXJvLS1tb2JpbGUtLTI1MHB4W2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJmYWxzZVwiXSB7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgfVxuICAuaGVyby0tbW9iaWxlLS0zMDBweFtkYXRhLW1vYmlsZS1uYXR1cmFsPVwiZmFsc2VcIl0ge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbiAgLmhlcm8tLW1vYmlsZS0tNDAwcHhbZGF0YS1tb2JpbGUtbmF0dXJhbD1cImZhbHNlXCJdIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG4gIC5oZXJvLS1tb2JpbGUtLTUwMHB4W2RhdGEtbW9iaWxlLW5hdHVyYWw9XCJmYWxzZVwiXSB7XG4gICAgaGVpZ2h0OiA1MDBweDtcbiAgfVxuICAuaGVyby0tbW9iaWxlLS0xMDB2aFtkYXRhLW1vYmlsZS1uYXR1cmFsPVwiZmFsc2VcIl0ge1xuICAgIGhlaWdodDogOTB2aDtcbiAgfVxufVxuXG4vKkhlcm8gYW5kIHNsaWRlc2hvdyBzaGFyZWQgc3RhcnRpbmcgYW5pbWF0aW9uKi9cbi5zbGlkZXNob3dfX3NsaWRlLFxuW2RhdGEtYW9zPVwiaGVyb19fYW5pbWF0aW9uXCJdIHtcbiAgLypEZWZhdWx0IHBvc2l0aW9uaW5nIHByZS1hbmltYXRpb24qL1xuICAmIC5hbmltYXRpb24tY3JvcHBlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICYgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTVweCk7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8qT3ZlcnJpZGUgbGF6eWxvYWQgc3R5bGUqL1xuICAmOm5vdCguYW5pbWF0ZS1vdXQpIC5oZXJvX19pbWFnZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgJiAuaGVyb19fbGluayAuYnRuIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cblxuICAvKkRpc2FibGUgYW5pbWF0aW9ucyB3aGVuIG5vdCBhY3RpdmUgb3IgZmFkaW5nIG91dCovXG4gICYgLmhlcm9fX2ltYWdlLXdyYXBwZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2xpZGVzaG93SW1hZ2VBbmltYXRpb25BbW91bnQpO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKkhlcm8gYW5kIHNsaWRlc2hvdyBzaGFyZWQgYWN0aXZlIGFuaW1hdGlvbiAqL1xuLmxvYWRlZCAuc2xpZGVzaG93X19zbGlkZS5pcy1zZWxlY3RlZCxcbltkYXRhLWFvcz1cImhlcm9fX2FuaW1hdGlvblwiXS5sb2FkZWQge1xuICAmIC5hbmltYXRpb24tY3JvcHBlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIH1cblxuICAmIC5oZXJvX190aXRsZSAuYW5pbWF0aW9uLWNvbnRlbnRzIHtcbiAgICBhbmltYXRpb246IDAuOHMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDAuM3MgZm9yd2FyZHM7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHJpc2UtdXA7XG4gIH1cblxuICAmIC5oZXJvX190b3Atc3VidGl0bGUgLmFuaW1hdGlvbi1jb250ZW50cyxcbiAgJiAuaGVyb19fc3VidGl0bGUgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgYW5pbWF0aW9uOiAxcyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMC43cyBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tbmFtZTogcmlzZS11cDtcbiAgfVxuXG4gICYgLmhlcm9fX2xpbmsgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYgLmhlcm9fX2xpbmsgLmJ0biB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLWluIDJzIGVhc2UgMS4zcyBmb3J3YXJkcztcbiAgfVxuXG4gICYgLmhlcm9fX2xpbmsgLmJ0bjpudGgtY2hpbGQoMikge1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAycyBlYXNlIDEuNnMgZm9yd2FyZHM7XG4gIH1cblxuICAmIC5oZXJvX19tZWRpYSxcbiAgJiAuaGVyb19faW1hZ2UsXG4gICYgLmhlcm9fX2ltYWdlLS1zdmcge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gICYgLmhlcm9fX2ltYWdlLXdyYXBwZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCk7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIGNhbGMoJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uU3BlZWQgKyAwLjJzKSBlYXNlLCBvcGFjaXR5IGNhbGMoJHNsaWRlc2hvd0ltYWdlQW5pbWF0aW9uU3BlZWQgKyAwLjJzKSBlYXNlO1xuICB9XG59XG5cbi8qV2hlbiBub3QgaW4gYSBzbGlkZXNob3csIHNpbXBsZSBmYWRlIGFuaW1hdGlvbiovXG5bZGF0YS1hb3M9XCJoZXJvX19hbmltYXRpb25cIl0ubG9hZGVkIHtcbiAgJiAuaGVyb19faW1hZ2Utd3JhcHBlciB7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSBjYWxjKCRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkICsgMC4ycykgZWFzZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5uby1qcyB7XG4gICYgLmhlcm9fX2ltYWdlLFxuICAmIC5oZXJvX19pbWFnZS13cmFwcGVyIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi8qU2xpZGVzaG93IGZhZGluZyBvdXQgYW5pbWF0aW9uKi9cbi5zbGlkZXNob3dfX3NsaWRlLmFuaW1hdGUtb3V0IHtcbiAgJiAuYW5pbWF0aW9uLWNyb3BwZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gICYgLmhlcm9fX2ltYWdlLXdyYXBwZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2xpZGVzaG93SW1hZ2VBbmltYXRpb25BbW91bnQpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkc2xpZGVzaG93SW1hZ2VBbmltYXRpb25TcGVlZCBlYXNlLWluIDAuMDVzLCBvcGFjaXR5ICRzbGlkZXNob3dJbWFnZUFuaW1hdGlvblNwZWVkIGVhc2UtaW4gMC4wNXM7XG4gIH1cblxuICAmIC5oZXJvX19saW5rIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi5jb2xsZWN0aW9uLWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyICogMC43NSk7IC8qc2FtZSBhcyBwYWdlLWNvbnRlbnQqL1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygkZ3V0dGVyICogMS41KTtcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1maWx0ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6ICRncmlkLWd1dHRlci1zbWFsbDtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgQG5lc3QgLnN0aWNreS1oZWFkZXIgJiB7XG4gICAgICB0b3A6IDg2cHg7IC8qdXBkYXRlZCB3aXRoIEpTIGJhc2VkIG9uIHN0aWNreSBoZWFkZXIgaGVpZ2h0Ki9cbiAgICB9XG4gIH1cblxuICAmIHNlbGVjdCxcbiAgJiAuYnRuIHtcbiAgICBoZWlnaHQ6IDQ0cHg7IC8qbWFnaWMgbnVtYmVyLCBqdXN0IGluIGZpbHRlciBtZW51Ki9cbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cblxuICAmIHNlbGVjdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmIC5idG4ge1xuICAgIHBhZGRpbmc6IDAgMjBweDsgLypiZWNhdXNlIGl0IGhhcyBhIGZpeGVkIGhlaWdodCovXG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAmIC5pY29uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogLTJweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24tZmlsdGVyX19pdGVtIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xufVxuXG4uY29sbGVjdGlvbi1maWx0ZXIgLmJ0bjpub3QoLmJ0bi0tdGVydGlhcnktYWN0aXZlKSxcbi5jb2xsZWN0aW9uLWZpbHRlcl9fc29ydC1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xufVxuXG4uY29sbGVjdGlvbi1maWx0ZXJfX2l0ZW0tLWRyYXdlciB7XG4gIGZsZXg6IDAgMSA0OCU7XG59XG5cbi5jb2xsZWN0aW9uLWZpbHRlcl9faXRlbS0tY291bnQge1xuICBmbGV4OiAxIDEgMTcwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29sbGVjdGlvbi1maWx0ZXJfX2l0ZW0tLXNvcnQge1xuICBmbGV4OiAwIDEgNDglO1xufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmNvbGxlY3Rpb24tZmlsdGVyX19pdGVtLS1jb3VudCB7XG4gICAgb3JkZXI6IDM7XG4gICAgZmxleDogMSAxIDEwMCU7XG4gIH1cbn1cblxuLmltYWdlLWZpbHRlcl9fd3JhcHBlciB1bCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG4gIGdhcDogMTBweDtcblxuICBsYWJlbCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjphY3RpdmUsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yQm9yZGVyKTtcbiAgICB9XG4gIH1cblxuICAudGFnX190ZXh0IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIH1cbn1cblxuLmltYWdlLWZpbHRlcl9fd3JhcHBlciAudGFnLS1hY3RpdmUgbGFiZWwge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHkpO1xufVxuXG4uaW1hZ2UtZmlsdGVyX19pbWFnZS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ydGUuY29sbGVjdGlvbl9fZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgKiAxLjUpO1xufVxuXG4kY29sbGVjdGlvbkhlcm9MYXJnZTogNDIwcHg7XG4kY29sbGVjdGlvbkhlcm9TbWFsbDogMjUwcHg7XG4uY29sbGVjdGlvbi1oZXJvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY29sbGVjdGlvbkhlcm9TbWFsbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogJGNvbG9yTGFyZ2VJbWFnZUJnO1xuICBib3gtc2l6aW5nOiBpbml0aWFsO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBoZWlnaHQ6ICRjb2xsZWN0aW9uSGVyb0xhcmdlO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWhlcm8tLXNtYWxsIHtcbiAgaGVpZ2h0OiAyMDBweDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1oZXJvLS1sYXJnZSB7XG4gIGhlaWdodDogMzUwcHg7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGhlaWdodDogNTUwcHg7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taGVyb19fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpIDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBhZGRpbmc6ICRndXR0ZXIgMDtcbiAgfVxuXG4gIEBuZXN0IFtkYXRhLXR5cGVfaGVhZGVyc19hbGlnbl90ZXh0PVwiY2VudGVyXCJdICYge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAvKkFjY291bnQgZm9yIG92ZXJsYXllZCBoZWFkZXIvdG9vbGJhciovXG4gIEBuZXN0IC5vdmVybGFpZC1oZWFkZXIgJiB7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gICAgfVxuICB9XG5cbiAgJiAucGFnZS13aWR0aCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgQG1peGluIG92ZXJsYXk7XG4gICAgQG1peGluIGhlcm9TY3JpbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYgLnNlY3Rpb24taGVhZGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGFuaW1hdGlvbjogZmFkZS1pbiAwLjVzIGZvcndhcmRzIDFzO1xuXG4gICAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qQXBwbHkgYW5pbWF0aW9ucyovXG4uY29sbGVjdGlvbi1oZXJvX19pbWFnZSB7XG4gIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB0cmFuc2l0aW9uOiBub25lOyAvKmZpeGVzIHNhZmFyaSBhbmltYXRpb24gY29uZmxpY3QqL1xuXG4gIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIG9wYWNpdHk6IDFcbiAgfVxufVxuXG4vKlVubG9hZCBhamF4IHN0eWxlcyovXG4uY29sbGVjdGlvbi1ncmlkX193cmFwcGVyLnVubG9hZCB7XG4gIG1pbi1oZWlnaHQ6IDE4MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG9wYWNpdHk6IDAuMjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuXG4gICYgW2RhdGEtc2VjdGlvbi10eXBlPVwiY29sbGVjdGlvbi1ncmlkXCJdIHtcbiAgICBhbmltYXRpb246IGdyaWQtcHJvZHVjdF9fbG9hZGluZyAxLjVzIGVhc2UgaW5maW5pdGUgMS41cztcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1zaWRlYmFyIHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuZ3JpZF9faXRlbS0tc2lkZWJhciB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEwcHg7IC8qdXBkYXRlZCB3aXRoIHN0aWNreSBoZWFkZXIgSlMqL1xuICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuXG4uY29sbGVjdGlvbi1zaWRlYmFyX19ncm91cCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yRHJhd2VyQm9yZGVyO1xuICBwYWRkaW5nLXRvcDogNXB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgJiAuY29sbGFwc2libGUtY29udGVudF9faW5uZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIH1cbn1cblxuLypSZW1vdmUgdG9wIGJvcmRlciBmcm9tIGZpcnN0IGZpbHRlciBncm91cCovXG4uZmlsdGVyLWZvcm0gZGl2OmZpcnN0LW9mLXR5cGUgLmNvbGxlY3Rpb24tc2lkZWJhcl9fZ3JvdXAge1xuICBib3JkZXItdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbiIsIi5zaXRlLWhlYWRlcl9fbG9nbyAubG9nby0taGFzLWludmVydGVkIHtcbiAgQG5lc3QgLmlzLWxpZ2h0ICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnNpdGUtaGVhZGVyX19sb2dvIC5sb2dvLS1pbnZlcnRlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQG5lc3QgLmlzLWxpZ2h0ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nbyB7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5zaXRlLWhlYWRlcl9fbG9nbyBhLFxuLmhlYWRlci1sb2dvIGEge1xuICBjb2xvcjogJGNvbG9yTmF2VGV4dDtcblxuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIEBuZXN0IC5pcy1saWdodCAmIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlci0tcGFzc3dvcmQge1xuICBjb2xvcjogdmFyKC0tY29sb3JOYXZUZXh0KTtcblxuICAmIGEsXG4gICYgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yTmF2VGV4dCk7XG4gIH1cblxuICBAbmVzdCAuaXMtbGlnaHQgJiB7XG4gICAgY29sb3I6ICRjb2xvclN0aWNreU5hdkxpbmtzO1xuXG4gICAgJiBhLFxuICAgICYgYTpob3ZlciB7XG4gICAgICBjb2xvcjogJGNvbG9yU3RpY2t5TmF2TGlua3M7XG4gICAgfVxuICB9XG59XG5cbi5zaXRlLW5hdl9fZHJvcGRvd24tbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmLnNpdGUtbmF2X19kcm9wZG93bi1saW5rLS1oYXMtY2hpbGRyZW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cblxuICBAbmVzdCAubWVnYW1lbnUgJiB7XG4gICAgcGFkZGluZzogNHB4IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuIiwiJHRhZ0FjdGl2ZUljb25TaXplOiAxNnB4O1xuJHRhZ0FjdGl2ZUljb25TaXplQWN0aXZlOiAxMHB4O1xuXG4udGFnLWxpc3RfX2hlYWRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50YWctbGlzdCAudGFnLWxpc3Qge1xuICBtYXJnaW4tbGVmdDogY2FsYygkZ3V0dGVyIC8gMik7XG59XG5cbi50YWctbGlzdCBhLFxuLnRhZy1saXN0IGxhYmVsIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnRhZy1saXN0IGxhYmVsOmhvdmVyLFxuLnRhZzpmb2N1cy13aXRoaW4gbGFiZWwge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi50YWctLWFjdGl2ZSA+IGEsXG4udGFnLS1hY3RpdmUgPiBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi50YWctbGlzdC0tYWN0aXZlLXRhZ3M6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGFnLWxpc3QtLWNoZWNrYm94ZXMge1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuXG4gICYgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDJweCk7XG4gICAgZm9udC1zaXplOiBtYXgoY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMnB4KSwgMTRweCk7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgaGVpZ2h0OiAkdGFnQWN0aXZlSWNvblNpemU7XG4gICAgICB3aWR0aDogJHRhZ0FjdGl2ZUljb25TaXplO1xuICAgIH1cbiAgfVxufVxuXG4udGFnLWxpc3QtLWNoZWNrYm94ZXMgLnRhZy0tYWN0aXZlIGE6YWZ0ZXIsXG4udGFnLS1hY3RpdmUgLnRhZ19fY2hlY2tib3g6YWZ0ZXIsXG5pbnB1dDpjaGVja2VkIH4gLnRhZ19fY2hlY2tib3g6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbn1cblxuLypSZW1vdmUgdGFncyAodG9wIG9mIHNpZGViYXIpKi9cbi50YWctLXJlbW92ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmIGEge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAvKlggaWNvbiBzaXRzIG92ZXIgYnV0dG9uLCBub3QgaW4gaXQqL1xuICAmIC5pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgfVxufVxuXG4vKkNvbG9yIHN3YXRjaGVzIGluIHNpZGViYXIqL1xuLnRhZy1saXN0LS1zd2F0Y2hlcyB7XG4gIG1hcmdpbi10b3A6IDJweDtcbiAgbWFyZ2luLWxlZnQ6IC0ycHg7XG5cbiAgQG5lc3QgLmRyYXdlciAmIHtcbiAgICBtYXJnaW4tbGVmdDogLTJweDtcbiAgfVxuXG4gICYgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG5sYWJlbC50YWdfX2NoZWNrYm94LXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4udGFnX19jaGVja2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuXG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvckJvcmRlcik7XG4gICAgaGVpZ2h0OiAkdGFnQWN0aXZlSWNvblNpemU7XG4gICAgd2lkdGg6ICR0YWdBY3RpdmVJY29uU2l6ZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGhlaWdodDogJHRhZ0FjdGl2ZUljb25TaXplQWN0aXZlO1xuICAgIHdpZHRoOiAkdGFnQWN0aXZlSWNvblNpemVBY3RpdmU7XG4gICAgbGVmdDogM3B4O1xuICB9XG59XG5cbi50YWdfX2lucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbn1cbiIsIiRsYWJlbC1ib3R0b20tbWFyZ2luOiAxMnB4O1xuXG4udmFyaWFudC1pbnB1dC13cmFwIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAgMCAtJGxhYmVsLWJvdHRvbS1tYXJnaW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmIGlucHV0IHtcbiAgICBAbWl4aW4gdmlzdWFsbHlIaWRkZW47XG4gIH1cblxuICAmIGxhYmVsIHtcbiAgICBAbWl4aW4gYmFzZUZvbnRTdGFjaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgcGFkZGluZzogN3B4IDE1cHggN3B4O1xuICAgIG1hcmdpbjogMCA4cHggJGxhYmVsLWJvdHRvbS1tYXJnaW4gMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkY29sb3JCb3JkZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIEBuZXN0IFtkYXRhLWNlbnRlci10ZXh0PVwiY2VudGVyXCJdICYge1xuICAgICAgbWFyZ2luOiAwIDRweCAkbGFiZWwtYm90dG9tLW1hcmdpbjtcbiAgICB9XG5cbiAgICAmLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkY29sb3JCb3JkZXI7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZDphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cbiAgfVxuXG4gICYgaW5wdXRbdHlwZT0ncmFkaW8nXTpmb2N1cyArIGxhYmVsIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yVGV4dEJvZHlBbHBoYTAwNSk7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRjb2xvclRleHRCb2R5O1xuICB9XG5cbiAgJiBpbnB1dFt0eXBlPSdyYWRpbyddOmNoZWNrZWQgKyBsYWJlbCB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi52YXJpYW50LWlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIC8qRmlyZWZveCBidWcgZml4Ki9cbiAgQG5lc3Qgc2VsZWN0ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi52YXJpYW50LXdyYXBwZXIgKyAudmFyaWFudC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMjVweDtcbn1cblxuLm5vLWpzIC52YXJpYW50LXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udmFyaWFudC13cmFwcGVyLS1kcm9wZG93biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udmFyaWFudF9fbGFiZWxbZm9yXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi52YXJpYW50X19sYWJlbC1pbmZvIHtcbiAgLyp1bmRvIGFjY2VudCBzdGFjayBzdHlsZXMqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG4iLCIuZ3JpZC1wcm9kdWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBAbmVzdCAuZ3JpZC1vdmVyZmxvdy13cmFwcGVyICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICBAbmVzdCBodG1sW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4uZ3JpZF9faXRlbS1pbWFnZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ3JpZC1wcm9kdWN0X190aXRsZS0taGVhZGluZyB7XG4gIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDJweCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5bZGF0YS10eXBlX3Byb2R1Y3RfY2FwaXRhbGl6ZT1cInRydWVcIl0ge1xuICAmIC5ncmlkLXByb2R1Y3RfX3RpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpIC0gMnB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHlwZVVwcGVyY2FzZVNwYWNpbmcpO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBmb250LXNpemU6IHZhcigtLXR5cGVCb2R5U2l6ZU1vYmlsZSk7XG4gICAgfVxuICB9XG59XG5cbi8qIFByZXZlbnQgbG9uZyB3b3JkcyBmcm9tIGJyZWFraW5nIG91dCBvZiBhdmFpbGFibGUgc3BhY2UgKi9cbi5ncmlkLXByb2R1Y3RfX3RpdGxlIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgaHlwaGVuczogYXV0bztcbn1cblxuLmdyaWQtcHJvZHVjdF9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4uZ3JpZC1wcm9kdWN0X19saW5rLS1pbmxpbmUge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICYgLmdyaWQtcHJvZHVjdF9faW1hZ2UtbWFzayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgJiAuZ3JpZF9faW1hZ2UtcmF0aW8ge1xuICAgIHdpZHRoOiA4MHB4O1xuICB9XG5cbiAgJiAuZ3JpZC1wcm9kdWN0X19tZXRhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5ncmlkLXByb2R1Y3RfX2ltYWdlLW1hc2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5ncmlkLXByb2R1Y3RfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cblxuLmdyaWQtcHJvZHVjdF9fc2Vjb25kYXJ5LWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xcHg7XG4gIGxlZnQ6IC0xcHg7XG4gIHJpZ2h0OiAtMXB4O1xuICBib3R0b206IC0xcHg7XG4gIG9wYWNpdHk6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG5cbiAgJiBpbWcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLXByb2R1Y3RfX2NvbnRlbnQ6aG92ZXIgJiB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLWluIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgQG5lc3QgLnN1cHBvcnRzLXRvdWNoICYge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fY29sb3ItaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgYW5pbWF0aW9uOiBmYWRlLWluIDAuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB9XG59XG5cbi5ncmlkLXByb2R1Y3RfX21ldGEge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTBweCAwIDZweCAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tdHlwZUJhc2VsaW5lSGVpZ2h0TWludXMwMSk7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgQG5lc3QgLnNtYWxsLS1ncmlkLS1mbHVzaCAmIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi5ncmlkLXByb2R1Y3RfX3ZlbmRvciB7XG4gIEBtaXhpbiBhY2NlbnRGb250U3RhY2s7XG4gIEBtaXhpbiBhY2NlbnRGb250U21hbGxTaXplO1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5cbi5ncmlkLXByb2R1Y3RfX3ByaWNlIHtcbiAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcbiAgY29sb3I6ICRjb2xvclByaWNlO1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5ncmlkLXByb2R1Y3RfX3ByaWNlLS1vcmlnaW5hbCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLmdyaWQtcHJvZHVjdF9fcHJpY2UtLXNhdmluZ3Mge1xuICBjb2xvcjogJGNvbG9yVGV4dFNhdmluZ3M7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5cbi5ncmlkLXByb2R1Y3RfX3RhZyB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICogMC42NSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDZweCA1cHggNnB4IDdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQnRuUHJpbWFyeTtcbiAgY29sb3I6ICRjb2xvckJ0blByaW1hcnlUZXh0O1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZTtcblxuICAmLmdyaWQtcHJvZHVjdF9fdGFnLS1zb2xkLW91dCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yQm9keTtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIH1cblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgKiAwLjg1KTtcbiAgICBwYWRkaW5nOiA3cHggN3B4IDdweCA5cHg7XG4gIH1cbn1cblxuLmdyaWQtcHJvZHVjdF9fdGFnLS1zYWxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yU2FsZVRhZztcbiAgY29sb3I6ICRjb2xvclNhbGVUYWdUZXh0O1xufVxuXG4ucXVpY2stcHJvZHVjdF9fYnRuIHtcbiAgQG1peGluIGJhc2VTbWFsbEZvbnRTdGFjaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwcHg7XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiAxMHB4O1xuICB6LWluZGV4OiAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCdG5QcmltYXJ5O1xuICBjb2xvcjogJGNvbG9yQnRuUHJpbWFyeVRleHQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDhweCA1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNXB4KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLCB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1vdXQsIGJhY2tncm91bmQgMC40cyBlYXNlO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG5cbiAgQG5lc3QgLm5vLWpzICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAbmVzdCAuZ3JpZC1wcm9kdWN0X19jb250ZW50OmhvdmVyICYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZSwgdHJhbnNmb3JtIDAuMjVzIGVhc2Utb3V0O1xuICB9XG5cbiAgQG5lc3QgLnN1cHBvcnRzLXRvdWNoICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAbmVzdCAuZ3JpZC1wcm9kdWN0OmZvY3VzLXdpdGhpbiAmIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UsIHRyYW5zZm9ybSAwLjI1cyBlYXNlLW91dDtcbiAgfVxuXG4gICYuYnRuLS1ub3QtcmVhZHkge1xuICAgIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKk1vYmlsZSBob3Jpem9udGFsIG92ZXJmbG93IGdyaWQqL1xuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5ncmlkLW92ZXJmbG93LXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgICYgLmdyaWQge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJiAuZ3JpZF9faXRlbSB7XG4gICAgICB3aWR0aDogMzl2dztcbiAgICAgIGZsZXg6IDAgMCAzOXZ3O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICRwYWdlLXdpZHRoLWd1dHRlci1zbWFsbDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgLmdyaWRfX2l0ZW0sXG4gICAgJiAuZ3JpZC1wcm9kdWN0X19wcmljZSB7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgfVxuICB9XG5cbiAgW2RhdGEtYW9zPVwib3ZlcmZsb3dfX2FuaW1hdGlvblwiXSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMHZ3KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyBjdWJpYy1iZXppZXIoLjI1LCAuNDYsIC40NSwgLjk0KTtcblxuICAgICYuYW9zLWFuaW1hdGUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZ3JpZC1wcm9kdWN0X19jb2xvcnMge1xuICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBsaW5lLWhlaWdodDogJGNvbG9yU3dhdGNoQ29sbGVjdGlvblNpemU7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGxpbmUtaGVpZ2h0OiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZUxhcmdlO1xuICB9XG5cbiAgQG5lc3QgW2RhdGEtY2VudGVyLXRleHQ9XCJjZW50ZXJcIl0gJiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gICYgKyAuZ3JpZC1wcm9kdWN0X19jb2xvcnMge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxufVxuIiwiLnNhbGVzLXBvaW50cyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMjVweCAwO1xuXG4gIEBuZXN0IC5xdWljay1hZGQtbW9kYWwgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2FsZXMtcG9pbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmIC5pY29uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgIEBuZXN0IFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5zYWxlcy1wb2ludCAuaWNvbi1hbmQtdGV4dCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbiIsIi8qSW52ZW50b3J5IGluZGljYXRvciovXG5Aa2V5ZnJhbWVzIGludmVudG9yeS1wdWxzZSB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyLjUpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmljb24tLWludmVudG9yeSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICB3aWR0aDogOXB4O1xuICAgIGhlaWdodDogOXB4O1xuICAgIGJhY2tncm91bmQ6ICM1NGM2M2E7XG4gICAgYm9yZGVyLXJhZGl1czogOXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBtYXJnaW46IDhweDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBhbmltYXRpb246IGludmVudG9yeS1wdWxzZSAycyBsaW5lYXIgaW5maW5pdGU7XG4gIH1cblxuICBAbmVzdCAuaW52ZW50b3J5LS1sb3cgJiB7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRjRBRjI5O1xuICAgIH1cbiAgfVxufVxuIiwiLmNvbG9yLXN3YXRjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDAgNHB4IDRweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHdpZHRoOiA0MHB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGNvbG9yQm9yZGVyO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMgZWFzZTtcblxuICBAbmVzdCBbZGF0YS1zd2F0Y2hfc3R5bGU9J3JvdW5kJ10gJiB7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgYm9yZGVyOiAzcHggc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb2R5O1xuXG4gICAgLypUcnkgYW5kIGF2b2lkIG92ZXItcGl4ZWxhdGVkIGJvcmRlcnMgb24gc29tZSBzY3JlZW5zKi9cbiAgICBAbmVzdCBbZGF0YS1zd2F0Y2hfc3R5bGU9J3JvdW5kJ10gJiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgICB0b3A6IC0xcHg7XG4gICAgICBsZWZ0OiAtMXB4O1xuICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICBib3R0b206IC0xcHg7XG4gICAgfVxuICB9XG59XG5cbi8qUHJvZHVjdCBncmlkIGRpcmVjdCB2YXJpYW50IGxpbmtzIGFuZFxuc2lkZWJhciBjb2xvciBzd2F0Y2hlcyovXG5hLmNvbG9yLXN3YXRjaDpob3Zlcixcbi50YWc6bm90KC50YWctLWFjdGl2ZSkgbGFiZWw6aG92ZXIgLmNvbG9yLXN3YXRjaDpob3Zlcixcbi50YWc6Zm9jdXMtd2l0aGluIC5jb2xvci1zd2F0Y2gge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGNvbG9yVGV4dEJvZHk7XG59XG5cbi50YWctLWFjdGl2ZSAuY29sb3Itc3dhdGNoIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xufVxuXG4uY29sb3Itc3dhdGNoLS1zbWFsbCB7XG4gIHdpZHRoOiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZTtcbiAgaGVpZ2h0OiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgd2lkdGg6ICRjb2xvclN3YXRjaENvbGxlY3Rpb25TaXplTGFyZ2U7XG4gICAgaGVpZ2h0OiAkY29sb3JTd2F0Y2hDb2xsZWN0aW9uU2l6ZUxhcmdlO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcblxuICAgIEBuZXN0IFtkYXRhLXN3YXRjaF9zdHlsZT0ncm91bmQnXSAmIHtcbiAgICAgIGJvcmRlci13aWR0aDogM3B4O1xuICAgIH1cbiAgfVxufVxuXG4udGFnLS1zd2F0Y2gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgJiA+IGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi50YWctLXNob3ctbGFiZWwge1xuICB3aWR0aDogMTAwJTtcblxuICBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgLnRhZ19fdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICB9XG59XG5cbi5jb2xvci1zd2F0Y2gtLWZpbHRlciB7XG4gIHdpZHRoOiAkY29sb3JTd2F0Y2hTaWRlYmFyU2l6ZTtcbiAgaGVpZ2h0OiAkY29sb3JTd2F0Y2hTaWRlYmFyU2l6ZTtcbn1cblxuLnRhZy0tYWN0aXZlIC5jb2xvci1zd2F0Y2gtLWZpbHRlcjpob3ZlcjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbiIsIi5jb2xsZWN0aW9uLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItc21hbGw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlcjtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLS1uby1ndXR0ZXJzICYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmOmhvdmVyIC5jb2xsZWN0aW9uLWltYWdlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMsMS4wMyk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZTtcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uY29sbGVjdGlvbi1pdGVtOm5vdCguY29sbGVjdGlvbi1pdGVtLS1iZWxvdykge1xuICAmOmFmdGVyIHtcbiAgICBAbWl4aW4gb3ZlcmxheTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JHcmlkT3ZlcmxheTtcbiAgICBvcGFjaXR5OiB2YXIoLS1jb2xvckdyaWRPdmVybGF5T3BhY2l0eSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjhzIGVhc2U7XG4gIH1cblxuICAmOmhvdmVyOmFmdGVyIHtcbiAgICBvcGFjaXR5OiBjYWxjKHZhcigtLWNvbG9yR3JpZE92ZXJsYXlPcGFjaXR5KSArIDAuMTUpO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuXG4gICYgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW0tLWJlbG93IGltZyB7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbi5jb2xsZWN0aW9uLWltYWdlLS1wbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDE7XG5cbiAgJiBzdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taW1hZ2UtLXNxdWFyZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xufVxuXG4uY29sbGVjdGlvbi1pbWFnZS0tbGFuZHNjYXBlIHtcbiAgcGFkZGluZy10b3A6IDc1JTtcbn1cblxuLmNvbGxlY3Rpb24taW1hZ2UtLXBvcnRyYWl0IHtcbiAgcGFkZGluZy10b3A6IDE1MCU7XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDI7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUNvbGxlY3Rpb25UaXRsZU1vYmlsZSk7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUNvbGxlY3Rpb25UaXRsZSk7XG5cbiAgICAvKlNsaWdodGx5IHNtYWxsZXIgYmFzZSB3aGVuIDUtYWNyb3NzIG9uIGRlc2t0b3AqL1xuICAgIEBuZXN0IC5tZWRpdW0tdXAtLW9uZS1maWZ0aCAmIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCBbZGF0YS10eXBlX3Byb2R1Y3RfY2FwaXRhbGl6ZT1cInRydWVcIl0gJiB7XG4gICAgJiBzcGFuIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLXR5cGVVcHBlcmNhc2VTcGFjaW5nKTtcbiAgICB9XG4gIH1cblxuICBAbmVzdCAuY29sbGVjdGlvbi1pdGVtLS1iZWxvdyAmIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cblxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWhlYWRpbmcge1xuICBAbWl4aW4gaGVhZGluZ0ZvbnRTdGFjaztcbn1cblxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLW92ZXJsYWlkLFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLW92ZXJsYWlkLWJveCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEwcHg7XG4gIHJpZ2h0OiAxMHB4O1xufVxuXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tb3ZlcmxhaWQge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1zaGFkb3c6IDAgMCA1MHB4IHJnYmEoMCwwLDAsMSk7XG59XG5cbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1vdmVybGFpZC1ib3gge1xuICAmID4gc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxufVxuXG4vKlRpdGxlIGFsaWdubWVudCovXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tdG9wLWNlbnRlcixcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1jZW50ZXIsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tYm90dG9tLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLXRvcC1yaWdodFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLXJpZ2h0LFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLWJvdHRvbS1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tbGVmdCxcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1jZW50ZXIsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tcmlnaHQge1xuICAmW2NsYXNzKj1cImNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLW92ZXJsYWlkXCJdIHtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbn1cblxuLypUb3AgYWxpZ24gc29tZSB0aXRsZXMqL1xuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLXRvcC1sZWZ0LFxuLmNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLXRvcC1jZW50ZXIsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tdG9wLXJpZ2h0IHtcbiAgJltjbGFzcyo9XCJjb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1vdmVybGFpZFwiXSB7XG4gICAgdG9wOiAxMHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgdG9wOiAxOHB4O1xuICAgIH1cbiAgfVxufVxuXG4vKkJvdHRvbSBhbGlnbiBzb21lIHRpdGxlcyovXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tYm90dG9tLWxlZnQsXG4uY29sbGVjdGlvbi1pdGVtX190aXRsZS0tYm90dG9tLWNlbnRlcixcbi5jb2xsZWN0aW9uLWl0ZW1fX3RpdGxlLS1ib3R0b20tcmlnaHQge1xuICAmW2NsYXNzKj1cImNvbGxlY3Rpb24taXRlbV9fdGl0bGUtLW92ZXJsYWlkXCJdIHtcbiAgICBib3R0b206IDEwcHg7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBib3R0b206IDE4cHg7XG4gICAgfVxuICB9XG59XG4iLCIuY3VzdG9tLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogLSRncmlkLWd1dHRlcjtcbiAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1ndXR0ZXI7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSRncmlkLWd1dHRlci1zbWFsbDtcbiAgICBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci1zbWFsbDtcbiAgfVxufVxuXG4uY3VzdG9tX19pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlcjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXI7XG4gIG1heC13aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci1zbWFsbDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItc21hbGw7XG5cbiAgICAmLnNtYWxsLS1vbmUtaGFsZiB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uY3VzdG9tX19pdGVtLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jdXN0b21fX2l0ZW0taW5uZXItLXZpZGVvLFxuLmN1c3RvbV9faXRlbS1pbm5lci0taHRtbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY3VzdG9tX19pdGVtLWlubmVyLS1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY3VzdG9tX19pdGVtLWlubmVyLS1odG1sIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmN1c3RvbV9faXRlbS1pbm5lci0tcGxhY2Vob2xkZXItaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFsaWduLS10b3AtbWlkZGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWxpZ24tLXRvcC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uYWxpZ24tLW1pZGRsZS1sZWZ0IHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG4uYWxpZ24tLWNlbnRlciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWxpZ24tLW1pZGRsZS1yaWdodCB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5hbGlnbi0tYm90dG9tLWxlZnQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLS1ib3R0b20tbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmFsaWduLS1ib3R0b20tcmlnaHQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4iLCIuYXJ0aWNsZV9fZ3JpZC1pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDE3cHg7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cblxuICAmIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmFydGljbGVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVCYXNlU2l6ZSkgKyAycHgpO1xufVxuXG4uYXJ0aWNsZV9fZGF0ZSB7XG4gIEBtaXhpbiBiYXNlRXh0cmFTbWFsbEZvbnRTdGFjaztcbiAgbWFyZ2luLWJvdHRvbTogM3B4O1xuXG4gIEBuZXN0IC5zZWN0aW9uLWhlYWRlciAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4uYXJ0aWNsZV9fYXV0aG9yIHtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBAbWl4aW4gYmFzZUV4dHJhU21hbGxGb250U3RhY2s7XG59XG5cbi5hcnRpY2xlX19ncmlkLW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBAbWl4aW4gYmFzZVRleHRDZW50ZXI7XG4gIH1cbn1cblxuLmFydGljbGVfX2V4Y2VycHQge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuIiwiLmxvZ28tYmFyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAtJGd1dHRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmxvZ28tYmFyX19pdGVtIHtcbiAgZmxleDogMCAxIDExMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgY2FsYygkZ3V0dGVyIC8gMikgY2FsYygkZ3V0dGVyIC8gMS41KTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZmxleDogMCAxIDE2MHB4O1xuICAgIG1hcmdpbjogMCBjYWxjKCRndXR0ZXIgLyAxLjUpICRndXR0ZXI7XG4gIH1cbn1cblxuLmxvZ28tYmFyX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5sb2dvLWJhcl9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0gLmxvZ28tYmFyX19pdGVtIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbSB7XG4gIGFuaW1hdGlvbjogZmFkZS1pbiAwLjVzIGVhc2UgMHMgZm9yd2FyZHM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCgyKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDMpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoNCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCg1KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC44cztcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDYpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjBzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoNykge1xuICBhbmltYXRpb24tZGVsYXk6IDEuMnNcbn1cbltkYXRhLWFvcz1cImxvZ29fX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAubG9nby1iYXJfX2l0ZW06bnRoLWNoaWxkKDgpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAxLjRzO1xufVxuW2RhdGEtYW9zPVwibG9nb19fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5sb2dvLWJhcl9faXRlbTpudGgtY2hpbGQoOSkge1xuICBhbmltYXRpb24tZGVsYXk6IDEuNnM7XG59XG5bZGF0YS1hb3M9XCJsb2dvX19hbmltYXRpb25cIl0uYW9zLWFuaW1hdGUgLmxvZ28tYmFyX19pdGVtOm50aC1jaGlsZCgxMCkge1xuICBhbmltYXRpb24tZGVsYXk6IDEuOHM7XG59XG4iLCIuYmFja2dyb3VuZC1tZWRpYS10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogJGNvbG9yTGFyZ2VJbWFnZUJnO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB6LWluZGV4OiAwO1xufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIHdpZHRoOiA0MDAlO1xuICAgIGxlZnQ6IC0xNTAlO1xuXG4gICAgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IC0xNTAlO1xuICAgIH1cbiAgfVxuXG4gICYgaWZyYW1lLFxuICAmIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgaGVpZ2h0OiAxMjAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbGVmdDogLTE1MCU7XG4gICAgICBoZWlnaHQ6IDE1MCU7XG4gICAgICB3aWR0aDogNDAwJTtcbiAgICB9XG5cbiAgICAvKlRoaXMgbWluLXdpZHRoIG1heSBuZWVkIHRvIGNoYW5nZSBzbGlnaHRseSBkZXBlbmRpbmcgb25cbiAgICBlbWJlZGRlZCB2aWRlbyBkaW1lbnNpb25zLiBDYW4gZG8gb24gYSBwZXItc2hvcCBiYXNpcyovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE0MHB4KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMzAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB0b3A6IC0xMDAlO1xuICAgIH1cbiAgfVxufVxuXG4udmlkZW8taW50ZXJhY3RhYmxlIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgJiBpZnJhbWUsXG4gICYgdmlkZW8ge1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG59XG5cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2lubmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbGlnbmVyIHtcbiAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgKiAyKTtcbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fdGV4dCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tdHlwZUhlcm9TdWJ0aXRsZVNpemUpO1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICBwYWRkaW5nOiAkZ3V0dGVyO1xuICB3aWR0aDogMzgwcHg7XG5cbiAgQG5lc3QgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tbGVmdCAmIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgQG5lc3QgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tcmlnaHQgJiB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fdGV4dC0tZnJhbWVkIHtcbiAgYm9yZGVyOiAkdGV4dEZyYW1lTWFyZ2luU21hbGwgc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9keTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBib3JkZXItd2lkdGg6ICR0ZXh0RnJhbWVNYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4uYmFja2dyb3VuZC1tZWRpYS10ZXh0X190ZXh0IC5idG4ge1xuICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS1sZWZ0IC5hbmltYXRpb24tY3JvcHBlciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS1yaWdodCAuYW5pbWF0aW9uLWNyb3BwZXIge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4vKlNlY3Rpb24gaGVpZ2h0Ki9cbi5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dF9fY29udGFpbmVyLFxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMjQwcHg7XG5cbiAgICBAbmVzdCAucHJvbW8tdmlkZW8gJiB7XG4gICAgICBoZWlnaHQ6IDU1MHB4O1xuICAgIH1cbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbGlnbmVyIHtcbiAgICBtYXJnaW46IC02cHggNnB4IDZweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X190ZXh0IHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAwLjc1KTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0LmxvYWRpbmcge1xuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAxMTdweDtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS00NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTQ1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNDUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS01NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTU1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNTUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA1NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS02NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTY1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNjUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA2NTBweDtcbiAgfVxuICAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19zcGFjZXIuYmFja2dyb3VuZC1tZWRpYS10ZXh0LS03NTAsXG4gIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHQtLTc1MCxcbiAgLmJhY2tncm91bmQtbWVkaWEtdGV4dC0tNzUwIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgICBtaW4taGVpZ2h0OiA3NTBweDtcbiAgfVxufVxuXG5bZGF0YS1hb3M9XCJiYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2FuaW1hdGlvblwiXSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbWFnZSxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2ltYWdlIHN2ZyxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX3ZpZGVvIHtcbiAgYW5pbWF0aW9uOiB6b29tLWZhZGUgMi41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG4gIHRyYW5zaXRpb246IG5vbmU7IC8qZml4ZXMgc2FmYXJpIGFuaW1hdGlvbiBjb25mbGljdCovXG5cbiAgQG5lc3QgW2RhdGEtZGlzYWJsZS1hbmltYXRpb25zPVwidHJ1ZVwiXSAmIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5bZGF0YS1hb3M9XCJiYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2FuaW1hdGlvblwiXS5hb3MtYW5pbWF0ZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X19pbWFnZSxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2ltYWdlIHN2ZyxcbltkYXRhLWFvcz1cImJhY2tncm91bmQtbWVkaWEtdGV4dF9fYW5pbWF0aW9uXCJdLmxvYWRlZC5hb3MtYW5pbWF0ZSAuYmFja2dyb3VuZC1tZWRpYS10ZXh0X192aWRlbyB7XG4gIGFuaW1hdGlvbjogem9vbS1mYWRlIDIuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICB0cmFuc2l0aW9uOiBub25lOyAvKmZpeGVzIHNhZmFyaSBhbmltYXRpb24gY29uZmxpY3QqL1xuXG4gIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgW2RhdGEtYW9zPVwiYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbmltYXRpb25cIl0gLmJhY2tncm91bmQtbWVkaWEtdGV4dF9faW5uZXIgLmFuaW1hdGlvbi1jb250ZW50cyB7XG4gICAgb3BhY2l0eTogMDtcblxuICAgIEBuZXN0IC5uby1qcyAmIHtcbiAgICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG5cbiAgW2RhdGEtYW9zPVwiYmFja2dyb3VuZC1tZWRpYS10ZXh0X19hbmltYXRpb25cIl0ubG9hZGVkLmFvcy1hbmltYXRlIC5iYWNrZ3JvdW5kLW1lZGlhLXRleHRfX2lubmVyIC5hbmltYXRpb24tY29udGVudHMge1xuICAgIGFuaW1hdGlvbjogcmlzZS11cCAxcyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMC41cyBmb3J3YXJkcztcblxuICAgIEBuZXN0IFtkYXRhLWRpc2FibGUtYW5pbWF0aW9ucz1cInRydWVcIl0gJiB7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLnF1b3RlLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbn1cblxuLnRlc3RpbW9uaWFsLXN0YXJzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMmVtO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4udGVzdGltb25pYWxzLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogNDBweCAwIDU1cHg7XG4gIHdpZHRoOiAzMyU7XG5cbiAgLypIaWRlIGFsbCBidXQgZmlyc3Qgc2xpZGUgdG8gcHJldmVudCBwYWdlIHJlZmxvd3MgcHJpb3IgdG8gaW5pdCovXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG5lc3QgLmZsaWNraXR5LXNsaWRlciAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJiAudGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlLCBib3gtc2hhZG93IDAuNXMgZWFzZTtcbiAgfVxuXG4gICYuaXMtc2VsZWN0ZWQgLnRlc3RpbW9uaWFscy1zbGlkZXJfX3RleHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsMCwwLDAuMSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgJiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmIC50ZXN0aW1vbmlhbHMtc2xpZGVyX190ZXh0IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44Nik7XG4gICAgfVxuXG4gICAgJi5pcy1zZWxlY3RlZCAudGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgfVxufVxuXG4udGVzdGltb25pYWxzLXNsaWRlcl9fdGV4dCB7XG4gIG1hcmdpbjogMCAzMHB4O1xuICBwYWRkaW5nOiAzMHB4IGNhbGMoJGd1dHRlciAvIDIpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvckJvZHkpO1xuICBjb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keSk7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiBjaXRlIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDFweCk7XG4gICAgfVxuICB9XG5cbiAgJiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyA0KTtcblxuICAgICYgKyBjaXRlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi50ZXN0aW1vbmlhbHNfX2luZm8ge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDFweCk7XG59XG5cbiR0ZXN0aW1vbmlhbEltYWdlU2l6ZTogMTQycHg7XG4kdGVzdGltb25pYWxJbWFnZVNpemVSb3VuZDogNjVweDtcblxuLnRlc3RpbW9uaWFsLWltYWdlIHtcbiAgbWF4LXdpZHRoOiAkdGVzdGltb25pYWxJbWFnZVNpemU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG5cbiAgQG5lc3QgLnRleHQtY2VudGVyICYge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gICYgLmltYWdlLXdyYXAge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi50ZXN0aW1vbmlhbC1pbWFnZS0tcm91bmQge1xuICB3aWR0aDogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG4gIGhlaWdodDogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogJHRlc3RpbW9uaWFsSW1hZ2VTaXplUm91bmQ7XG5cbiAgLypmaXggYW5pbWF0aW9uIGJ1ZyBpbiBTYWZhcmkqL1xuICAmIGltZyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiAkdGVzdGltb25pYWxJbWFnZVNpemVSb3VuZDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFscy1zZWN0aW9uIC5mbGlja2l0eS1wYWdlLWRvdHMge1xuICBib3R0b206IDA7XG59XG4iLCIuYW5ub3VuY2VtZW50LWJhciB7XG4gIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS10eXBlQmFzZVNpemUpICogMC43NSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnQ7XG4gIGNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnRUZXh0O1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvckJvcmRlcjsgLypvbmx5IHdoZW4gc2FtZSBiZyBhcyBib2R5Ki9cblxuICAmIGEsXG4gICYgYTp2aXNpdGVkIHtcbiAgICBjb2xvcjogJGNvbG9yQW5ub3VuY2VtZW50VGV4dDtcblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUge1xuICAgICAgY29sb3I6ICRjb2xvckFubm91bmNlbWVudFRleHQ7XG4gICAgfVxuICB9XG59XG5cbi5oYXMtc3RpY2t5LWFubm91bmNlbWVudC1iYXItLWJlbG93IC5hbm5vdW5jZW1lbnQtYmFyIHtcbiAgei1pbmRleDogY2FsYygkei1pbmRleC1oZWFkZXItc2VhcmNoICsgMSk7XG59XG5cbi5qcy1kcmF3ZXItb3BlbiAuaGFzLXN0aWNreS1hbm5vdW5jZW1lbnQtYmFyLS1iZWxvdyAuYW5ub3VuY2VtZW50LWJhciB7XG4gIHotaW5kZXg6ICR6LWluZGV4LXN0dWNrLWhlYWRlcjtcbn1cblxuLmFubm91bmNlbWVudC1iYXItLXN0aWNreSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogY2FsYygkei1pbmRleC1oZWFkZXItc2VhcmNoICsgMSk7XG5cbiAgQG5lc3QgLmpzLWRyYXdlci1vcGVuOm5vdCguanMtZHJhd2VyLW9wZW4tLXNlYXJjaCkgJiB7XG4gICAgei1pbmRleDogJHotaW5kZXgtc3R1Y2staGVhZGVyO1xuICB9XG5cbiAgQG5lc3QgLmhhcy1zdGlja3ktYW5ub3VuY2VtZW50LWJhci0tYmVsb3cgJiB7XG4gICAgei1pbmRleDogY2FsYygkei1pbmRleC1oZWFkZXItc2VhcmNoICsgMSk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuNHMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgfVxuXG4gIEBuZXN0IC5qcy1kcmF3ZXItb3Blbjpub3QoLmpzLWRyYXdlci1vcGVuLS1zZWFyY2gpIC5oYXMtc3RpY2t5LWFubm91bmNlbWVudC1iYXItLWJlbG93ICYge1xuICAgIHotaW5kZXg6ICR6LWluZGV4LXN0dWNrLWhlYWRlcjtcbiAgfVxufVxuXG4uYW5ub3VuY2VtZW50LXNsaWRlcl9fc2xpZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAgNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFubm91bmNlbWVudC1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAkY29sb3JBbm5vdW5jZW1lbnRUZXh0O1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogJGNvbG9yQW5ub3VuY2VtZW50VGV4dDtcbiAgfVxufVxuXG4uYW5ub3VuY2VtZW50LXRleHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10eXBlVXBwZXJjYXNlU3BhY2luZyk7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5hbm5vdW5jZW1lbnQtbGluay10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgQG5lc3QgLmFubm91bmNlbWVudC1saW5rICYge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgJiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vKkRpc2FibGUgc3RpY2t5IGFubm91bmNlbWVudCBiYXIgb24gc2hvcnQgYW5kIHdpZGUgc2NyZWVucyovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3MDBweCkgYW5kIChtYXgtaGVpZ2h0OiA1NTBweCkge1xuICAuYW5ub3VuY2VtZW50LWJhci0tc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLyoxIHNsaWRlIGF0IGEgdGltZSwgaW5saW5lIHRleHQqL1xuICAuYW5ub3VuY2VtZW50LXNsaWRlcltkYXRhLWNvbXBhY3Q9XCJ0cnVlXCJdIHtcbiAgICAmIC5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgICYgLmFubm91bmNlbWVudC10ZXh0LFxuICAgICYgLmFubm91bmNlbWVudC1saW5rLXRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cblxuICAgICYgLmFubm91bmNlbWVudC10ZXh0ICsgLmFubm91bmNlbWVudC1saW5rLXRleHQge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgfVxuXG4gICAgJi5mbGlja2l0eS1lbmFibGVkIC5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAvKlVwIHRvIDMgYmVzaWRlIGVhY2hvdGhlciovXG4gIC5hbm5vdW5jZW1lbnQtc2xpZGVyW2RhdGEtY29tcGFjdD1cImZhbHNlXCJdIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJiAuYW5ub3VuY2VtZW50LXNsaWRlcl9fc2xpZGUge1xuICAgICAgZmxleDogMSAxIDMzJTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5hbm5vdW5jZW1lbnQtc2xpZGVyIHtcbiAgICAmIC5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5mbGlja2l0eS1lbmFibGVkIC5hbm5vdW5jZW1lbnQtc2xpZGVyX19zbGlkZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi5zaG9waWZ5LWNoYWxsZW5nZV9fY29udGFpbmVyIHtcbiAgcGFkZGluZzogMzBweCAyMnB4O1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZzogMTIwcHggMDtcbiAgfVxufVxuXG4ubmV3c2xldHRlciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDUyMHB4O1xufVxuXG4ubmV3c2xldHRlci1zZWN0aW9uIC5lcnJvcnMge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDUyMHB4O1xufVxuXG4ubW9kYWwgLm5ld3NsZXR0ZXIgLmgxIHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuICB9XG59XG5cbi5tb2RhbCAubmV3c2xldHRlciAuaW1hZ2Utd3JhcCB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDQpO1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuLm1vZGFsIC5uZXdzbGV0dGVyIC50ZXh0LWNsb3NlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5uZXdzbGV0dGVyX19pbnB1dC1ncm91cCB7XG4gIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gIG1heC13aWR0aDogNDAwcHg7XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5uZXdzbGV0dGVyX19pbnB1dCB7XG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxuXG4gICY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQG1lZGlhICgtLXNtYWxsKSB7XG4gIC5mb3JtX19zdWJtaXQtLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmZvcm1fX3N1Ym1pdC0tc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgLmZvcm1fX3N1Ym1pdC0tbGFyZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmZvcm1fX3N1Ym1pdC0tc21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuW2RhdGEtaGFzLWltYWdlXSAubW9kYWxfX2Nsb3NlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiA1cHg7XG4gIHRvcDogMTBweDtcbiAgcmlnaHQ6MTBweDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuW2RhdGEtc2VjdGlvbi10eXBlPVwibmV3c2xldHRlci1wb3B1cFwiXSB7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIGJvdHRvbTogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAmIC5tb2RhbF9faW5uZXIge1xuICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcbiAgICB9XG5cbiAgICAmLm1vZGFsLS1zcXVhcmUgLm1vZGFsX19jbG9zZSB7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgJiAuaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gICYgLnJ0ZSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiAucG9wdXAtY3RhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJiAubm90ZS0tc3VjY2VzcyB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyX19pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxuXG4gICYgLnNvY2lhbC1pY29ucyBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBwYWRkaW5nOiA1cHg7XG5cbiAgfVxufVxuXG4ubW9kYWxfX2NlbnRlcmVkLWNvbnRlbnQubmV3c2xldHRlci0taGFzLWltYWdlIHtcbiAgcGFkZGluZzogMDtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgJiAubmV3c2xldHRlci1wb3B1cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgIG1pbi13aWR0aDogNjUwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG5cbiAgICAmLm5ld3NsZXR0ZXItcG9wdXAtLWltYWdlLXJldmVyc2VkIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cblxuICAmIC5mb3JtX19zdWJtaXQtLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJiAuZm9ybV9fc3VibWl0LS1zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyLXBvcHVwX19pbWFnZS13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmIC5uZXdzbGV0dGVyLXBvcHVwX19pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYgLm5ld3NsZXR0ZXItcG9wdXBfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZzogMCAwIDIwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxubmV3c2xldHRlci1yZW1pbmRlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvckJ0blByaW1hcnlUZXh0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCdG5QcmltYXJ5KTtcblxuICAmLm1vZGFsLS1zcXVhcmUgLm1vZGFsX19jbG9zZSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yQnRuUHJpbWFyeVRleHQpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tY29sb3JCdG5QcmltYXJ5VGV4dCk7XG4gICAgICBvcGFjaXR5OiA1MCU7XG4gICAgfVxuICB9XG5cbiAgJiAubmV3c2xldHRlci1yZW1pbmRlcl9fbWVzc2FnZSB7XG4gICAgZm9udC1zaXplOiBjYWxjKHZhcigtLXR5cGVIZWFkZXJTaXplKSowLjUpO1xuICB9XG59XG5cbi5mb3JtX19zdWJtaXQtLXNtYWxsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG4iLCIubWFwLXNlY3Rpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNjUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICB9XG5cbiAgJiAucGFnZS13aWR0aCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5tYXAtc2VjdGlvbi0tbG9hZC1lcnJvciB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLm1hcC1vbmJvYXJkaW5nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5tYXAtc2VjdGlvbl9fb3ZlcmxheS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5tYXAtc2VjdGlvbl9fb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBwYWRkaW5nOiAkZ3V0dGVyO1xuICBtYXJnaW46ICRndXR0ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtICRndXR0ZXIqMik7XG4gIHotaW5kZXg6IDM7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAkZ3V0dGVyO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHdpZHRoOiAzMCU7XG4gIH1cblxuICBAbmVzdCAubWFwLXNlY3Rpb24tLWxvYWQtZXJyb3IgJiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLm1hcC1zZWN0aW9uX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAyO1xufVxuXG4vKk9wdGljYWxseSBjZW50ZXIgbWFwIGluIHZpc2libGUgYXJlYSB3aXRoXG5leHRlbmRlZCBoZWlnaHQvd2lkdGhzIGFuZCBuZWdhdGl2ZSBtYXJnaW5zKi9cbi5tYXAtc2VjdGlvbl9fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IC8qYXBpIHdpbGwgaW5saW5lIHJlbGF0aXZlIHNvbWV0aW1lcyovXG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTUwJTtcbiAgbWFyZ2luLWJvdHRvbTogLTUwJTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgd2lkdGg6IDEzMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMCAtMzAlIDAgMDtcbiAgfVxuXG4gIEBuZXN0IC5kaXNwbGF5LW1hcC0tZmFsc2UuYmctaW1hZ2UtLXRydWUgJiAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgICYgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbltkYXRhLWFvcz1cIm1hcC1zZWN0aW9uX19hbmltYXRpb25cIl0gLm1hcC1zZWN0aW9uX19jb250YWluZXIge1xuICBhbmltYXRpb246IGZhZGUtb3V0IDAuNXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICBvcGFjaXR5OiAwO1xufVxuXG5bZGF0YS1hb3M9XCJtYXAtc2VjdGlvbl9fYW5pbWF0aW9uXCJdLmFvcy1hbmltYXRlIC5tYXAtc2VjdGlvbl9fY29udGFpbmVyIHtcbiAgYW5pbWF0aW9uOiB6b29tLWZhZGUgMi41cyBjdWJpYy1iZXppZXIoMC4yNiwgMC41NCwgMC4zMiwgMSkgMHMgZm9yd2FyZHM7XG59XG4iLCIuaW1hZ2Utcm93IHtcbiAgQG1peGluIGNsZWFyZml4O1xufVxuXG4uaW1hZ2Utcm93X19wbGFjZWhvbGRlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMuMzMlO1xuXG4gIEBuZXN0IC5pbWFnZS1yb3ctLWd1dHRlcnMgJiB7XG4gICAgd2lkdGg6IDMyJTtcbiAgICBtYXJnaW46IDAgMSUgMiU7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5pbWFnZS1yb3dfX2ltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGZsb2F0OiBsZWZ0O1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cblxuLypab29tIGN1cnNvciB1bmxlc3MgaW5zaWRlIGEgbGluayovXG5bZGF0YS16b29tPVwidHJ1ZVwiXSB7XG4gICYgLmltYWdlLXJvd19faW1hZ2UgLmpzLXBob3Rvc3dpcGVfX3pvb20ge1xuICAgIGN1cnNvcjogem9vbS1pbjtcbiAgfVxuXG4gICYgLmltYWdlLXJvd19faW1hZ2UgYSAuanMtcGhvdG9zd2lwZV9fem9vbSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4iLCIuaW1hZ2UtZ3JpZC0tc3BhY2UtdG9wIHtcbiAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy10b3A6ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4uaW1hZ2UtZ3JpZC0tc3BhY2UtYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5TbWFsbDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4vKiBHcmlkIGxheW91dCAqL1xuLmltYWdlLWdyaWRfX2dyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogdmFyKC0taW1hZ2UtZ3JpZC1nYXAsIDIwcHgpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5pbWFnZS1ncmlkX19pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZmxleDogMSAxIGNhbGMoNTAlIC0gdmFyKC0taW1hZ2UtZ3JpZC1nYXAsIDIwcHgpKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZmxleDogMSAxIGNhbGMoMTAwJSAvIHZhcigtLWltYWdlLWdyaWQtY29sdW1ucywgNSkgLSB2YXIoLS1pbWFnZS1ncmlkLWdhcCwgMjBweCkpO1xuICB9XG59XG5cbi5pbWFnZS1ncmlkX19pbWFnZS13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmltYWdlLWdyaWRfX2dyaWQtLXNxdWFyZSAuaW1hZ2UtZ3JpZF9faW1hZ2Utd3JhcCB7XG4gIGFzcGVjdC1yYXRpbzogMSAvIDE7XG59XG5cbi5pbWFnZS1ncmlkX19ncmlkLS1wb3J0cmFpdCAuaW1hZ2UtZ3JpZF9faW1hZ2Utd3JhcCB7XG4gIGFzcGVjdC1yYXRpbzogMiAvIDM7XG59XG5cbi5pbWFnZS1ncmlkX19ncmlkLS1sYW5kc2NhcGUgLmltYWdlLWdyaWRfX2ltYWdlLXdyYXAge1xuICBhc3BlY3QtcmF0aW86IDQgLyAzO1xufVxuXG4uaW1hZ2UtZ3JpZF9fZ3JpZC0tYXJjaCAuaW1hZ2UtZ3JpZF9faW1hZ2Utd3JhcCB7XG4gIGFzcGVjdC1yYXRpbzogMSAvIDE7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSA1MCUgMCAwO1xufVxuXG4uaW1hZ2UtZ3JpZF9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG59XG5cbi5pbWFnZS1ncmlkX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pbWFnZS1ncmlkX19pbWFnZS13cmFwIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBtaXhpbiBvdmVybGF5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWltYWdlLWdyaWQtb3ZlcmxheS1jb2xvcik7XG4gICAgb3BhY2l0eTogdmFyKC0taW1hZ2UtZ3JpZC1vdmVybGF5LW9wYWNpdHkpO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC44cyBlYXNlO1xuICB9XG59XG5cbi5pbWFnZS1ncmlkX19pdGVtLWhlYWRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiAkdGV4dEZyYW1lTWFyZ2luTGFyZ2U7XG4gIHJpZ2h0OiAkdGV4dEZyYW1lTWFyZ2luTGFyZ2U7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0taW1hZ2UtZ3JpZC1vdmVybGF5LXRleHQtY29sb3IpO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xufVxuXG4uaW1hZ2UtZ3JpZF9faXRlbTpoYXMoLmltYWdlLWdyaWRfX2xpbmspOmhvdmVyIC5pbWFnZS1ncmlkX19pbWFnZS13cmFwOjphZnRlciB7XG4gIG9wYWNpdHk6IGNhbGModmFyKC0taW1hZ2UtZ3JpZC1vdmVybGF5LW9wYWNpdHkpICsgdmFyKC0taW1hZ2UtZ3JpZC1vdmVybGF5LWhvdmVyLWluY3JlbWVudCwgMC4xKSk7XG59XG5cbi5pbWFnZS1ncmlkX19pdGVtOmhhcyguaW1hZ2UtZ3JpZF9fbGluayk6aG92ZXIgLmltYWdlLWdyaWRfX2ltYWdlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgZWFzZTtcblxuICBAbmVzdCBbZGF0YS1kaXNhYmxlLWFuaW1hdGlvbnM9XCJ0cnVlXCJdICYge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuIiwiJHotaW5kZXgtcHJvbW8tdGludDogMjtcbiR6LWluZGV4LXByb21vLWNvbG9yLW92ZXJsYXk6IDM7XG4kei1pbmRleC1wcm9tby1mcmFtZTogMztcbiR6LWluZGV4LXByb21vLXRleHQ6IDM7XG4kei1pbmRleC1wcm9tby1jb250ZW50OiA0O1xuJHotaW5kZXgtcHJvbW8tbGluazogNTtcblxuLnByb21vLWdyaWQtLXNwYWNlLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAkaW5kZXhTZWN0aW9uTWFyZ2luU21hbGw7XG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogJGluZGV4U2VjdGlvbk1hcmdpbkxhcmdlO1xuICB9XG59XG5cbi5wcm9tby1ncmlkLS1zcGFjZS1ib3R0b20ge1xuICBwYWRkaW5nLWJvdHRvbTogJGluZGV4U2VjdGlvbk1hcmdpblNtYWxsO1xuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgcGFkZGluZy1ib3R0b206ICRpbmRleFNlY3Rpb25NYXJnaW5MYXJnZTtcbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAmIC5idG4ge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgfVxuICB9XG5cbiAgJi5ob3Jpem9udGFsLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgJiAuYnRuIHtcbiAgICAgIG1hcmdpbjogMnB4IDVweDtcbiAgICB9XG4gIH1cblxuICAmLmhvcml6b250YWwtcmlnaHQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLnByb21vLWdyaWRfX2NvbnRhaW5lci0tYm94ZWQge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAmIC5wcm9tby1ncmlkX19iZyB7XG4gICAgICBoZWlnaHQ6IDYwJTtcbiAgICB9XG5cbiAgICAmIC5wcm9tby1ncmlkX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogNTUlO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDUwcHggcmdiYSgwLDAsMCwwLjEpO1xuICAgIH1cbiAgfVxufVxuXG4vKkZyYW1lZCBidXQgbm90IGJveGVkKi9cbi5wcm9tby1ncmlkX19jb250YWluZXItLWZyYW1lZDpub3QoLnByb21vLWdyaWRfX2NvbnRhaW5lci0tYm94ZWQpOmFmdGVyIHtcbiAgQG1peGluIG92ZXJsYXk7XG4gIGJvcmRlcjogJHRleHRGcmFtZU1hcmdpblNtYWxsIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggJGNvbG9ySGVyb1RleHQ7XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLWZyYW1lO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBib3JkZXItd2lkdGg6ICR0ZXh0RnJhbWVNYXJnaW5MYXJnZTtcbiAgfVxuXG4gIC8qV2hlbiB0ZXh0IGlzIG5vdCBvdmVybGF5aW5nIGltYWdlLCBib3JkZXIgc2hvdWxkIGJlIHRleHQgY29sb3IqL1xuICBAbmVzdCAudHlwZS1zYWxlX2NvbGxlY3Rpb24gJixcbiAgLnR5cGUtcHJvZHVjdCAmLFxuICAudHlwZS1iYW5uZXIgJiB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4ICRjb2xvclRleHRCb2R5O1xuICB9XG59XG5cbi52aWRlby1pbnRlcmFjdGFibGUucHJvbW8tZ3JpZF9fY29udGFpbmVyLS1mcmFtZWQ6bm90KC5wcm9tby1ncmlkX19jb250YWluZXItLWJveGVkKTphZnRlciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ucHJvbW8tZ3JpZF9fY29udGFpbmVyLS10aW50OmJlZm9yZSB7XG4gIEBtaXhpbiBvdmVybGF5O1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby10aW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnByb21vLWdyaWRfX3NsaWRlLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby1saW5rO1xuXG4gICY6aG92ZXIge1xuICAgICYgfiAucHJvbW8tZ3JpZF9fY29udGVudCAuYnRuOm5vdCguYnRuLS1zZWNvbmRhcnkpOm5vdCguYnRuLS10ZXJ0aWFyeSk6bm90KC5idG4tLWludmVyc2UpIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvckJ0blByaW1hcnlMaWdodDtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjVzO1xuXG4gICAgICBAbmVzdCBbZGF0YS1idXR0b25fc3R5bGU9J3NxdWFyZSddICYsXG4gICAgICBbZGF0YS1idXR0b25fc3R5bGVePSdyb3VuZCddICYge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBhbmltYXRpb246IHNoaW5lIDAuNzVzIGN1YmljLWJlemllcigwLjAxLCAwLjU2LCAxLCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fY29udGVudCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAyZW0gMi41ZW07IC8qUmVsYXRpdmUgdG8gdGV4dC1zaXplKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby1jb250ZW50O1xuXG4gIEBuZXN0IC5wcm9tby1ncmlkX19jb250YWluZXItLWZyYW1lZDpub3QoLnByb21vLWdyaWRfX2NvbnRhaW5lci0tYm94ZWQpICYge1xuICAgIG1hcmdpbjogMS41ZW07XG4gIH1cblxuICAmIHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIEBuZXN0IC52ZXJ0aWNhbC10b3AgJiB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgfVxuXG4gIEBuZXN0IC52ZXJ0aWNhbC1jZW50ZXIgJiB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgQG5lc3QgLnZlcnRpY2FsLWJvdHRvbSAmIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgfVxufVxuXG4udmlkZW8taW50ZXJhY3RhYmxlIC5wcm9tby1ncmlkX19jb250ZW50IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wcm9tby1ncmlkX19jb250ZW50LS1ib3hlZCB7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgbWFyZ2luOiBjYWxjKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBtYXJnaW46IDEwcHg7XG4gIH1cbn1cblxuLnByb21vLWdyaWRfX2NvbnRlbnQtLWZyYW1lZC5wcm9tby1ncmlkX19jb250ZW50LS1ib3hlZCB7XG4gIGJvcmRlcjogJHRleHRGcmFtZU1hcmdpblNtYWxsIHNvbGlkO1xuICBib3JkZXItY29sb3I6ICRjb2xvckJvZHk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkY29sb3JUZXh0Qm9keTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgYm9yZGVyLXdpZHRoOiAkdGV4dEZyYW1lTWFyZ2luTGFyZ2U7XG4gIH1cbn1cblxuLypSYWRpYWwgZ3JhZGllbnQgb24gb25seSBzb21lIHR5cGVzKi9cbi50eXBlLWFkdmFuY2VkLFxuLnR5cGUtc2ltcGxlIHtcbiAgJiAucHJvbW8tZ3JpZF9fY29udGVudDpub3QoLnByb21vLWdyaWRfX2NvbnRlbnQtLWJveGVkKTpub3QoLnByb21vLWdyaWRfX2NvbnRlbnQtLXNhbGUpIHtcbiAgICBjb2xvcjogJGNvbG9ySGVyb1RleHQ7XG5cbiAgICAmIGEge1xuICAgICAgY29sb3I6ICRjb2xvckhlcm9UZXh0O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9ySGVyb1RleHQ7XG5cbiAgICAgIEBuZXN0IFtkYXRhLWJ1dHRvbl9zdHlsZT0nc3F1YXJlJ10gJixcbiAgICAgIFtkYXRhLWJ1dHRvbl9zdHlsZV49J3JvdW5kJ10gJiB7XG4gICAgICAgICY6bm90KC5idG4tLWludmVyc2UpIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiAuYnRuLS1pbnZlcnNlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9ySGVyb1RleHQ7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBAbWl4aW4gb3ZlcmxheTtcbiAgICAgIEBtaXhpbiBoZXJvUmFkaWFsO1xuICAgICAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tdGludDtcbiAgICB9XG4gIH1cbn1cblxuLnR5cGUtYWR2YW5jZWQsXG4udHlwZS1wcm9kdWN0LFxuLnR5cGUtc2FsZV9jb2xsZWN0aW9uIHtcbiAgJiAucnRlLS1zdHJvbmcge1xuICAgIEBtaXhpbiBoZWFkaW5nRm9udFN0YWNrO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cblxuICAmIC5ydGUtLWVtIHtcbiAgICBAbWl4aW4gYWNjZW50Rm9udFN0YWNrO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuXG4ucHJvbW8tZ3JpZF9fYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAvKkFkZCBjb2xvciBvdmVybGF5IGlmIG5vdCBib3hlZCB2ZXJzaW9uKi9cbiAgQG5lc3QgLnByb21vLWdyaWRfX2NvbnRhaW5lcjpub3QoLnByb21vLWdyaWRfX2NvbnRhaW5lci0tYm94ZWQpICY6YmVmb3JlIHtcbiAgICBAbWl4aW4gb3ZlcmxheSAkei1pbmRleC1wcm9tby1jb2xvci1vdmVybGF5O1xuICAgIEBtaXhpbiBoZXJvU2NyaW07XG4gIH1cblxuICAmIC5wbGFjZWhvbGRlci1zdmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4udHlwZS1zaW1wbGUge1xuICAucHJvbW8tZ3JpZF9fYmcgLnBsYWNlaG9sZGVyLXN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuLnZpZGVvLWludGVyYWN0YWJsZSAucHJvbW8tZ3JpZF9fYmc6YmVmb3JlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5wcm9tby1ncmlkX19iZy1pbWFnZSB7XG4gIHotaW5kZXg6ICR6LWluZGV4LWhlcm8taW1hZ2U7XG5cbiAgQG5lc3QgW2RhdGEtYW9zPVwiaW1hZ2UtZmFkZS1pblwiXS5hb3MtYW5pbWF0ZSAmIHtcbiAgICBhbmltYXRpb246IGZhZGUtaW4gMXMgY3ViaWMtYmV6aWVyKDAuMjYsIDAuNTQsIDAuMzIsIDEpIDBzIGZvcndhcmRzO1xuICAgIHRyYW5zaXRpb246IG5vbmU7IC8qZml4ZXMgc2FmYXJpIGFuaW1hdGlvbiBjb25mbGljdCovXG4gIH1cbn1cblxuLnByb21vLWdyaWRfX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6ICR6LWluZGV4LXByb21vLWZyYW1lO1xuXG4gICYgLmJ0biB7XG4gICAgbWFyZ2luLXRvcDogMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PSBUeXBlOiBBZHZhbmNlZCA9PT09PT09PT09PT09PT09PT09PT0gKi9cbi50eXBlLWFkdmFuY2VkIHtcbiAgJiAucHJvbW8tZ3JpZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMmVtO1xuXG4gICAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgICBwYWRkaW5nOiAxLjVlbTtcbiAgICB9XG4gIH1cblxuICAmIC5idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICB9XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT0gVHlwZTogU2FsZSBDb2xsZWN0aW9uID09PT09PT09PT09PT09PT09PT09PSAqL1xuLnR5cGUtc2FsZV9jb2xsZWN0aW9uIHtcbiAgZmxleC1ncm93OiAxO1xuICBtYXgtaGVpZ2h0OiA2MDBweDtcblxuICAmIC5wcm9tby1ncmlkX19jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvclNtYWxsSW1hZ2VCZztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgJiAucHJvbW8tZ3JpZF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMmVtO1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICAmOm5vdCgucHJvbW8tZ3JpZF9fY29udGVudC0tc21hbGwtdGV4dCkge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qQ3VzdG9tIHR5cG9ncmFwaHkgc3R5bGVzKi9cbiAgJiAucnRlLS1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogNy41cHg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmIC5ydGUtLXN0cm9uZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMy4zNzVlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLypDdXN0b20gdHlwZSBsYXlvdXQgZm9yIFwib2ZmXCIgd2hlbiBmb2xsb3dpbmcgXCIlXCIqL1xuICAmIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgZm9udC1zaXplOiAwLjI1ZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0yLjllbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgfVxufVxuXG4udHlwZS1zYWxlLWltYWdlcyB7XG4gIGZsZXg6IDEgMSA1MCU7XG5cbiAgJiBzdmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLnR5cGUtc2FsZS1pbWFnZXNfX2Nyb3Age1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnR5cGUtc2FsZS1pbWFnZXNfX2ltYWdlIHtcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09IFR5cGU6IFNpbXBsZSA9PT09PT09PT09PT09PT09PT09PT0gKi9cbi50eXBlLXNpbXBsZSB7XG4gICYgLnByb21vLWdyaWRfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDEpO1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZzogY2FsYygkZ3V0dGVyIC8gMik7XG4gICAgfVxuICB9XG59XG5cbi5wcm9tby1ncmlkX190aXRsZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT0gVHlwZTogSW1hZ2UgPT09PT09PT09PT09PT09PT09PT09ICovXG4udHlwZS1pbWFnZSB7XG4gICYgLnByb21vLWdyaWRfX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxuXG4gICYgaW1nLFxuICAmIGEsXG4gICYgLmltYWdlLXdyYXAge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PSBUeXBlOiBCYW5uZXIgPT09PT09PT09PT09PT09PSovXG4udHlwZS1iYW5uZXIge1xuICBmbGV4OiAxIDAgMTAwJTtcblxuICAmIC5wcm9tby1ncmlkX19jb250YWluZXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cblxuICAmIC5wcm9tby1ncmlkX19jb250YWluZXItLWZyYW1lZDpub3QoLnByb21vLWdyaWRfX2NvbnRhaW5lci0tYm94ZWQpIHtcbiAgICBwYWRkaW5nOiAxZW07XG4gIH1cblxuICAmIHAge1xuICAgIG1hcmdpbjogNXB4IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuXG4udHlwZS1iYW5uZXJfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIDEwMCU7XG59XG5cbi50eXBlLWJhbm5lcl9fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxMHB4O1xufVxuXG4udHlwZS1iYW5uZXJfX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby10ZXh0O1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG59XG5cbi50eXBlLWJhbm5lcl9faW1hZ2Uge1xuICBmbGV4OiAwIDAgNDUlO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBmbGV4OiAwIDAgMjAwcHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09IFR5cGU6IFByb2R1Y3QgPT09PT09PT09PT09PT09PSovXG4udHlwZS1wcm9kdWN0X193cmFwcGVyIHtcbiAgZmxleDogMSAxIDEwMCU7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyZW0gMDtcbiAgei1pbmRleDogJHotaW5kZXgtcHJvbW8tY29udGVudDtcblxuICAmLnByb21vLWdyaWRfX2NvbnRhaW5lci0tdGludCB7XG4gICAgcGFkZGluZzogMmVtO1xuICB9XG5cbiAgQG5lc3QgLnByb21vLWdyaWRfX2NvbnRhaW5lci0tZnJhbWVkICYge1xuICAgIHBhZGRpbmc6IDJlbTtcbiAgfVxufVxuXG4udHlwZS1wcm9kdWN0X19jb250ZW50IHtcbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygkZ3V0dGVyIC8gMik7XG4gIH1cbn1cblxuLnR5cGUtcHJvZHVjdF9faW1hZ2VzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAxMHB4IDAgMTBweCAxMHB4O1xufVxuXG4udHlwZS1wcm9kdWN0X19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuXG4gICY6bnRoLWNoaWxkKDIpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA0MHB4O1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMzAlO1xuICB9XG59XG5cbi50eXBlLXByb2R1Y3RfX2xhYmVscyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTBweDtcbiAgcmlnaHQ6IC0xMHB4O1xuICB6LWluZGV4OiAkei1pbmRleC1wcm9tby10ZXh0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgJiAuZmxleC1ncmlkX19pdGVtLS01MCxcbiAgICAmIC5mbGV4LWdyaWRfX2l0ZW0tLTMzIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgfVxuICB9XG59XG5cbi50eXBlLXByb2R1Y3RfX2xhYmVsIHtcbiAgcGFkZGluZzogNHB4IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJ0blByaW1hcnk7XG4gIGNvbG9yOiAkY29sb3JCdG5QcmltYXJ5VGV4dDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBjbGVhcjogYm90aDtcbn1cblxuLnR5cGUtcHJvZHVjdF9fbGFiZWwtLXNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbn1cbiIsIi5zdG9yZS1hdmFpbGFiaWxpdHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAmIC5pY29uIHtcbiAgICBtYXJnaW46IDZweCAwIDA7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICB9XG5cbiAgJiAuaWNvbi1pbi1zdG9jayB7XG4gICAgZmlsbDogJHN1Y2Nlc3NHcmVlbjtcbiAgfVxuXG4gICYgLmljb24tb3V0LW9mLXN0b2NrIHtcbiAgICBmaWxsOiAkZXJyb3JSZWQ7XG4gIH1cblxuICAmICsgLnN0b3JlLWF2YWlsYWJpbGl0eSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuXG4uc3RvcmUtYXZhaWxhYmlsaXR5X19pbmZvIHtcbiAgZmxleDogMCAxIDkwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7XG5cbiAgQG5lc3QgaHRtbFtkaXI9XCJydGxcIl0gJiB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG5cbiAgJiA+IGRpdiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJiBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4uc3RvcmUtYXZhaWxhYmlsaXR5X19zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG5cbiAgJiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cbi5zdG9yZS1hdmFpbGFiaWxpdHlfX3NtYWxsLS1saW5rIHtcbiAgQG5lc3QgLm1vZGFsICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwIHtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG5cbiAgJi5hZ2UtdmVyaWZpY2F0aW9uLXBvcHVwLS1pbWFnZS1mYWxzZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JCb2R5KTtcblxuICAgICYubW9kYWw6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yQm9keSk7XG4gICAgICBhbmltYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJiAubW9kYWxfX2lubmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5tb2RhbC0tbW9iaWxlLWZyaWVuZGx5Lm1vZGFsLS1zcXVhcmUgLm1vZGFsX19jZW50ZXJlZC1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvckRyYXdlcnMpO1xuICB9XG59XG4iLCIvKiBDYXJ0IHBhZ2UgbGF5b3V0ICovXG5AbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5jYXJ0X19wYWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAuY2FydF9fcGFnZS1jb2w6Zmlyc3QtY2hpbGQge1xuICAgIGZsZXg6IDEgMSA2MCU7XG4gICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gIH1cblxuICAuY2FydF9fcGFnZS1jb2w6bGFzdC1jaGlsZCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDEwJTtcbiAgICBmbGV4OiAwIDEgMzUlO1xuICAgIHBhZGRpbmc6IDMwcHg7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIEBtaXhpbiBvdmVybGF5IC0xO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3JUZXh0Qm9keSk7XG4gICAgICBvcGFjaXR5OiAwLjAzO1xuICAgIH1cbiAgfVxufVxuXG4uY2FydF9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNvbG9yQm9yZGVyKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG59XG5cbi5jYXJ0X19pbWFnZSB7XG4gIGZsZXg6IDAgMCAxNTBweDtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1ncmlkLWd1dHRlcik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICB9XG5cbiAgJiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qU21hbGxlciBpbWFnZSBpbiBkcmF3ZXIqL1xuICBAbmVzdCAuZHJhd2VyICYge1xuICAgIGZsZXg6IDAgMCAxMDBweDtcbiAgfVxufVxuXG4uY2FydF9faXRlbS1kZXRhaWxzIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNhcnRfX2l0ZW0tdGl0bGUge1xuICBmbGV4OiAxIDEgMTAwJTtcblxuICBAbmVzdCAuZHJhd2VyICYge1xuICAgIEBtaXhpbiBiYXNlU21hbGxGb250U3RhY2s7XG4gIH1cbn1cblxuLmNhcnRfX2l0ZW0tc3ViIHtcbiAgZmxleDogMSAxIDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgJiA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICB9XG59XG5cbi5jYXJ0X19pdGVtLXJvdyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5jYXJ0X19yZW1vdmUge1xuICAmIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG5cbiAgLypIaWRlIGluIGRyYXdlciovXG4gIEBuZXN0IC5kcmF3ZXIgJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY2FydF9fY2hlY2tvdXQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNhcnRfX2l0ZW0tbmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDFweCk7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuLmNhcnRfX2l0ZW0tLXZhcmlhbnRzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAmIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbi5jYXJ0X19wcmljZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uY2FydF9fcHJpY2UtLXN0cmlrZXRocm91Z2gge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cblxuLmNhcnRfX2Rpc2NvdW50IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yVGV4dFNhdmluZ3MpO1xufVxuXG4uY2FydF9fdGVybXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAmIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICB9XG59XG5cbi5jYXJ0X19jaGVja291dC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcblxuICAmIC5hZGRpdGlvbmFsLWNoZWNrb3V0LWJ1dHRvbnMge1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gIH1cbn1cblxuLmRyYXdlciAuYWRkaXRpb25hbC1jaGVja291dC1idXR0b25zIHtcbiAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgJiBbZGF0YS1zaG9waWZ5LWJ1dHRvbmNvbnRhaW5lcl0ge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgJiA+ICoge1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8qUGF5UGFsIGJ1dHRvbiBoYXMgdW5oZWxwZnVsIHotaW5kZXgqL1xuaWZyYW1lLnpvaWQtY29tcG9uZW50LWZyYW1lIHtcbiAgei1pbmRleDogMSAhaW1wb3J0YW50O1xufVxuXG4uZHJhd2VyX19jYXJ0LWVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyYXdlci5pcy1lbXB0eSB7XG4gICYgLmRyYXdlcl9faW5uZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmIC5kcmF3ZXJfX2NhcnQtZW1wdHkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8qIENhcnQgcHJvcGVydGllcyAqL1xuLmNhcnRfX2l0ZW0tLXByb3BlcnRpZXMge1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSAtIDJweCk7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgJiBzcGFuIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG4iLCJAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gIC5wcm9kdWN0LXNpbmdsZV9fc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMjBweDtcblxuICAgIEBuZXN0IC5zdGlja3ktaGVhZGVyICYge1xuICAgICAgdG9wOiAxNDBweDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtLXF1aWNrLXNob3AgLnByb2R1Y3Qtc2luZ2xlX19zdGlja3kge1xuICAgIHRvcDogMDtcbiAgfVxufVxuXG4ucGFnZS1jb250ZW50LS1wcm9kdWN0IHtcbiAgcGFkZGluZy10b3A6IDU1cHg7XG59XG5cbkBtZWRpYSAoLS1zbWFsbCkge1xuICAucGFnZS1jb250ZW50LS1wcm9kdWN0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC5ncmlkLS1wcm9kdWN0LWltYWdlcy1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAmIC5ncmlkX19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgIG9yZGVyOiAyO1xuICAgIH1cbiAgfVxufVxuXG4vKlByZXZlbnQgcXVpY2sgdmlldyBob3Jpem9udGFsIGphbmsgd2hlbiBpbWFnZSBsb2FkcyovXG4ubW9kYWwgLnBhZ2UtY29udGVudC0tcHJvZHVjdCB7XG4gIHdpZHRoOiAkcGFnZS13aWR0aDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX21ldGEge1xuICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XG5cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIEBuZXN0IC5ncmlkLS1wcm9kdWN0LWltYWdlcy1yaWdodCAmIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogNDVweDtcblxuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAmIC5zb2NpYWwtc2hhcmluZyB7XG4gICAgbWFyZ2luLXRvcDogJGd1dHRlcjtcbiAgfVxuXG4gICYgLnJ0ZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAgIEBuZXN0IGh0bWxbZGlyPVwicnRsXCJdICYge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fdmVuZG9yIHtcbiAgQG1peGluIGFjY2VudEZvbnRTdGFjaztcbiAgQG1peGluIGFjY2VudEZvbnRTbWFsbFNpemU7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDQpO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX3NrdSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAvIDYpO1xufVxuXG4ucHJvZHVjdC1zaW5nbGVfX2Rlc2NyaXB0aW9uLWZ1bGwge1xuICBtYXJnaW46ICRndXR0ZXIgMDtcblxuICAmICsgLmNvbGxhcHNpYmxlcy13cmFwcGVyIHtcbiAgICBtYXJnaW46IDAgMDtcbiAgfVxuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW46ICRndXR0ZXIgOTVweDtcblxuICAgICYgKyAuY29sbGFwc2libGVzLXdyYXBwZXIge1xuICAgICAgbWFyZ2luOiAwIDk1cHg7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LXNpbmdsZV9fdmFyaWFudHMge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIEBuZXN0IC5uby1qcyAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuICB9XG59XG5cbi5wcm9kdWN0LWltYWdlLW1haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbltkYXRhLWJ1dHRvbl9zdHlsZT1cImFuZ2xlZFwiXSAucHJvZHVjdC1pbWFnZS1tYWluIC5idG46bm90KC5wcm9kdWN0X19waG90by16b29tKSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdG9wOiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnByb2R1Y3RfX3ZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7IC8qYXBzZWN0IHJhdGlvIG92ZXJ3cml0dGVuIGlubGluZSovXG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yU21hbGxJbWFnZUJnO1xuXG4gICYgaWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW47XG4gIH1cblxuICAvKlB1dCBvdmVybGF5IG9uIG11dGVkIHZpZGVvcyBiZWNhdXNlIHRoZXkgY2Fubm90IGJlIGludGVyYWN0ZWQgd2l0aCovXG4gICZbZGF0YS12aWRlby1zdHlsZT1cIm11dGVkXCJdLmxvYWRlZDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC8qVW5sZXNzIGxvdyBwb3dlciBtb2RlIHJlcXVpcmVzIHRoZW0gdG8gYmUgdG91Y2hlZCB0byBzdGFydCovXG4gICYudmlkZW8taW50ZXJhY3RhYmxlOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8qTWFrZSBzdXJlIHN0YXRlcyBkb24ndCBvdmVybGFwKi9cbiAgJi5sb2FkZWQ6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmLmxvYWRpbmcgaWZyYW1lIHtcbiAgICBvcGFjaXR5OiAwLjAxOyAvKnNuZWFreSB3YXkgdG8gYXZvaWQgdGFsa2luZyB0byBhbiBpbnZpc2libGUgWVQgaWZyYW1lKi9cbiAgfVxuXG4gICYubG9hZGVkIGlmcmFtZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnByb2R1Y3RfX3ZpZGVvLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiA0MCU7XG4gIHRvcDogMzJweDtcbiAgYm90dG9tOiA0MHB4O1xuICB6LWluZGV4OiAzO1xuXG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBoZWlnaHQ6IDM1JTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuXG4gICYgKyAucHJvZHVjdF9fdmlkZW8tb3ZlcmxheSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LXZpZGVvLXRyaWdnZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vKkltYWdlcyovXG4ucHJvZHVjdF9fcGhvdG9zLS1iZXNpZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnByb2R1Y3RfX3Bob3RvcyB7XG4gIGRpcmVjdGlvbjogbHRyO1xuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ucHJvZHVjdF9fbWFpbi1waG90b3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuXG4gICYgLmZsaWNraXR5LXBhZ2UtZG90cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcGFnZS13aWR0aC1ndXR0ZXItc21hbGw7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJHBhZ2Utd2lkdGgtZ3V0dGVyLXNtYWxsO1xuXG4gICAgJiAuZmxpY2tpdHktcGFnZS1kb3RzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4vKkhpZGUgc2VsZWN0YWJsZSBlbGVtZW50cyB3aGVuIHNsaWRlIGlzIG5vdCBhY3RpdmUqL1xuLnByb2R1Y3QtbWFpbi1zbGlkZTpub3QoLmlzLXNlbGVjdGVkKSB7XG4gICYgYnV0dG9uLFxuICAmIHZpZGVvLFxuICAmIGlmcmFtZSxcbiAgJiBtb2RlbC12aWV3ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnByb2R1Y3QtbWFpbi1zbGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC8qSGlkZSBhbGwgYnV0IGZpcnN0IHNsaWRlIHRvIHByZXZlbnQgcGFnZSByZWZsb3dzIHByaW9yIHRvIGluaXQqL1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIEBuZXN0IC5mbGlja2l0eS1zbGlkZXIgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAvKnNob3cgYSBiaXQgb2YgdGhlIG5leHQgaW1hZ2UqL1xuICAgIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgICAgQG5lc3QgLmdyaWQtLXByb2R1Y3QtaW1hZ2VzLS1wYXJ0aWFsICYge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1icyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnByb2R1Y3RfX3RodW1icy0tYmVsb3cge1xuICBtYXJnaW4tdG9wOiBjYWxjKCRncmlkLWd1dHRlci1zbWFsbCAvIDIpO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWJzLS1iZXNpZGUge1xuICBmbGV4OiAwIDAgNjBweDtcbiAgbWF4LXdpZHRoOiA2MHB4O1xuICBtYXJnaW4tbGVmdDogY2FsYygkZ3JpZC1ndXR0ZXItc21hbGwgLyAyKTtcblxuICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgZmxleDogMCAwIDgwcHg7XG4gICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCRndXR0ZXIgLyAyKTtcblxuICAgICYucHJvZHVjdF9fdGh1bWJzLXBsYWNlbWVudC0tbGVmdCB7XG4gICAgICBvcmRlcjogLTE7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogY2FsYygkZ3V0dGVyIC8gMik7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0X190aHVtYnMtLXNjcm9sbGVyIHtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIEBuZXN0IC5wcm9kdWN0X190aHVtYnMtLWJlbG93ICYge1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgQG5lc3QgLnByb2R1Y3RfX3RodW1icy0tYmVzaWRlICYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9XG59XG5cbi5wcm9kdWN0X190aHVtYi1pdGVtIHtcbiAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG5cbiAgJiBhOmZvY3VzLFxuICAmIGEuaXMtYWN0aXZlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCAkY29sb3JUZXh0Qm9keTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG5cbiAgLypEb24ndCBwcmUtZm9jdXMgdGh1bWJuYWlscyovXG4gICYgYTphY3RpdmU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG5cbiAgQG5lc3QgLnByb2R1Y3RfX3RodW1icy0tYmVzaWRlICYge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGdyaWQtZ3V0dGVyLXNtYWxsIC8gMik7XG5cbiAgICBAbWVkaWEgKC0tbWVkaXVtLXVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICBAbmVzdCAucHJvZHVjdF9fdGh1bWJzLS1iZWxvdyAmIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoJGdyaWQtZ3V0dGVyLXNtYWxsIC8gMik7XG4gICAgbWF4LXdpZHRoOiA4MHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdF9fcHJpY2Uge1xuICBjb2xvcjogJGNvbG9yUHJpY2U7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBmb250LXNpemU6IGNhbGModmFyKC0tdHlwZUJhc2VTaXplKSArIDJweCk7XG5cbiAgJi5vbi1zYWxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuLypVc2VkIGFueXdoZXJlIHVuaXQgcHJpY2UgaXMgdmlzaWJsZSovXG4ucHJvZHVjdF9fdW5pdC1wcmljZSB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLnByb2R1Y3RfX3VuaXQtcHJpY2UtLXNwYWNpbmcge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4ucHJvZHVjdF9fcHJpY2UtLWNvbXBhcmUge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG5cbi5wcm9kdWN0X19wcmljZS1zYXZpbmdzIHtcbiAgY29sb3I6ICRjb2xvclRleHRTYXZpbmdzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKlF1YW50aXR5IHNlbGVjdG9yIGFuZCBsYWJlbCovXG4ucHJvZHVjdF9fcXVhbnRpdHkge1xuICAmIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG5cbi5wcm9kdWN0LWZvcm0taG9sZGVyLS1sb2FkZWQge1xuICBhbmltYXRpb246IGZhZGUtaW4gMXMgZWFzZTtcbn1cblxuLypIaWRlIFNob3BpZnkgUGF5bWVudCBCdXR0b25zIGlmIG5vIHZhcmlhbnQqL1xuLmFkZC10by1jYXJ0W2Rpc2FibGVkXSArIC5zaG9waWZ5LXBheW1lbnQtYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogV2hlbiBpbWFnZSBzZXRzIGFyZSBlbmFibGVkLCBoaWRlIHNsaWRlcyB0aGF0IGFyZW4ndCBpbiB0aGUgc2xpZGVyICovXG4ucHJvZHVjdC1zbGlkZXNob3cuZmxpY2tpdHktZW5hYmxlZCB7XG4gICYgLnByb2R1Y3QtbWFpbi1zbGlkZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYgLmZsaWNraXR5LXZpZXdwb3J0IC5wcm9kdWN0LW1haW4tc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8qWm9vbSBidXR0b24qL1xuLnByb2R1Y3RfX3Bob3RvLXpvb20ge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgY3Vyc29yOiB6b29tLWluO1xuXG4gIC8qT25seSBzaG93IGFjdGl2ZSBzbGlkZSdzIHpvb20gYnV0dG9uIChtb2JpbGUpKi9cbiAgQG1lZGlhICgtLXNtYWxsKSB7XG4gICAgcGFkZGluZzogNnB4O1xuXG4gICAgQG5lc3QgLnByb2R1Y3RfX21haW4tcGhvdG9zICYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAvKkhpZGUgem9vbSBidXR0b24gb24gYWxsIHNsaWRlcyovXG4gICAgQG5lc3QgLnByb2R1Y3Qtc2xpZGVzaG93ICYge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLW91dDtcbiAgICB9XG5cbiAgICBAbmVzdCAucHJvZHVjdC1zbGlkZXNob3cgLmlzLXNlbGVjdGVkICYge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAvKlZpc3VhbGx5IGhpZGRlbiwgY292ZXJzIGZ1bGwgaW1hZ2Ugb24gZGVza3RvcCovXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgJiBzdmcsXG4gICAgJiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8qVGh1bWIgc2xpZGVyIGFycm93cyovXG4ucHJvZHVjdF9fdGh1bWItYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICRjb2xvckJvZHk7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiAyO1xuXG4gICYgLmljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNnB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWJzW2RhdGEtcG9zaXRpb249XCJiZWxvd1wiXSAucHJvZHVjdF9fdGh1bWItYXJyb3cge1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDI1cHg7XG5cbiAgJi5wcm9kdWN0X190aHVtYi1hcnJvdy0tcHJldiB7XG4gICAgbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgJi5wcm9kdWN0X190aHVtYi1hcnJvdy0tbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1ic1tkYXRhLXBvc2l0aW9uPVwiYmVzaWRlXCJdIC5wcm9kdWN0X190aHVtYi1hcnJvdyB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYgLmljb24ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgfVxuXG4gICYucHJvZHVjdF9fdGh1bWItYXJyb3ctLXByZXYge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgJi5wcm9kdWN0X190aHVtYi1hcnJvdy0tbmV4dCB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgfVxufVxuXG4ucHJvZHVjdF9fdGh1bWIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJiA+IC5pbWFnZS13cmFwIGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLnByb2R1Y3RfX3RodW1iLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNXB4O1xuICByaWdodDogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIHBhZGRpbmc6IDZweDtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gIGZvbnQtc2l6ZTogMDtcblxuICBAbmVzdCAuYW9zLWFuaW1hdGUgJiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICYgLmljb24ge1xuICAgIGZpbGw6ICRjb2xvckJvZHk7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuXG4gICAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0X19wb2xpY2llcyB7XG4gIGZvbnQtc2l6ZTogMC44NWVtO1xufVxuXG4uc2hvcGlmeS1wYXltZW50LXRlcm1zIHtcbiAgbWFyZ2luOiAxMnB4IDA7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBuZXN0IC5tb2RhbCAmIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIudGVtcGxhdGUtYmxvZyAuYXJ0aWNsZSB7XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAqIDEuNSk7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206IGNhbGMoJGd1dHRlciAqIDMpO1xuICB9XG59XG5cbi50ZW1wbGF0ZS1ibG9nIC5hcnRpY2xlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gIEBtZWRpYSAoLS1tZWRpdW0tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKCRndXR0ZXIgKiAxLjUpO1xuICB9XG59XG5cbi5hcnRpY2xlX19ib2R5IHtcbiAgbWFyZ2luLWJvdHRvbTogY2FsYygkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhICgtLW1lZGl1bS11cCkge1xuICAgIG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG4gIH1cbn1cblxuLmFydGljbGVfX2NvbW1lbnQge1xuICBtYXJnaW4tYm90dG9tOiAkZ3V0dGVyO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiLnBhc3N3b3JkLXBhZ2VfX2hlYWRlcl9fZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5wYXNzd29yZC1wYWdlX19sb2dvIHtcbiAgJiBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYgLmxvZ28ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ucGFzc3dvcmQtbG9naW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDQpIDE1cHg7XG59XG5cbi5wYXNzd29yZC1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4ucGFzc3dvcmRfX2xvY2sgLmljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTJweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5pY29uLXNob3BpZnktbG9nbyB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDIwcHg7XG59XG5cbiNMb2dpbk1vZGFsIC5tb2RhbF9fY2xvc2Uge1xuICBAbWVkaWEgKC0tc21hbGwpIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5cbiNMb2dpbk1vZGFsIC5tb2RhbF9faW5uZXIge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIEBtZWRpYSAoLS1zbWFsbCkge1xuICAgIG1hcmdpbi1ib3R0b206IDQwdmg7XG4gIH1cbn1cblxuLnBhc3N3b3JkLWFkbWluLWxpbmsge1xuICBtYXJnaW46IDA7XG5cbiAgJiBhIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3JCb3JkZXIgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLnRlbXBsYXRlLWdpZnRjYXJkLFxuLnRlbXBsYXRlLWdpZnRjYXJkIGJvZHkge1xuICBiYWNrZ3JvdW5kOiAkY29sb3JCb2R5O1xuXG4gICYgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi50ZW1wbGF0ZS1naWZ0Y2FyZCAucGFnZS13aWR0aCB7XG4gIG1heC13aWR0aDogNTg4cHg7XG59XG5cbi5naWZ0Y2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgKiAyKSAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICYgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLnRlbXBsYXRlLWdpZnRjYXJkIC5zaG9wLXVybCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5naWZ0Y2FyZF9fYm9yZGVyIHtcbiAgcGFkZGluZzogMS41ZW07XG4gIGJveC1zaGFkb3c6IDAgMTBweCAzMHB4IHJnYmEoMCwwLDAsMC4zKTtcbn1cblxuLmdpZnRjYXJkX19jb250ZW50IHtcbiAgQG1peGluIGNsZWFyZml4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3JCb2R5O1xuICBjb2xvcjogJGNvbG9yVGV4dEJvZHk7XG59XG5cbi5naWZ0Y2FyZF9faGVhZGVyIHtcbiAgQG1peGluIGNsZWFyZml4O1xuICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbn1cblxuLmdpZnRjYXJkX190aXRsZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ2lmdGNhcmRfX3RhZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvclRleHRCb2R5O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRjb2xvckJvZHk7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDMpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogLjA1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZ2lmdGNhcmRfX3RhZy0tYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1jb2xvcjogJGNvbG9yQm9yZGVyO1xufVxuXG4uZ2lmdGNhcmRfX3dyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogY2FsYygkZ3V0dGVyIC8gMikgY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlcjtcblxuICAmIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG4uZ2lmdGNhcmRfX2NvZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogJGd1dHRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogNTA7XG59XG5cbi5naWZ0Y2FyZF9fY29kZS0tbWVkaXVtIHtcbiAgZm9udC1zaXplOiAuODc1ZW07XG59XG5cbi5naWZ0Y2FyZF9fY29kZS0tc21hbGwge1xuICBmb250LXNpemU6IC43NWVtO1xufVxuXG4uZ2lmdGNhcmRfX2NvZGVfX2lubmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IC41ZW07XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgbWF4LXdpZHRoOiA0NTBweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLDAsMCwwLjEpO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLDAsMCwwLjEpO1xuXG4gIEBuZXN0IC5naWZ0Y2FyZF9fY29kZS0tc21hbGwgJiB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbn1cblxuLmdpZnRjYXJkX19jb2RlX190ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjg3NWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlcjogMXB4IGRhc2hlZDtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3JCb3JkZXI7XG4gIHBhZGRpbmc6IC40ZW0gLjVlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgQG5lc3QgLmRpc2FibGVkICYge1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICB9XG59XG5cbi5naWZ0Y2FyZF9fYW1vdW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAyLjc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB6LWluZGV4OiA1MDtcblxuICAmIHN0cm9uZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1zaGFkb3c6IDNweCAzcHggMCByZ2JhKDAsMCwwLDAuMSk7XG4gIH1cbn1cblxuLmdpZnRjYXJkX19hbW91bnQtLW1lZGl1bSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4udG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogMTZweDtcbiAgei1pbmRleDogMztcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTAwJTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IC01cHg7XG4gICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgIzMzMztcbiAgICBib3JkZXItdG9wOiA1cHggc29saWQgcmdiYSg1MSw1MSw1MSwwLjkpO1xuICB9XG59XG5cbi50b29sdGlwX19sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAtNTAlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogIzMzMztcbiAgYmFja2dyb3VuZDogcmdiYSg1MSw1MSw1MSwwLjkpO1xuICBtaW4taGVpZ2h0OiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBwYWRkaW5nOiAuNWVtIC43NWVtO1xuICBtYXJnaW4tbGVmdDogLjI1ZW07XG5cbiAgJiBzbWFsbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tdHlwZVVwcGVyY2FzZVNwYWNpbmcpO1xuICAgIGNvbG9yOiAjYjNiM2IzO1xuICAgIGZvbnQtc2l6ZTogLjg3NWVtO1xuICB9XG59XG5cbi5naWZ0Y2FyZF9faW5zdHJ1Y3Rpb25zIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgY2FsYygkZ3V0dGVyIC8gMikgJGd1dHRlcjtcbn1cblxuLmdpZnRjYXJkX19hY3Rpb25zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG59XG5cbi50ZW1wbGF0ZS1naWZ0Y2FyZCAuYWN0aW9uLWxpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB0b3A6IDUwJTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS10eXBlVXBwZXJjYXNlU3BhY2luZyk7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3JUZXh0Qm9keTtcbiAgfVxufVxuXG4udGVtcGxhdGUtZ2lmdGNhcmQgLmFjdGlvbi1saW5rX19wcmludCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB3aWR0aDogMTdweDtcbiAgaGVpZ2h0OiAxN3B4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLy9jZG4uc2hvcGlmeS5jb20vcy9hc3NldHMvZ2lmdC1jYXJkL2ljb24tcHJpbnQtMTY0ZGFhMWFlMzJkMTBkMWY5YjgzYWMyMWI2ZjJjNzAucG5nJyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbn1cblxuLmdpZnRjYXJkX19mb290ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAqIDIpIDA7XG59XG5cbiNRckNvZGUge1xuICAmIGltZyB7XG4gICAgcGFkZGluZzogJGd1dHRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvckJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gJGd1dHRlcjtcbiAgfVxufVxuXG5AbWVkaWEgKC0tc21hbGwpIHtcbiAgLmdpZnRjYXJkIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cblxuICAuZ2lmdGNhcmQtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAkZ3V0dGVyIDA7XG4gIH1cblxuICAuaGVhZGVyLWxvZ28ge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICB9XG5cbiAgLmdpZnRjYXJkX19ib3JkZXIge1xuICAgIHBhZGRpbmc6IGNhbGMoJGd1dHRlciAvIDIpO1xuICB9XG5cbiAgLmdpZnRjYXJkX19hY3Rpb25zIHtcbiAgICBwYWRkaW5nOiBjYWxjKCRndXR0ZXIgLyAyKTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fYWN0aW9ucyAuYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuXG4gIC50ZW1wbGF0ZS1naWZ0Y2FyZCAuYWN0aW9uLWxpbmsge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09IFNtYWxsIHdpZHRoID09PT09PT09PT09PT09PT0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgLmdpZnRjYXJkX19hbW91bnQgc3Ryb25nIHtcbiAgICB0ZXh0LXNoYWRvdzogMnB4IDJweCAwIHJnYmEoMCwwLDAsMC4xKTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fd3JhcDpiZWZvcmUsXG4gIC5naWZ0Y2FyZF9fd3JhcDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fY29kZSB7XG4gICAgZm9udC1zaXplOiAuNzVlbTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fY29kZS0tbWVkaXVtIHtcbiAgICBmb250LXNpemU6IC42NWVtO1xuICB9XG5cbiAgLmdpZnRjYXJkX19jb2RlLS1zbWFsbCB7XG4gICAgZm9udC1zaXplOiAuNTVlbTtcbiAgfVxufVxuXG5cbi8qPT09PT09PT09PT09PT09PSBTbWFsbCBoZWlnaHQgPT09PT09PT09PT09PT09PSovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogODAwcHgpIHtcbiAgLmhlYWRlci1sb2dvIGltZyB7XG4gICAgbWF4LWhlaWdodDogOTBweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTtcbiAgfVxuXG4gIHAsIGgyLCBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cblxuICBoMiwgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG5cbiAgaHRtbCwgYm9keSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC5naWZ0Y2FyZC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fY29udGVudCxcbiAgLmdpZnRjYXJkX19ib3JkZXIge1xuICAgIGJvcmRlcjogMCBub25lO1xuICB9XG5cbiAgLnNpdGUtaGVhZGVyX19sb2dvLWxpbmsgaW1nOm50aC1jaGlsZCgyKSxcbiAgLmdpZnRjYXJkX19hY3Rpb25zLFxuICAuZ2lmdGNhcmRfX3dyYXA6YmVmb3JlLFxuICAuZ2lmdGNhcmRfX3dyYXA6YWZ0ZXIsXG4gIC50b29sdGlwLFxuICAuYWRkLXRvLWFwcGxlLXdhbGxldCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fdGl0bGUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIC5naWZ0Y2FyZF9fY29kZV9fdGV4dCB7XG4gICAgY29sb3I6ICM1NTU7XG4gIH1cblxuICAudGVtcGxhdGUtZ2lmdGNhcmQgLnNob3AtdXJsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC50ZW1wbGF0ZS1naWZ0Y2FyZCAubG9nbyB7XG4gICAgY29sb3I6ICM1ODY4NkY7XG4gIH1cbn1cbiJdfQ== */